KADB(8) Maintenance Commands and Procedures KADB(8)
NAME
kadb - a kernel debugger
SYNOPSIS
SPARC
ok boot
device_specifier kadb [
-d] [
boot-flags]
x86 select (b)oot or (i)nterpreter: b kadb [
-d] [
boot-flags]
DESCRIPTION
kadb, an interactive kernel debugger, has been replaced by
kmdb(1).
For backwards compatibility, the methods used to load
kadb will be
interpreted as requests to load
kmdb(1). Unlike with the
compatibility link from
adb(1) to
mdb(1),
kmdb(1) will always load in
its native user interface mode, regardless of the name used to load
it.
kmdb(1) is based on
mdb(1), and thus shares
mdb's user interface
style and feature set. The
mdb(1) man page describes the features and
operation of
mdb. The
kmdb(1) man page describes the differences
between
mdb and
kmdb. This man page describes the major changes and
incompatibilities between
kadb and
kmdb.
Consult the
Modular Debugger Guide for a detailed description of both
mdb and
kmdb.
Major changes
This section briefly lists the major differences between
kadb and
kmdb. It is not intended to be exhaustive.
Debugger Loading and Unloading kmdb(1) may be loaded at boot, as with
kadb. It may also be
loaded after boot, thus allowing for kernel debugging and
execution control without requiring a system reboot. If
kmdb(1) is loaded after boot, it may be unloaded.
mdb Feature Set The features introduced by
mdb(1), including access to kernel
type data, debugger commands (dcmds), debugger modules (dmods),
and enhanced execution control facilities, are available under
kmdb(1). Support for changing the representative CPU (:x) is
available for both SPARC and x86. Furthermore, full execution-
control facilities are available after the representative CPU has
been changed.
Significant Incompatibilities
This section lists the significant features that have changed
incompatibly between
kadb and
kmdb(1). It is not intended to be
exhaustive. All
kmdb(1) commands referenced here are fully described
in the
kmdb(1) man page. A description as well as examples can be
found in the
Modular Debugger Guide.
Deferred Breakpoints The kadb-style "module#symbol:b" syntax is not supported under
kmdb(1). Instead, use "::bp module`symbol".
Watchpoints The ::wp dcmd is the preferred way to set watchpoint with
kmdb.
Various options are available to control the type of watchpoint
set, including
-p for physical watchpoints (SPARC only), and
-i for I/O port watchpoints (x86 only). $l is not supported,
therefore, the watchpoint size must be specified for each
watchpoint created.
Access to I/O Ports (x86 only) The commands used to access I/O ports under
kadb have been
replaced with the ::in and ::out dcmds. These two dcmds allow
both read and write of all I/O port sizes supported by
kadb.
SEE ALSO
adb(1),
kmdb(1),
mdb(1),
attributes(7) Modular Debugger Guide:
https://illumos.org/books/mdb/
December 9, 2017 KADB(8)