oracle home
Oracle
®
Solaris Modular Debugger Guide
Exit Print View
Search Term
Search Scope:
This Document
Entire Library
» ...
Documentation Home
»
Oracle Solaris 11.2 Information Library
»
Oracle
®
Solaris Modular ...
»
Kernel Debugging Modules
»
x86 Platform Debugging Support (unix)
Updated: September 2014
Oracle
®
Solaris Modular Debugger Guide
Document Information
Using This Documentation
Product Documentation Library
Access to Oracle Support
Feedback
Chapter 1 Modular Debugger Overview
Introduction
MDB Features
Using MDB
Future Enhancements
Chapter 2 Debugger Concepts
Building Blocks
Modularity
Chapter 3 MDB Language Syntax
Syntax
Commands
Comments
Arithmetic Expansion
Unary Operators
Binary Operators
Quoting
Shell Escapes
Variables
Symbol Name Resolution
Symbol Tables
Symbol Name Scoping
Scoping Within User-Level Applications and Shared Libraries
Object Identifier
Link Map Identifier
Scoping Within the Kernel
Kernel Debug Information
Using the Scoping Operator With a Kernel Module
Dcmd and Walker Name Resolution
Dcmd Pipelines
Formatting Dcmds
Chapter 4 Using MDB Commands Interactively
Command Reentry
Inline Editing
Keyboard Shortcuts
Output Pager
Signal Handling
Chapter 5 Built-In Commands
Built-In Dcmds
Chapter 6 Execution Control
Execution Control
Event Callbacks
Thread Support
Built-in Dcmds
Interaction with exec
Interaction with Job Control
Process Attach and Release
Chapter 7 Kernel Execution Control
Booting, Loading, and Unloading
Terminal Handling
Debugger Entry
Processor-Specific Features
Chapter 8 Kernel Debugging Modules
Generic Kernel Debugging Support (genunix)
Kernel Memory Allocator
Kernel Memory Allocator Dcmds
Kernel Memory Allocator Walkers
File Systems
File Systems Dcmds
File Systems Walkers
Virtual Memory
Virtual Memory Dcmds
Virtual Memory Walkers
CPU Structures and the Kernel Dispatcher
CPU and Dispatcher Dcmds
CPU and Dispatcher Walkers
Device Drivers and DDI Framework
Device Driver Dcmds
Device Driver Walkers
STREAMS
STREAMS Dcmds
STREAMS Walkers
Networking
Networking Dcmds
Networking Walkers
Files, Processes, and Threads
Files, Processes, and Threads Dcmds
Files, Processes, and Threads Walkers
Synchronization Primitives
Synchronization Primitives Dcmds
Synchronization Primitives Walkers
Cyclics
Cyclics Dcmds
Cyclics Walkers
Task Queues
Task Queues Dcmds
Task Queues Walkers
Error Queues
Error Queues Dcmds
Error Queues Walkers
System Configuration
System Configuration Dcmds
Interprocess Communication Debugging Support (ipc)
Interprocess Communication Dcmds
Interprocess Communication Walkers
Loopback File System Debugging Support (lofs)
Loopback File System Dcmds
Loopback File System Walkers
Internet Protocol Module Debugging Support (ip)
Internet Protocol Dcmds
Internet Protocol Walkers
Kernel Runtime Link Editor Debugging Support (krtld)
Kernel Runtime Link Editor Dcmds
Kernel Runtime Link Editor Walkers
USB Framework Debugging Support (uhci)
USB Host Controller Dcmds
USB Host Controller Walkers
USB Framework Debugging Support (usba)
USB Framework Dcmds
USB Framework Walkers
x86: x86 Platform Debugging Support (unix)
x86 Platform Dcmds
x86 Platform Walkers
SPARC: sun4u Platform Debugging Support (unix)
sun4u Platform Dcmds
sun4u Platform Walkers
Chapter 9 Debugging With the Kernel Memory Allocator
Getting Started: Creating a Sample Crash Dump
Setting kmem_flags
Forcing a Crash Dump
Saving a Crash Dump
Starting MDB
Allocator Basics
Buffer States
Transactions
Sleeping and Non-Sleeping Allocations
Kernel Memory Caches
Kernel Memory Caches
Detecting Memory Corruption
Freed Buffer Checking: 0xdeadbeef
Redzone: 0xfeedface
Uninitialized Data: 0xbaddcafe
Associating Panic Messages With Failures
Memory Allocation Logging
Buftag Data Integrity
The bufctl Pointer
Advanced Memory Analysis
Finding Memory Leaks
Finding References to Data
Finding Corrupt Buffers With ::kmem_verify
Allocator Logging Facility
Chapter 10 Module Programming API
Debugger Module Linkage
_mdb_init
_mdb_fini
Dcmd Definitions
Walker Definitions
API Functions
mdb_pwalk
mdb_walk
mdb_pwalk_dcmd
mdb_walk_dcmd
mdb_call_dcmd
mdb_layered_walk
mdb_add_walker
mdb_remove_walker
mdb_vread and mdb_vwrite
mdb_fread and mdb_fwrite
mdb_pread and mdb_pwrite
mdb_readstr
mdb_writestr
mdb_readsym
mdb_writesym
mdb_readvar and mdb_writevar
mdb_lookup_by_name and mdb_lookup_by_obj
mdb_lookup_by_addr
mdb_getopts
mdb_strtoull
mdb_alloc, mdb_zalloc and mdb_free
mdb_printf
Flag Specifiers
Field Width Specifiers
Integer Specifiers
Terminal Attribute Specifiers
Format Specifiers
mdb_vprintf
mdb_help_print
mdb_help_print_section
mdb_help_print_defs
mdb_help_print_examples
mdb_snprintf
mdb_vsnprintf
mdb_warn
mdb_flush
mdb_nhconvert
mdb_dumpptr and mdb_dump64
mdb_one_bit
mdb_inval_bits
mdb_inc_indent and mdb_dec_indent
mdb_eval
mdb_set_dot and mdb_get_dot
mdb_get_pipe
mdb_set_pipe
mdb_get_xdata
Additional Functions
Appendix A MDB Options
Summary of MDB Command-Line Options
Operands
Exit Status
Environment Variables
Appendix B Notes
Warnings
Use of the Error Recovery Mechanism
Use of the Debugger to Modify the Live Operating System
Use of kmdb to Stop the Live Operating System
Notes
Limitations on Examining Process Core Files
Limitations on Examining Crash Dump Files
Support For 64-bit Programs
Limitations on Memory Available to kmdb
Developer Information
Appendix C Transition From adb and kadb
Command-Line Options
Syntax
Watchpoint Length Specifier
Address Map Modifier
Output
Deferred Breakpoints
x86: I/O Port Access
Appendix D Transition From crash
Command-Line Options
Input in MDB
Crash Functions and MDB Dcmds
Index
Index Numbers and Symbols
Index A
Index B
Index C
Index D
Index E
Index F
Index I
Index K
Index L
Index M
Index N
Index O
Index P
Index Q
Index R
Index S
Index T
Index U
Index V
Index W
Language:
English
x86: x86 Platform Debugging Support (
unix
)
These dcmds and walkers are specific to x86 platforms.
Previous
Next