[PATCH 00/12] Minidump in WineDbg
Eric Pouech
eric.pouech at wanadoo.fr
Fri Feb 24 15:02:33 CST 2006
The following series implements minidump support in WineDbg.
In Windows's slang, mini translates into core (in Unix world).
With those patches, WineDbg is extented in the following ways:
- one can ask (in very similar way to what --auto already does) to
store every information related to a crash dump into a file for
later debugging
- one can ask to reload such a file, and do some debugging operation.
Basically, what's available from the minidump (and correctly restored
in winedbg) is:
- process information (and system info)
- threads information (number, PC..)
- loaded modules information
- stack for every thread
- exception information
This lets(*):
- do backtrace
- inspect every frame on every thread
- inspect every variable on every frame on every thread
- loaded modules information (both ELF & PE)
- inspect the source (of every frame, or at every possible address)
- look at exception information
- disassemble around the faulting address
It doesn't allow:
- inspection of global variables (this is doable, it will just grow
the size of the file)
- full disassembly (storing all code into minidump is a bad idea)
- restarting the execution (it's post mortem debugging)
(*) this implies that the debug information of the modules used when
the minidump are created are the same used for the debugging
session later on => this is the next area of improvment. Note: a
checksum of the module (ELF or PE) is stored in the minidump, so
WineDbg checks whether one reloads the correct files and debugging
information.
A+
--
Eric Pouech
More information about the wine-patches
mailing list