Lines Matching +full:broken +full:- +full:turn +full:- +full:around
15 Kdb is simplistic shell-style interface which you can use on a system
22 kernel built-ins or in kernel modules if the code was built with
40 kgdb I/O modules compiled as built-ins or loadable kernel modules in the
46 - In order to enable compilation of kdb, you must first enable kgdb.
48 - The kgdb test compile options are described in the kgdb test suite
52 ------------------------------
55 :menuselection:`Kernel hacking --> Kernel debugging` and select
60 will want to turn on ``CONFIG_DEBUG_INFO`` which is called
63 It is advised, but not required, that you turn on the
73 certain regions of the kernel's memory space as read-only. If kgdb
76 option turned on, else you need to turn off this option.
93 -----------------------------
108 If you want to use a PS/2-style keyboard with kdb, you would select
132 ------------------------
144 built-in or a kernel loadable module. You can only make use of
146 a built-in.
168 - kms = Kernel Mode Setting
170 - kbd = Keyboard
178 Using loadable module or built-in
181 1. As a kernel built-in:
185 kgdboc=<tty-device>,[baud]
191 modprobe kgdboc kgdboc=<tty-device>,[baud]
258 protocol. You must manually send a :kbd:`SysRq-G` unless you have a proxy
261 "human" console. The proxy can take care of sending the :kbd:`SysRq-G`
272 don't like this are to hack gdb to send the :kbd:`SysRq-G` for you as well as
277 -------------------------------------
301 ------------------------------
316 -----------------------------
351 ----------------------------------
359 .. flat-table::
362 * - 1
363 - ``echo -1 > /sys/module/debug_core/parameters/kgdbreboot``
364 - Ignore the reboot notification entirely.
366 * - 2
367 - ``echo 0 > /sys/module/debug_core/parameters/kgdbreboot``
368 - Send the detach message to any attached debugger client.
370 * - 3
371 - ``echo 1 > /sys/module/debug_core/parameters/kgdbreboot``
372 - Enter the debugger on reboot notify.
375 -----------------------------
387 ------------------------------------
404 manually; all involve using the :kbd:`SysRq-G`, which means you must have
407 - When logged in as root or with a super user session you can run::
409 echo g > /proc/sysrq-trigger
411 - Example using minicom 2.2
413 Press: :kbd:`CTRL-A` :kbd:`f` :kbd:`g`
415 - When you have telneted to a terminal server that supports sending
418 Press: :kbd:`CTRL-]`
447 ------------------------------------------------------
463 manually; all involve using the :kbd:`SysRq-G`, which means you must have
466 - When logged in as root or with a super user session you can run::
468 echo g > /proc/sysrq-trigger
470 - Example using a laptop keyboard:
484 - Example using a PS/2 101-key keyboard
516 ------------------------------------
534 using kgdbwait as a boot argument, via a :kbd:`SysRq-G`, or running the
538 - When logged in as root or with a super user session you can run::
540 echo g > /proc/sysrq-trigger
542 - Example using minicom 2.2
544 Press: :kbd:`CTRL-A` :kbd:`f` :kbd:`g`
546 - When you have telneted to a terminal server that supports sending
549 Press: :kbd:`CTRL-]`
581 to issue an other :kbd:`SysRq-G`. It is easy to create a simple entry point by
593 ------------------------------
615 Now you must kill gdb. Typically you press :kbd:`CTRL-Z` and issue
618 kill -9 %
640 -----------------------------
688 ----------------------
697 - A generic OS exception handler which includes sync'ing the
698 processors into a stopped state on an multi-CPU system.
700 - The API to talk to the kgdb I/O drivers
702 - The API to make calls to the arch-specific kgdb implementation
704 - The logic to perform safe memory reads and writes to memory while
707 - A full implementation for software breakpoints unless overridden
710 - The API to invoke either the kdb or kgdb frontend to the debug
713 - The structures and callback API for atomic kernel mode setting.
717 2. kgdb arch-specific implementation
723 The arch-specific portion implements:
725 - contains an arch-specific trap catcher which invokes
728 - translation to and from gdb specific packet format to struct pt_regs
730 - Registration and unregistration of architecture specific trap
733 - Any special exception handling and cleanup
735 - NMI exception handling and cleanup
737 - (optional) HW breakpoints
743 - All the logic to implement the gdb serial protocol
747 The kdb debugger shell is broken down into a number of components.
754 - A simple shell
756 - The kdb core command set
758 - A registration API to register additional kdb shell commands.
760 - A good example of a self-contained kdb module is the ``ftdump``
764 - For an example of how to dynamically register a new kdb command
771 - The implementation for kdb_printf() which emits messages directly
774 - SW / HW breakpoint management for the kdb shell
781 - configuration via built-in or module
783 - dynamic configuration and kgdb hook registration calls
785 - read and write character interface
787 - A cleanup handler for unconfiguring from the kgdb core
789 - (optional) Early debug methodology
809 - ``NUMREGBYTES``:
813 - ``BUFMAX``:
817 - ``CACHE_FLUSH_IS_SAFE``:
824 ``kernel/kgdb.c``, that must be supplied by the architecture-specific
829 .. kernel-doc:: include/linux/kgdb.h
833 ----------------
844 invokes a callback in the serial core which in turn uses the callback in
858 Any implementation specifics around creating a polling driver use the
877 :c:expr:`kdb_poll_funcs[]`. The kdb_get_kbd_char() is the top-level
889 kgdboc_pre_exp_handler() which in turn calls con_debug_enter()
891 debugger calls kgdboc_post_exp_handler() which in turn calls
935 - Jason Wessel <jason.wessel@windriver.com>
939 - Jason Wessel <jason.wessel@windriver.com>