| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
instruction and frame pointers with better reliability. r=bryner
http://groups.google.com/group/google-breakpad-dev/browse_thread/thread/e74af03fb0629aa0
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@146 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/google-breakpad-dev/browse_thread/thread/9610c2878a2bcdc
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@131 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
symbol file load (#137). r=mmentovai.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@130 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
| |
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@122 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
| |
does. (#120) r=bryner.
http://groups.google.com/group/airbag-dev/browse_thread/thread/3f21d0e379e32771
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@120 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
of airbag don't have to know the platform endianness.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@118 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
| |
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@116 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
| |
Patch by Ted Mielczarek. r=me
http://groups.google.com/group/airbag-dev/browse_thread/thread/144e66b1de80b1db
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@114 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
| |
using-declaration (#118). r=bryner
http://groups.google.com/group/airbag-dev/browse_thread/thread/4946d156a37331df
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@113 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
| |
Support multiple symbol paths in SimpleSymbolSupplier (#113).
Patch by Ted Mielczarek. r=me
http://groups.google.com/group/airbag-dev/browse_thread/thread/44b91a9112618b26
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@112 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
| |
- Read (but don't use) CodeView records with unknown signature values
instead of failing. This allows the module list to be read in, and
will result in better stack traces in affected dumps.
http://groups.google.com/group/airbag-dev/browse_thread/thread/2c7d3e3b1fd6ea96
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@104 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
| |
ExceptionHandler on Windows. Patch by John Abd-El-Malek. r=me
Interface change: post-dump and pre-dump (filter) callbacks now must accept
an additional EXCEPTION_POINTERS* argument.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@103 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
| |
Interface change: moved a few fields around in ProcessState; added new
arguments to Stackwalker and SymbolSupplier.
http://groups.google.com/group/airbag-dev/browse_thread/thread/17e4a48ec3ede932
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@101 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/15cf4d0ce5ed1014
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@85 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/d6d6a83ec41f4e0f
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@84 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
| |
to be used with MinidumpProcessor. The basic SourceLineResolver is now a
public interface (#89)
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@83 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
| |
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@80 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Provide an optional filter callback that gets triggered before attempting
to write a dump, to give client code a chance to refuse handling early
in the process.
- Allow exceptions that are unhandled by Airbag (due to filter callback or
dump callback return value, or failure to write a dump) to be passed to the
previous handler or to the system.
- In order to pass exceptions unhandled by the topmost Airbag handler to
lower handlers, fix up the stacking of ExceptionHandler objects, and give
each ExceptionHandler object its own thread (like the Mac implementation)
to avoid deadlock.
- Provide a dump_path argument to callbacks, as requested by developers and
already implemented in the Mac handler.
- Avoid calling c_str in exception handler code (#90).
http://groups.google.com/group/airbag-dev/browse_thread/thread/4771825ced38a84c
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@79 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/d713d3e73aa1a0dd
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@78 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
| |
r=waylonis
http://groups.google.com/group/airbag-dev/browse_thread/thread/b684b775078d91ca
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@76 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
Add time_date_stamp to process state.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@75 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Introduces a standard API for dealing with modules. MinidumpModule
is now a concrete implementation of this API. Code may interact with
single modules using the CodeModule interface, and collections of
modules using its container, the CodeModules interface.
- CodeModule is used directly by SymbolSupplier implementations and
SourceLineResolver. Reliance on the specific implementation in
MinidumpModule has been eliminated.
- Module lists are now added to ProcessState objects. Module references
in each stack frame are now pointers to objects in these module lists.
- The sample minidump_stackwalk tool prints the module list after printing
all threads' stacks.
http://groups.google.com/group/airbag-dev/browse_frm/thread/a9c0550edde54cf8
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@74 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
| |
r=bryner
http://groups.google.com/group/airbag-dev/browse_thread/thread/8eb9277ac06425e3
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@72 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Handle MDCVInfoPDB20-based PDBs by outputting a signature instead of a guid
in the MODULE line.
- Identify the OS and CPU in the MODULE line.
- Suppress multiple subsequent identical STACK WIN lines.
http://groups.google.com/group/airbag-dev/browse_thread/thread/0f54e2c33ed5d82d
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@70 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
| |
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@69 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
| |
Patch by Ted Mielczarek <ted.mielczarek>. r=me
http://groups.google.com/group/airbag-dev/browse_thread/thread/34690777576ccf7e
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@67 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
| |
- main is now the only thing you'll find in the default namespace.
Everything else has been moved into an unnamed namespace.
http://groups.google.com/group/airbag-dev/browse_thread/thread/14130a0284a0307f
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@63 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#65). r=bryner
- Interface change: (ProcessState).crash_thread is now requesting_thread and
will be populated for non-crash dumps. If the requesting thread cannot
be determined, requesting_thread is set to -1.
http://groups.google.com/group/airbag-dev/browse_thread/thread/c422ec481a2db440
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@62 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/e01f177386e8794a
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@60 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- The dumped symbol format now begins with a MODULE line identifying the
uuid, age, and name of the source pdb file.
- The processor ignores MODULE lines, but they are useful in figuring out
how to index symbol files in a symbol store.
- dump_syms and symupload now both accept either a pdb or exe/dll and
will read the pdb regardless.
- Figured out that MSSS always represents a module's age in pathnames in
hexadecimal, and updated SimpleSymbolSupplier to match.
http://groups.google.com/group/airbag-dev/browse_thread/thread/572108d6567edd58
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@59 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
| |
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@58 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Commit missing test data.
http://groups.google.com/group/airbag-dev/browse_thread/thread/cce30a84f6b2d728
--This line, and .those below, will be ignored--
A src/processor/testdata/minidump2.stackwalk.out
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@54 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- minidump_stackwalk is now much more useful as a debugging tool and
even as a standalone tool.
- Reimplementation of minidump_stackwalk around MinidumpProcessor.
- minidump_stackwalk displays all pertinent information returned by
MinidumpProcessor in the ProcessState.
- New PathnameStripper::File static utility method to display only the
leaf file name in a pathname, cleaning up minidump_stackwalk's output.
- New SimpleSymbolSupplier class, which implements a simple
filesystem-based symbol supplier compatible with the layout used by
Microsoft Symbol Server and its client cache.
- minidump_stackwalk now accepts an optional second argument, a pathname
to use as a symbol directory for a SimpleSymbolSupplier.
- Updated test data to be compatible with SimpleSymbolSupplier, and added
test data for kernel32.pdb. Test data converted from CRLF line endings
to LF.
http://groups.google.com/group/airbag-dev/browse_thread/thread/cce30a84f6b2d728
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@53 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/74743a397c52b7e2
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@52 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/599a47765598cf34
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@50 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/bbcecab979fa82bc
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@49 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
r=bryner
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@48 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- MinidumpProcessor now processes all threads and returns a new ProcessState
object. (Interface change.)
- ProcessState contains a CallStack for each thread in the process, and
additional information about whether the process crashed, which thread
crashed, the reason for the crash, and identifying attributes for the
OS and CPU.
- MinidumpSystemInfo now contains a GetCPUVendor() method that returns the
vendor information from CPUID 0 on x86 processors ("GenuineIntel").
http://groups.google.com/group/airbag-dev/browse_thread/thread/16dd2c981e3361ba
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@47 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/54c66451ed8e2835
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@46 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
make Stackwalker::Walk create and return a CallStack instead of filling a
caller-supplied one (#54). r=bryner
Interface change: Stackwalker::Walk and MinidumpProcessor::Process now return
a new CallStack*.
http://groups.google.com/group/airbag-dev/browse_thread/thread/d2bad5d7c115c3fe
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@45 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
| |
system libraries) (#53)
StackFrame::function_base is not populated (#49)
r=bryner
http://groups.google.com/group/airbag-dev/browse_thread/thread/a17d35348e7027bb
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@43 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r=bryner
- This change allows Airbag to properly walk win32 stacks produced by code
built with MSVC's frame pointer omission optimization (/Oy). This
optimization is enabled at /O1 and /O2.
- There too many interface and file format changes to list here.
http://groups.google.com/group/airbag-dev/browse_thread/thread/85ce85bfa8457ece
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@42 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
| |
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@40 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PDBSourceLineWriter changes. r=bryner.
- PDBSourceLineWriter (dump_syms) outputs stack frame debugging information
- SourceLineResolver reads the new information and puts it into a
new StackFrameInfo structure, which is stored in a ContainedRangeMap.
FillSourceLineInfo passes the StackFrameInfo back to the caller.
- The base Stackwalker makes StackFrameInfo data available to subclasses
during stackwalking, but does not use this information directly itself.
Stackwalkers may access stack_frame_info_ for enhanced stackwalking
(this will be part 4).
- New test data for the updated dumped-symbol format
http://groups.google.com/group/airbag-dev/browse_thread/thread/735f191c9a1a1de4
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@38 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Test StackwalkerX86 and StackwalkerPPC on the current process, if built
by a supported compiler (gcc) on a supported (walkable) CPU (x86, ppc).
- This test is not enabled by default because of certain optimizations
that interfere with it (stack frame reuse, frame pointer omission). See
the comments at the top of stackwalker_selftest.cc. To enable this
test in the standard "make check" suite, configure with --enable-selftest.
http://groups.google.com/group/airbag-dev/browse_thread/thread/2ca1c8e72c809bec
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@35 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Implementation of PowerPC stackwalker. Tested using stackwalker_selftest
(#18).
- Hook up processor-side multi-CPU support in MinidumpProcessor and
minidump_stackwalk using the new Stackwalker::StackwalkerForCPU method.
http://groups.google.com/group/airbag-dev/browse_thread/thread/1c2fa7c5182a77a9
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@34 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Uses new MDRawContextPPC structure from #25.
- Interface change: (MinidumpContext).context() replaced with
GetContextCPU to determine CPU type and GetContextX86/GetContextPPC to
get CPU-specific context.
http://groups.google.com/group/airbag-dev/browse_thread/thread/f6c2e9cab2832b4c
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@33 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
|
|
|
|
| |
- A postfix (reverse-Polish) notation expression evaluator that we can
feed stack-frame debug information into, crank, and get pointers to
the calling frame from.
http://groups.google.com/group/airbag-dev/browse_thread/thread/a1d6c5d1fd5fdcb9
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@32 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/5f19f13fc172c4e0
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@31 4c0a9323-5329-0410-9bdc-e9ce6186880e
|
|
|
|
|
|
|
| |
http://groups.google.com/group/airbag-dev/browse_thread/thread/17840a32fb296638
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@30 4c0a9323-5329-0410-9bdc-e9ce6186880e
|