[LWN Logo]

From:   slurn@griffin.engr.sgi.com (Scott Lurndal)
Subject: [PATCH] Built-in Kernel Debugger version v0.5 is available for 2.2.10
To:     linux-kernel@vger.rutgers.edu
Date:   Wed, 28 Jul 1999 00:02:21 -0700 (PDT)


A new version of the built-in debugger for linux (kdb) is available
at:

	http://reality.sgi.com/slurn_engr

This version, version v0.5, includes the following new features and 
bug fixes:

1) Serial port support is much cleaner.   It will no longer respond to PPP 
   or PalmPilot packets.   However, as the interrupt handler isn't attached
   to the port until it is opened, the serial port will not respond to '^A'
   until mingetty starts up on the port (e.g. multiuser mode).  To use kdb
   from the serial port prior to that point, use the 'kdb' flag to lilo and
   establish the appropriate breakpoints.

2) A subset of the commands may be abbreviated (e.g. go as g).

3) If the input text is not a valid command it is treated as an address
   expression and the resultant value is printed along with the name of the
   nearest symbol.

4) A 'bl' (breakpoint list) command is added.

5) Various bp messages shortened, and some bugs fixed.

6) '*' may be used as an argument to 'bc', 'bd' and 'be' to affect all
   existing breakpoints.

7) ss enhancements:  print both executed and next instruction.

8) ss enhancements:  now works over lock prefix.

9) Show current Instruction at instruction breakpoints.

10) Updated stack traceback code (with framepointers enabled), especially
    for the btp command.

11) bt <addr> will, given the address of a return EIP on the stack, attempt
    to backtrace the stack from that point.

12) CPU # is now in both kdb and more prompts.

13) Use uaccess macros to access user space.

14) Add new pseudo registers:

	&regs	- the Address of the current saved register set
	kesp	- Kernel stack pointer at time of fault.
	%<reg>	- (e.g. %%eax)  Userspace version of %eax from most recent
		  entrance to the kernel (e.g. system call, interrupt).

15) Handle symbols from modules correctly, both searching and removing.

16) Add 'u' option to 'rd' command to display registers from most recent
    transition from user-mode to kernel-mode.

17) add two optional arguments to md command, linecount and radix.  They will
    be remembered by subsequent 'md' commands without arguments.

18) mm verifies the address is valid before attempting modification.

19) export kdb_printf symbol for module access to kdb built-in pager.

20) fix boundary problem with vmalloc memory range checking.

21) Handle japanese keyboards correctly

---

Several of these fixes and enhancements were provided as code or 
suggestions by several individuals both within and outside of SGI.

Gratitude to the following individuals for providing code and
bug fixes:

	Richard Bass   
	Chuck Fleckenstein 
	Masahiro Adegawa 
	and several others for various suggestions

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/