Difference between revisions of "KDB"

From eLinux.org
Jump to: navigation, search
(Questions)
Line 22: Line 22:
 
== Questions ==
 
== Questions ==
 
Here are some questions to answer:
 
Here are some questions to answer:
* What kernel versions are supported?
+
* What kernel versions are supported?
  * 2.6.35 and on
+
** 2.6.35 and on
* what kernel configs are required to be set?
+
* what kernel configs are required to be set?
  * CONFIG_KDB
+
** CONFIG_KDB
  * CONFIG_
+
** CONFIG_
* how to invoke the debugger?
+
* how to invoke the debugger?
  * panic
+
** panic
  * sysrq trigger
+
** sysrq trigger
* how to use agent-proxy to multiplex console and kdb (or is this only for kgdb?)
+
* how to use agent-proxy to multiplex console and kdb (or is this only for kgdb?)
  
 
== Kernel configuration ==
 
== Kernel configuration ==
  
 
== Using gdb to see the kernel source listing ==
 
== Using gdb to see the kernel source listing ==

Revision as of 22:53, 22 June 2011

Here is some information about KDB - the in-kernel debugger for the Linux kernel.

The KDB and KGDB official wiki: https://kgdb.wiki.kernel.org/

Jason Wessel is the current KDB maintainer. Here is a presentation from him at LinuxCon 2010 (August 2010): http://kernel.org/pub/linux/kernel/people/jwessel/dbg_webinar/State_Of_kernel_debugging_LinuxCon2010.pdf

Here are some videos showing use of KDB and KGDB:

Older Information

See http://www.ibm.com/developerworks/linux/library/l-kdbug/ for a tutorial for the 2.4.20 kernel (from June 2003)

Here's an article from 2002 on KDB vs. KGDB: http://kerneltrap.org/node/112 It has a good discussion excerpt between Andrew Morton and Keith Owens about the relative merits of KDB versus KGDB.

Questions

Here are some questions to answer:

  • What kernel versions are supported?
    • 2.6.35 and on
  • what kernel configs are required to be set?
    • CONFIG_KDB
    • CONFIG_
  • how to invoke the debugger?
    • panic
    • sysrq trigger
  • how to use agent-proxy to multiplex console and kdb (or is this only for kgdb?)

Kernel configuration

Using gdb to see the kernel source listing