cvs commit: src/gnu/usr.bin/gdb/kgdb kgdb.h kthr.c trgt_i386.c

John Baldwin jhb at FreeBSD.org
Fri Nov 16 14:17:38 PST 2007


jhb         2007-11-16 22:17:37 UTC

  FreeBSD src repository

  Modified files:
    gnu/usr.bin/gdb/kgdb kgdb.h kthr.c trgt_i386.c 
  Log:
  Teach kgdb how to handle double fault frames on i386:
  - Save td_oncpu in 'struct kthr' so the i386 target code can see which CPU
    a thread is running on.
  - Add a new frame unwinder for double fault frames.  This unwinder is used
    when "dblfault_handler" is encountered in the stack.  It uses the CPU of
    the current thread to lookup the base address of the TSS used for the
    double fault from the GDT.  It then fetches the various registers out
    of the TSS similar to how the current trapframe unwinder fetches
    registers out of the trapframe.
  
  MFC after:      3 days
  
  Revision  Changes    Path
  1.6       +1 -0      src/gnu/usr.bin/gdb/kgdb/kgdb.h
  1.8       +1 -0      src/gnu/usr.bin/gdb/kgdb/kthr.c
  1.7       +152 -1    src/gnu/usr.bin/gdb/kgdb/trgt_i386.c


More information about the cvs-all mailing list