KADB(8) Maintenance 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)