Commit Graph

  • e5468b8a49 MinidumpProcessor should process all threads (#35). r=bryner - 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"). mmentovai 2006-10-24 19:31:21 +0000
  • 2466d8e993 Replace auto_ptr with scoped_ptr (#56). r=bryner mmentovai 2006-10-23 20:25:42 +0000
  • d119a921ea Make stack_frame_info vector hold linked_ptrs instead of objects; make Stackwalker::Walk create and return a CallStack instead of filling a caller-supplied one (#54). r=bryner mmentovai 2006-10-23 19:24:58 +0000
  • 7772046297 Update comments to reflect HTTPS support, r=mark. bryner 2006-10-23 17:50:59 +0000
  • 2fc823f579 Add PUBLIC support to SourceLineResolver (resolve function names in Windows system libraries) (#53) StackFrame::function_base is not populated (#49) r=bryner mmentovai 2006-10-20 19:50:01 +0000
  • 246f406828 Handle frame pointer omission, (#21), part 4 (final part!): FPO stackwalker. 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. mmentovai 2006-10-20 01:46:38 +0000
  • 5afd60b067 Improvements for Windows client/tool-side code. r=bryner - Allow Windows sender to use https (#41). - HTTPUpload not proxy-friendly (#46). - Check http status codes (sort of #44). - Allow symupload to work with versionless files (prints a warning, server may still reject). mmentovai 2006-10-19 21:48:51 +0000
  • 181f307ffe Reduce calls to SymbolSupplier::GetSymbolFile() (#48). bryner 2006-10-16 18:19:09 +0000
  • 8b1645d8cd Implement a tool to upload symbols on Windows, given an exe or dll file with debugging info. Refactor common code into HTTPUpload so that the multipart POST request code can be shared with CrashReportSender. #47 bryner 2006-10-16 17:27:03 +0000
  • fc1c78e60e Handle frame pointer omission (#21), part 3: SourceLineResolver and 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 mmentovai 2006-09-28 21:09:37 +0000
  • f140025664 Add static-CRT build configurations. Get rid of the largely redundant README, moving the linkage comments to the corresponding headers. bryner 2006-09-28 19:35:08 +0000
  • 1217c1f898 Initial version of Windows exception handler and crash report sender classes (#31). r=mmentovai. bryner 2006-09-27 01:00:32 +0000
  • 0dbedc973d Better testing for Stackwalker (#18). r=bryner - 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. mmentovai 2006-09-25 21:16:15 +0000
  • 960e5277ee ppc stackwalker (#30). r=bryner - 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. mmentovai 2006-09-25 18:29:48 +0000
  • 3402cae5e5 Add ppc support to minidump reader (#27). r=bryner. - 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. mmentovai 2006-09-22 01:10:25 +0000
  • b934bb974a Handle frame pointer omission (#21), part 2: PostfixEvaluator. r=bryner. - 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. mmentovai 2006-09-22 00:42:23 +0000
  • 7daf246e4b Relicense to BSD (#29). r=bryner mmentovai 2006-09-20 21:16:16 +0000
  • 355c757b49 Improve documentation in minidump_format.h (#28). r=bryner mmentovai 2006-09-20 17:36:21 +0000
  • 8c2a4def4e Handle frame pointer omission (#21), part 1: ContainedRangeMap. r=bryner. - ContainedRangeMap is the data structure that will be used to store and look up debugging information for frames by instruction address. The debugging information includes a way to locate the calling frame in the absence of a saved frame pointer. - Restructure RangeMap into an -inl file to match ContainedRangeMap. mmentovai 2006-09-20 16:20:15 +0000
  • 82a6c6037b Add ppc types to minidump_format.h (#25). r=waylonis - New MDRawContextPPC struct, based on ppc_thread_state and others in mach/ppc/_types.h. - Add (defining where necessary) MDCPUArchitecture and MDOSPlatform enums to support non-x86/win dumps. Add MD_CONTEXT_* definitions for non-x86 CPUs. - Document a few more fields. mmentovai 2006-09-20 01:14:59 +0000
  • 0170bea32f Follow-up to #26: get rid of supplier_data, it's not really needed since the caller can implement their own supplier object. r=mmentovai. bryner 2006-09-20 00:00:12 +0000
  • cce3492afc Get rid of CrashReport, and rename CrashReportProcessor to MinidumpProcessor (#26) r=mmentovai. bryner 2006-09-19 21:58:41 +0000
  • d9fb68c3e0 Stylistic changes for RangeMap (#24). r=bryner mmentovai 2006-09-14 19:19:24 +0000
  • 683c86e6c5 Typo fixes. Patch by Ludovic Hirlimann. mmentovai 2006-09-14 16:31:38 +0000
  • 4c13853437 Add a client_id field to CrashReport (#22) r=mmentovai. bryner 2006-09-11 22:50:25 +0000
  • adf186cc76 Change report id to be a string (#21) r=mmentovai. bryner 2006-09-11 17:35:19 +0000
  • cb9fd5b773 Make SourceLineResolver use RangeMap (#13). r=bryner - Eliminate MemAddrMap from source_line_resolver.cc and adapt it to use RangeMap, also used by minidump.cc. - RangeMap operates on both a base address and a size, where MemAddrMap only used a base address, so the dumped symbol file format is modified to include size information. dump_syms produces these files and SourceLineResolver consumes them. - Provide updated test data conforming to the new dumped symbol format. mmentovai 2006-09-08 18:03:56 +0000
  • 6dd21d3baf Change interface for providing files to Minidump (#19). r=bryner - Interface change: Minidump constructor now accepts a const string& path argument instead of int fd. Minidump will open the file on first Read and close it upon destruction. - Adapt callers to new interface, no longer leaking file descriptors. mmentovai 2006-09-08 16:41:17 +0000
  • 512511a895 addressing follow-up review comments from mark (#17) bryner 2006-09-08 04:05:46 +0000
  • d5e66382d1 Add support to the StackWalker for resolving symbols, using a caller-implemented SymbolSupplier object to get a symbol file. bryner 2006-09-08 02:35:53 +0000
  • 39716226cf Make SourceLineResolver fill a StackFrame rather than using its own struct (#16), r=mmentovai. bryner 2006-09-07 17:26:17 +0000
  • 53d0f69d35 Conform to style guidelines. - In class definitions, one-space indent for public/protected/private. - Multi-line initializer format puts comma at end of line. Also: - Eliminate the long list of friends in Minidump by making swap() public. (People who need to access unknown stream types directly will need access to swap() too.) mmentovai 2006-09-07 15:56:38 +0000
  • 8d2f465c8a minidump_dump test is timezone-dependent (#15). r=bryner - Use gmtime (UTC) instead of localtime for human-readable presentation of (MDRawHeader).time_date_stamp. mmentovai 2006-09-07 15:17:40 +0000
  • 7f686d1953 Conform to style guidelines: methods overriding virtual methods should also be declared virtual. mmentovai 2006-09-06 21:37:46 +0000
  • 73badfc376 Initial implementation of x86 stackwalker (#9), missing file. r=bryner mmentovai 2006-09-06 20:58:56 +0000
  • 213800d30c Initial implementation of x86 stackwalker (#9). r=bryner mmentovai 2006-09-06 19:28:46 +0000
  • 3261e8b6ea Initial implementation of minidump reader (#6). r=bryner mmentovai 2006-09-06 02:56:44 +0000
  • 07f8ef56ac Change header paths and include guards to be relative to the "src" directory. r=mmentovai. bryner 2006-09-05 19:42:57 +0000
  • 70e12562b8 Adding a CrashReport struct, r=mmentovai. bryner 2006-09-01 19:34:00 +0000
  • 425d256321 Make build system less annoying (#8) r=bryner - Place objects in the appropriate directories, instead of filling up the root directory. - Remove namespace macros, which made maintenance troublesome and which created a dependency on config.h in public headers - Skip useless Fortran checks at configure time mmentovai 2006-08-30 20:05:05 +0000
  • 310d2f384d Cleanup from #7 mmentovai 2006-08-29 20:44:49 +0000
  • 019890bab7 Deleting java/common. feng.qian.moz 2006-08-29 20:26:25 +0000
  • 68b748fc58 Common files for reporting and symbol server feng.qian.moz 2006-08-29 01:41:20 +0000
  • cb91a2f879 Initial import, which includes the Windows client-side dump_syms tool, and part of the server-side dump processor. bryner 2006-08-25 21:14:45 +0000
  • 684d6764fe Adding a test html file bengoodger 2006-08-23 18:33:44 +0000
  • 798478c323 Word. mmentovai 2006-08-23 02:54:30 +0000
  • 1f30036849 Initial directory structure. (no author) 2006-08-22 22:14:45 +0000