[Crash-utility] crash enhancements proposal

Maneesh Soni maneesh at in.ibm.com
Fri May 5 05:38:55 UTC 2006


Hi Dave,

Following is a list of a few proposed improvements to crash utility though
for most of the items there are no names associated. 

Please let us know if these look useful or not. And if found appropriate 
would it be possible for you to merge these with the crash todo list.

Thanks to Badari Pulavarty, Richard Moore and Vara Prasad for the inputs.

Regards
Maneesh


--------------------------------------------------------------------------------
DESCRIPTION:
   clean & correct stack back traces on platforms ALL the time.
       - x86_64 (currently wrong and need fixing)
       - frame pointers off ? (on x86 we still don't have frame pointers on)
       
RESOLUTION STATUS: Work-in-progress by Rachita Kothiyal <rachita at in.ibm.com>

--------------------------------------------------------------------------------

DESCRIPTION:
    Code restructuring:
    - move as much code for advanced commands to libraries so that 
      crash is at least able to open the dump image and perform minimal
      set of commands like bt, dump dmesg log, disassemble etc. irrespective
      of kernel version.
    - code is hard to read & understand - need to re-write some of the 
      basic subsystems like memory mapping, pagetable management etc

RESOLUTION STATUS: 
	Work-in-progress by Dave Wilder <dwilder at us.ibm.com> and 
	Maneesh Soni <maneesh at in.ibm.com>

--------------------------------------------------------------------------------

DESCRIPTION:
    Crash & kernel version independence:
    kernel headers & code - reuse ? It would be nice to figure
    out a way to include kernel headers and sections of kernel code
    to do hard stuff (like memory mapping functions page_to_pfn,
    pfn_to_page, pagetable decoding etc..).

RESOLUTION STATUS: 
	Work-in-progress by Dave Wilder <dwilder at us.ibm.com> and 
	Maneesh Soni <maneesh at in.ibm.com>

--------------------------------------------------------------------------------

DESCRIPTION:
   Mini report: 
   The goal of this is to produce a summary report of common information
   that is used to track problems. The idea here is for many problems we
   probably don't need to get the whole dump shipped and as you probably
   figured out by now it is not easy to ship and store these huge dump
   files. 

RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------

DESCRIPTION:
   Automatic verification of the dump:
   When you get a dump to look at problem there are few common tasks one
   performs, the idea here is to automate those tasks and provide a simple
   interface in the tool. Another possibility is automatic verification of
   important datastructures, for example if the task list says there are
   30 tasks this feature automatically walks the list and counts to verify
   if there are 30 in the list or not, if 30 entries or not found this may
   give a clue of some kind of a corruption. 

RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------

DESCRIPTION:
   function arguments:
   Display arguments in the stack trace. At present, we do not have support
   for PPC64 and x86_64. On PPC64, user can dump retrieve only for top
   level frame from pt_regs. However, user can dump complete stack frame
   and read arguments. So, it is manual process and need to have some
   expertise on the stack frame


RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------

DESCRIPTION:
   local variables:
   Facilitate possible display of local variables with stack frames
   Since we are using debug vmlinux, we can find local variables locations
   from Dwarf2.

RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------

DESCRIPTION:
   better assembly & source languge, line# display in disassembly

RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------

DESCRIPTION:
   per-cpu info (like stacks traces)

RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------
DESCRIPTION:
     User space enhancements
     - show user space stack backtrace, if present in the dump file,
     - ability to link user space namelist (debug object files), 

RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------

DESCRIPTION:
    Platform specific enhancements
    - Establish CPU registers at the time of exceptions in the current context  
    - Ability to handle CPU registers from current context using symbols in
      expressions
    - Ability to format basic processor structures like LDT, GDT, task gates
      for x86 arch 

RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------

DESCRIPTION:
     cross architecture support for crash 

RESOLUTION STATUS: TBD

--------------------------------------------------------------------------------




More information about the Crash-utility mailing list