Getting Debug Information

As you may have noticed, we have some problems with crashing on both the server side and the client side. If you're interested in helping us gather information to resolve these, Krenzo has written the following guide on gathering a full dump.

You have to download and install this file: http://msdl.microsoft.com/download/symbols/debuggers/dbg_x86_6.11.1.404.msi

Ok, once you have that installed. Run it from the start menu (Programs->Debugging Tools For Windows->WinDbg). Once that's open, start SRCDS. On the WinDbg window, go to the File menu, and select "Attach to a Process". Select "srcds.exe" from the list. The debugger is now watching the server program. If it immediately stops doing anything and says something about symbols, just press F5 to get it going again.

Now wait for the server to crash. The debugger should now stop SRCDS at the point the crash occurred. When it does, click in the command line area of the WinDbg window (the text line at the bottom of the inner window), and type the following:

.dump /mi /u smashball.dmp

It should say it created a dump successfully. Now type:

.dump /mf /u smashball.dmp

This creates a larger dump with all memory. These dumps should be located in the same directory you installed the debugger (ie c:\program files\debugging tools for windows\) and the name will begin with "smashball" and end in ".dmp" with some extra characters inbetween. Next type the following in the command line:

k

This will print the stack trace of the program, letting you see what code is being run. Now open the Edit menu, and click "Write Window Text To File...". Save this as a text document.

Now, you have all the information I need. Look at the size of the full memory dump. It might be around 500+ megs. We'll have to arrange for a way to get that dump to me if it's really big.