[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]
Kernel Extensions and Device Support Programming Concepts

VMM Subcommands for the KDB Kernel Debugger and kdb Command

Most of vmm subcommands can be used without argument, then all choices are printed. It is also possible to enter the selection as argument.


vmker Subcommand

The vmker subcommand prints virtual memory kernel data.

example:

KDB(4)> vmker display virtual memory kernel data

VMM Kernel Data:

vmm srval         (vmmsrval)   : 00000801
pgsp map srval    (dmapsrval)  : 00001803
ram disk srval    (ramdsrval)  : 00000000
kernel ext srval  (kexsrval)   : 00002004
iplcb vaddr       (iplcbptr)   : 0045A000
hashbits          (hashbits)   : 00000010
hash shift amount (stoibits)   : 0000000B
rsvd pgsp blks    (psrsvdblks) : 00000500
total page frames (nrpages)    : 0001FF58
bad page frames   (badpages)   : 00000000
free page frames  (numfrb)     : 000198AF
max perm frames   (maxperm)    : 000195E0
num perm frames   (numperm)    : 0000125A
total pgsp blks   (numpsblks)  : 00050000
free pgsp blks    (psfreeblks) : 0004CE2C
base config seg   (bconfsrval) : 0000580B
rsvd page frames  (pfrsvdblks) : 00006644
fetch protect     (nofetchprot): 00000000
shadow srval      (ukernsrval) : 60000000
num client frames (numclient)  : 00000014
max client frames (maxclient)  : 000195E0
kernel srval      (kernsrval)  : 00000000
STOI/ITOS mask    (stoimask)   : 0000001F
STOI/ITOS sid mask(stoinio)    : 00000000
max file pageout  (maxpout)    : 00000000
min file pageout  (minpout)    : 00000000
repage table size (rptsize)    : 00010000
next free in rpt  (rptfree)    : 00000000
repage decay rate (rpdecay)    : 0000005A
global repage cnt (sysrepage)  : 00000000
swhashmask        (swhashmask) : 0000FFFF
hashmask          (hashmask)   : 0000FFFF
cachealign        (cachealign) : 00001000
overflows         (overflows)  : 00000000
reloads           (reloads)    : 0000078E
pmap_lock_addr    (pmap_lock_addr): 00000000
compressed segs   (numcompress): 00000000
compressed files  (noflush)    : 00000000
extended iplcb    (iplcbxptr)  : 00000000
alias hash mask   (ahashmask)  : 000000FF
max pgs to delete (pd_npages)  : 00080000
vrld xlate hits   (vrldhits)   : 00000000
vrld xlate misses (vrldmisses) : 0000004C
vmm 1 swpft       (...srval)   : 00003006
vmm 2 swpft       (...srval)   : 00003807
vmm 3 swpft       (...srval)   : 00004008
vmm 4 swpft       (...srval)   : 00004809
vmm swhat         (...srval)   : 00002805
# of ptasegments  (numptasegs) : 00000001
vmkerlock         (vmkerlock)  : E8000100
ame srval(s)      (amesrval[0] : 0000600C
ptaseg(s)         (ptasegs[1] : 00001002

rmap Subcommand

The rmap subcommand prints the real address range mapping table.

example:

KDB(2)> rmap * display real address range mappings

              SLOT            RADDR     SIZE    ALIGN WIMG <name>

vmrmap+000028 0001 0000000000000000 00458D51 00000000 0002 Kernel
vmrmap+000048 0002 000000001FF20000 00028000 00000000 0002 IPL control block
vmrmap+000068 0003 0000000000459000 00058000 00001000 0002 MST
vmrmap+000088 0004 00000000008BF000 001ABCE0 00000000 0002 RAMD
vmrmap+0000A8 0005 0000000000A6B000 00025001 00000000 0002 BCFG
vmrmap+0000E8 0007 0000000000C00000 00400000 00400000 0002 PFT
vmrmap+000108 0008 00000000004B1000 0007FD60 00001000 0002 PVT
vmrmap+000128 0009 0000000000531000 00200000 00001000 0002 PVLIST
vmrmap+000148 000A 0000000001000000 0067DDE0 00001000 0002 s/w PFT
vmrmap+000168 000B 0000000000731000 00040000 00001000 0002 s/w HAT
vmrmap+000188 000C 0000000000771000 00001000 00001000 0002 APT
vmrmap+0001A8 000D 0000000000772000 00000200 00001000 0002 AHAT
vmrmap+0001C8 000E 0000000000773000 00080000 00001000 0002 RPT
vmrmap+0001E8 000F 00000000007F3000 00020000 00001000 0002 RPHAT
vmrmap+000208 0010 0000000000813000 0000D000 00001000 0002 PDT
vmrmap+000228 0011 0000000000820000 00001000 00001000 0002 PTAR
vmrmap+000248 0012 0000000000821000 00002000 00001000 0002 PTAD
vmrmap+000268 0013 0000000000823000 00003000 00001000 0002 PTAI
vmrmap+000288 0014 0000000000826000 00001000 00001000 0002 DMAP
vmrmap+0002C8 0016 00000000FF000000 00000100 00000000 0005 SYSREG
vmrmap+0002E8 0017 00000000FF100000 00000600 00000000 0005 SYSINT
vmrmap+000308 0018 00000000FF600000 00022000 00000000 0005 NVRAM
vmrmap+000328 0019 000000001FD00000 00080000 00000000 0006 TCE
vmrmap+000348 001A 000000001FC00000 00080000 00000000 0006 TCE
vmrmap+000368 001B 00000000FF001000 00000014 00000000 0005 System Specific Reg.
vmrmap+000388 001C 00000000FF180000 00000004 00000000 0005 APR

KDB(2)> rmap 16 display real address range mappings of slot 16
RMAP entry 0016 of 001F: SYSREG
> valid
> range is in I/O space
Real address      : 00000000FF000000
Effective address : 00000000E0000000
Size              : 00000100
Alignment         : 00000000
WIMG bits         : 5

KDB(2)> rmap display page intervals utilized by the VMM
VMM RMAP, usage: rmap [*][<slot>]
Enter the RMAP index (0-001F): 20 out of range slot

Interval entry 0 of 5
.... Memory holes (1 intervals)
     0 : [01FF58,100000)
Interval entry 1 of 5
.... Fixed kernel memory (4 intervals)
     0 : [000000,0000F8)
     1 : [0000F7,00011A)
     2 : [000119,000125)
     3 : [0002E6,0002E9)
Interval entry 2 of 5
.... Released kernel memory (1 intervals)
     0 : [00011A,000124)
Interval entry 3 of 5
.... Fixed common memory (2 intervals)
     0 : [000488,000495)
     1 : [000494,000495)
Interval entry 4 of 5
.... Page replacement skips (6 intervals)
     0 : [000000,000827)
     1 : [000C00,00167E)
     2 : [01FC00,01FC80)
     3 : [01FD00,01FD80)
     4 : [01FF20,01FF48)
     5 : [01FF58,100000)
Interval entry 5 of 5
.... Debugger skips (3 intervals)
     0 : [0004B1,000731)
     1 : [000C00,001000)
     2 : [01FF58,100000)

pfhdata Subcommand

The pfhdata subcommand prints virtual memory control variables.

example:

KDB(2)> pfhdata display virtual memory control variables

VMM Control Variables: B69C8000 vmmdseg +69C8000

1st non-pinned page  (firstnf)          : 00000000
1st free sid entry   (sidfree)          : 000003F0
1st delete pending   (sidxmem)          : 00000000
highest sid entry    (hisid)            : 0000040C
fblru page-outs      (numpout)          : 00000000
fblru remote pg-outs (numremote)        : 00000000
frames not pinned    (pfavail)          : 0001E062
next lru candidate   (lruptr)           : 00000000
v_sync cursor        (syncptr)          : 00000000
last pdt on i/o list (iotail)           : FFFFFFFF
num of paging spaces (npgspaces)        : 00000002
PDT last alloc from  (pdtlast)          : 00000001
max pgsp PDT index   (pdtmaxpg)         : 00000001
PDT index of server  (pdtserver)        : 00000000
fblru minfree        (minfree)          : 00000078
fblru maxfree        (maxfree)          : 00000080
scb serial num       (nxtscbnum)        : 00000338
comp repage cnt      (rpgcnt[RPCOMP])   : 00000000
file repage cnt      (rpgcnt[RPFILE])   : 00000000
num of comp replaces (nreplaced[RPCOMP]): 00000000
num of file replaces (nreplaced[RPFILE]): 00000000
num of comp repages  (nrepaged[RPCOMP]) : 00000000
num of file repages  (nrepaged[RPFILE]) : 00000000
minperm              (minperm)          : 00006578
min page-ahead       (minpgahead)       : 00000002
max page-ahead       (maxpgahead)       : 00000008
sysbr protect key    (kerkey)           : 00000000
non-ws page-outs     (numpermio)        : 00000000
free frame wait      (freewait)         : 00000000
device i/o wait      (devwait)          : 00000000
extend XPT wait      (extendwait)       : 00000000
buf struct wait      (bufwait)          : 00000000
inh/delete wait      (deletewait)       : 00000000
SIGDANGER level      (npswarn)          : 00002800
SIGKILL level        (npskill)          : 00000A00
next warn level      (nextwarn)         : 00002800
next kill level      (nextkill)         : 00000A00
adj warn level       (adjwarn)          : 00000008
adj kill level       (adjkill)          : 00000008
cur pdt alloc        (npdtblks)         : 00000003
max pdt alloc        (maxpdtblks)       : 00000004
num i/o sched        (numsched)         : 00000004
freewake             (freewake)         : 00000000
disk quota wait      (dqwait)           : 00000000
1st free ame entry   (amefree)          : FFFFFFFF
1st del pending ame  (amexmem)          : 00000000
highest ame entry    (hiame)            : 00000000
pag space free wait  (pgspwait)         : 00000000
index in int array   (lruidx)           : 00000000
next memory hole     (skiplru)          : 00000000
first free apt entry (aptfree)          : 00000056
next apt entry       (aptlru)           : 00000000
sid index of logs    (logsidx)          @ B01C80CC
lru request          (lrurequested)     : 00000000
lru daemon wait anchor (lrudaemon)      : E6000758
global vmap      lock @ B01C8514 E80001C0
global ame       lock @ B01C8554 E8000200
global rpt       lock @ B01C8594 E8000240
global alloc     lock @ B01C85D4 E8000280
apt freelist     lock @ B01C8614 E80002C0

vmstat Subcommand

The vmstat subcommand prints virtual memory statistics.

example:

KDB(6)> vmstat display virtual memory statistics

VMM Statistics:

page faults              (pgexct)   : 0CE0A83D
page reclaims            (pgrclm)   : 00000000
lockmisses               (lockexct) : 00000000
backtracks               (backtrks) : 0025D779
pages paged in           (pageins)  : 002D264A
pages paged out          (pageouts) : 00E229D1
paging space page ins    (pgspgins) : 0001F9C8
paging space page outs   (pgspgouts): 0003B20E
start I/Os               (numsios)  : 00B4786A
iodones                  (numiodone): 00B478F7
zero filled pages        (zerofills): 0225E1A4
executable filled pages  (exfills)  : 000090C4
pages examined by clock  (scans)    : 008F32DF
clock hand cycles        (cycles)   : 0000008F
page steals              (pgsteals) : 004E986F
free frame waits         (freewts)  : 023449E5
extend XPT waits         (extendwts): 000008C9
pending I/O waits        (pendiowts): 0022C5E3

VMM Statistics:

ping-pongs: source => alias (pings) : 00000000
ping-pongs: alias => source (pongs) : 00000000
ping-pongs: alias => alias  (pangs) : 00000000
ping-pongs: alias page del  (dpongs): 00000000
ping-pongs: alias page write(wpongs): 00000000
ping-pong cache flushes     (cachef): 00000000
ping-pong cache invalidates (cachei): 00000000

vmaddr Subcommand

The vmaddr subcommand prints virtual memory addresses.

example:

KDB(1)> vmaddr display virtual memory addresses

VMM Addresses

H/W PTE    : 00C00000 [real address]
H/W PVT    : 004B1000 [real address]
H/W PVLIST : 00531000 [real address]
S/W HAT    : A0000000 A0000000
S/W PFT    : 60000000 60000000
AHAT       : B0000000 vmmdseg +000000
APT        : B0020000 vmmdseg +020000
RPHAT      : B0120000 vmmdseg +120000
RPT        : B0140000 vmmdseg +140000
PDT        : B01C0000 vmmdseg +1C0000
PFHDATA    : B01C8000 vmmdseg +1C8000
LOCKANCH   : B01C8654 vmmdseg +1C8654
SCBs       : B01CC87C vmmdseg +1CC87C
LOCKWORDS  : B45CC87C vmmdseg +45CC87C
AMEs       : D0000000 ameseg  +000000
LOCK:
 PMAP      : 00000000 00000000

pdt Subcommand

The pdt subcommand prints paging device table. To print all pdts, enter the subcommand without argument and select the first to be displayed.

example:

KDB(3)> pdt * display paging device table
               SLOT   NEXTIO   DEVICE   IOTAIL  DMSRVAL    IOCNT <name>

vmmdseg+1C0000 0000 FFFFFFFF 000A0001 FFFFFFFF 00000000 00000000 paging
vmmdseg+1C0040 0001 FFFFFFFF 000A000E FFFFFFFF 00000000 00000000 paging
vmmdseg+1C0080 0002 FFFFFFFF 000A000F FFFFFFFF 00000000 00000000 paging
vmmdseg+1C0440 0011 FFFFFFFF 000A0007 FFFFFFFF 0001B07B 00000000 filesystem
vmmdseg+1C0480 0012 FFFFFFFF 000A0003 FFFFFFFF 00000000 00000000 log
vmmdseg+1C04C0 0013 FFFFFFFF 000A0004 FFFFFFFF 00005085 00000000 filesystem
vmmdseg+1C0500 0014 FFFFFFFF 000A0005 FFFFFFFF 0000B08B 00000000 filesystem
vmmdseg+1C0540 0015 FFFFFFFF 000A0006 FFFFFFFF 0000E0AE 00000000 filesystem
vmmdseg+1C0580 0016 FFFFFFFF 000A0008 FFFFFFFF 0000F14F 00000000 filesystem
vmmdseg+1C05C0 0017 FFFFFFFF 0B5C7308 FFFFFFFF 00000000 00000000 remote
vmmdseg+1C0600 0018 FFFFFFFF 0B5C75B4 FFFFFFFF 00000000 00000000 remote

KDB(3)> pdt 13 display paging device table slot 13

PDT address B01C04C0 entry 0013 of 01FF, type: FILESYSTEM
next pdt on i/o list  (nextio)  : FFFFFFFF
dev_t or strategy ptr (device)  : 000A0004
last frame w/pend I/O (iotail)  : FFFFFFFF
free buf_struct list  (bufstr)  : 0B23A0B0
total buf structs     (nbufs)   : 005D
available (PAGING)    (avail)   : 0000
JFS  disk agsize      (agsize)  : 0400
JFS inode agsize      (iagsize) : 0800
JFS log SCB index     (logsidx) : 0007A
JFS fragments per page(fperpage): 1
JFS compression type  (comptype): 0
JFS log2 bigalloc mult(bigexp)  : 0
disk map srval        (dmsrval) : 00005085
i/o's not finished    (iocnt)   : 00000000
logical volume lock (lock)      :@B01C04E4 00000000

scb Subcommand

The scb subcommand displays VMM segment control blocks.

example:

KDB(2)> scb display VMM segment control block
VMM SCBs
Select the scb to display by:
 1) index
 2) sid
 3) srval
 4) search on sibits
 5) search on npsblks
 6) search on npages
 7) search on npseablks
 8) search on lock 
 9) search on segment type
Enter your choice: 2 sid
Enter the sid (in hex): 00000401 value

VMM SCB Addr B69CC8C0 Index 00000001 of 00003A2F  Segment ID: 00000401

WORKING STORAGE SEGMENT
parent sid             (parent)   : 00000000
left child sid         (left)     : 00000000
right child sid        (right)    : 00000000
extent of growing down (minvpn)   : 0000ABBD
last page user region  (sysbr)    : FFFFFFFF
up limit               (uplim)    : 00007FFF
down limit             (downlim)  : 00008000
number of pgsp blocks  (npsblks)  : 00000008
number of epsa blocks  (npseablks): 00000000

segment info bits        (_sibits) : A004A000
default storage key      (_defkey) : 2
> (_segtype)..... working segment
> (_segtype)..... segment is valid
> (_system)...... system segment
> (_chgbit)...... segment modified
> (_compseg)..... computational segment
next free list/mmap cnt  (free)    : 00000000


non-fblu pageout count   (npopages): 0000
xmem attach count        (xmemcnt) : 0000
address of XPT root      (vxpto)   : C00C0400
pages in real memory     (npages)  : 0000080E
page frame at head       (sidlist) : 00006E66
max assigned page number (maxvpn)  : 00006AC3
lock                     (lock)    : E80001C0
KDB(2)> scb display VMM segment control block
VMM SCBs
Select the scb to display by:
 1) index
 2) sid
 3) srval
 4) search on sibits
 5) search on npsblks
 6) search on npages
 7) search on npseablks
 8) search on lock 
 9) search on segment type
Enter your choice: 8 search on lock

Find all scbs currently locked
        sidx 00000012 locked: 00044EEF
        sidx 00000D63 locked: 000412F7
        sidx 00000FB5 locked: 00044EEF
        sidx 00001072 locked: 000280E7
        sidx 000034B4 locked: 0002EC61

5 (dec) scb locked
KDB(2)> scb 1 display VMM segment control block by index
Enter the index (in hex): 000034B4 index

VMM SCB Addr B6AAC84C Index 000034B4 of 00003A2F  Segment ID: 000064B4

WORKING STORAGE SEGMENT
parent sid             (parent)   : 00000000
left child sid         (left)     : 00000000
right child sid        (right)    : 00000000
extent of growing down (minvpn)   : 00010000
last page user region  (sysbr)    : 00010000
up limit               (uplim)    : 0000FFFF
down limit             (downlim)  : 00010000
number of pgsp blocks  (npsblks)  : 0000000A
number of epsa blocks  (npseablks): 00000000

segment info bits        (_sibits) : A0002080
default storage key      (_defkey) : 2
> (_segtype)..... working segment
> (_segtype)..... segment is valid
> (_compseg)..... computational segment
> (_sparse)...... sparse segment
next free list/mmap cnt  (free)    : 00000000
non-fblu pageout count   (npopages): 0000
xmem attach count        (xmemcnt) : 0000
address of XPT root      (vxpto)   : C0699C00
pages in real memory     (npages)  : 00000011
page frame at head       (sidlist) : 00004C5C
max assigned page number (maxvpn)  : 000001C1
lock                     (lock)    : E80955E0

pft Subcommand

The pft subcommand displays VMM page frame table.

example:

KDB(5)> pft display VMM page frame
VMM PFT
Select the PFT entry to display by:
 1) page frame #
 2) h/w hash (sid,pno)
 3) s/w hash (sid,pno)
 4) search on swbits
 5) search on pincount
 6) search on xmemcnt
 7) scb list
 8) io list
Enter your choice: 7 scb list
Enter the sid (in hex): 00005555 sid value

VMM PFT Entry For Page Frame 0EB87 of 0FF67

pte = B0155520, pvt = B203AE1C, pft = B3AC2950
h/w hashed sid : 00005555  pno : 00000001  key : 1
source     sid : 00005555  pno : 00000001  key : 1

> in use
> on scb list
> valid (h/w)
> referenced (pft/pvt/pte): 0/0/1
> modified (pft/pvt/pte): 0/0/0
page number in scb    (pagex)  : 00000001
disk block number     (dblock) : 00000AC6
next page on scb list (sidfwd) : 0000E682
prev page on scb list (sidbwd) : FFFFFFFF
freefwd/waitlist      (freefwd): 00000000
freebwd/logage/pincnt (freebwd): 00000000
out of order I/O      (nonfifo): 0000
next frame i/o list   (nextio) : 00000000
storage attributes    (wimg)   : 2
xmem hide count       (xmemcnt): 0
next page on s/w hash (next)   : FFFFFFFF
List of alias entries (alist)  : 0000FFFF
index in PDT          (devid)  : 0014

VMM PFT Entry For Page Frame 0E682 of 0FF67

pte = B01555F0, pvt = B2039A08, pft = B3AB3860
h/w hashed sid : 00005555  pno : 00000002  key : 1
source     sid : 00005555  pno : 00000002  key : 1

> in use
> on scb list
> valid (h/w)
> referenced (pft/pvt/pte): 0/0/1
> modified (pft/pvt/pte): 0/0/0
page number in scb    (pagex)  : 00000002
disk block number     (dblock) : 00000AC7
next page on scb list (sidfwd) : 0000EB7B
prev page on scb list (sidbwd) : 0000EB87
freefwd/waitlist      (freefwd): 00000000
freebwd/logage/pincnt (freebwd): 00000000
out of order I/O      (nonfifo): 0000
next frame i/o list   (nextio) : 00000000
storage attributes    (wimg)   : 2
xmem hide count       (xmemcnt): 0
next page on s/w hash (next)   : FFFFFFFF
List of alias entries (alist)  : 0000FFFF
index in PDT          (devid)  : 0014

VMM PFT Entry For Page Frame 0EB7B of 0FF67

pte = B0155558, pvt = B203ADEC, pft = B3AC2710
h/w hashed sid : 00005555  pno : 00000000  key : 1
source     sid : 00005555  pno : 00000000  key : 1

> in use
> on scb list
> valid (h/w)
> referenced (pft/pvt/pte): 0/0/1
> modified (pft/pvt/pte): 0/0/0
page number in scb    (pagex)  : 00000000
disk block number     (dblock) : 00000AC5
next page on scb list (sidfwd) : FFFFFFFF
prev page on scb list (sidbwd) : 0000E682
freefwd/waitlist      (freefwd): 00000000
freebwd/logage/pincnt (freebwd): 00000000
out of order I/O      (nonfifo): 0000
next frame i/o list   (nextio) : 00000000
storage attributes    (wimg)   : 2
xmem hide count       (xmemcnt): 0
next page on s/w hash (next)   : FFFFFFFF
List of alias entries (alist)  : 0000FFFF
index in PDT          (devid)  : 0014

Pages on SCB list
npages.......... 00000003
on sidlist...... 00000003
pageout_pagein.. 00000000
free............ 00000000
KDB(0)> pft 8 io list
Enter the page frame number (in hex): 00002749 first page frame

VMM PFT Entry For Page Frame 02749 of 0FF67

pte = B00C9280, pvt = B2009D24, pft = B3875DB0
h/w hashed sid : 0080324A  pno : 00000000  key : 1
source     sid : 0000324A  pno : 00000000  key : 1

> page out
> on scb list
> ok to write to home
> valid (h/w)
> referenced (pft/pvt/pte): 0/1/0
> modified (pft/pvt/pte): 1/1/0
page number in scb    (pagex)  : 00000000
disk block number     (dblock) : 0000420D
next page on scb list (sidfwd) : 0000EE94
prev page on scb list (sidbwd) : 00002E11
freefwd/waitlist      (freefwd): E6096C00
freebwd/logage/pincnt (freebwd): 00000000
out of order I/O      (nonfifo): 0001
index in PDT          (devid)  : 0033
next frame i/o list   (nextio) : 000043EB
storage attributes    (wimg)   : 2
xmem hide count       (xmemcnt): 0
next page on s/w hash (next)   : FFFFFFFF
List of alias entries (alist)  : 0000FFFF

VMM PFT Entry For Page Frame 043EB of 0FF67 next frame i/o list

pte = B01580C0, pvt = B2010FAC, pft = B38CBC10
h/w hashed sid : 008055FC  pno : 000003FF  key : 1
source     sid : 000055FC  pno : 000003FF  key : 1

> page out
> on scb list
> ok to write to home
> valid (h/w)
> referenced (pft/pvt/pte): 0/1/0
> modified (pft/pvt/pte): 1/1/0
page number in scb    (pagex)  : 000003FF
disk block number     (dblock) : 00044D47
next page on scb list (sidfwd) : 00005364
prev page on scb list (sidbwd) : 000043EB
freefwd/waitlist      (freefwd): 00000000
freebwd/logage/pincnt (freebwd): 00000000
out of order I/O      (nonfifo): 0001
index in PDT          (devid)  : 0031
next frame i/o list   (nextio) : 00004405
storage attributes    (wimg)   : 2
xmem hide count       (xmemcnt): 0
next page on s/w hash (next)   : 00002789
List of alias entries (alist)  : 0000FFFF

...

VMM PFT Entry For Page Frame 02E11 of 0FF67

pte = B00C90C0, pvt = B200B844, pft = B388A330
h/w hashed sid : 0080324A  pno : 00000009  key : 1
source     sid : 0000324A  pno : 00000009  key : 1

> page out
> on scb list
> ok to write to home
> valid (h/w)
> referenced (pft/pvt/pte): 0/1/0
> modified (pft/pvt/pte): 1/1/0
page number in scb    (pagex)  : 00000009
disk block number     (dblock) : 000042C0
next page on scb list (sidfwd) : 00002749
prev page on scb list (sidbwd) : 00002FCB
freefwd/waitlist      (freefwd): 00000000
freebwd/logage/pincnt (freebwd): 00000000
out of order I/O      (nonfifo): 0001
index in PDT          (devid)  : 0033
next frame i/o list   (nextio) : 00002749
storage attributes    (wimg)   : 2
xmem hide count       (xmemcnt): 0
next page on s/w hash (next)   : FFFFFFFF
List of alias entries (alist)  : 0000FFFF

Pages on iolist...... 00000091

pte Subcommand

The pte subcommand displays VMM page table entries.

example:

KDB(1)> pte display VMM page table entry
VMM PTE
Select the PTE to display by:
 1) index
 2) sid,pno
 3) page frame
 4) PTE group
Enter your choice: 2        sid,pno
Enter the sid (in hex): 802 sid value
Enter the pno (in hex): 0   pno value

 PTEX  v  SID   h  avpi  RPN  r c wimg pp
004010 1 000802 0   00  007CD 1 1 0002 00
KDB(1)> pte 4 display VMM page table group
Enter the sid (in hex): 802 sid value
Enter the pno (in hex): 0   pno value

 PTEX  v  SID   h  avpi  RPN  r c wimg pp
004010 1 000802 0   00  007CD 1 1 0002 00
004011 1 000803 0   00  090FF 0 0 0002 03
004012 0 000000 0   00  00000 0 0 0000 00
004013 0 000000 0   00  00000 0 0 0000 00
004014 0 000000 0   00  00000 0 0 0000 00
004015 0 000000 0   00  00000 0 0 0000 00
004016 0 000000 0   00  00000 0 0 0000 00
004017 0 000000 0   00  00000 0 0 0000 00

 PTEX  v  SID   h  avpi  RPN  r c wimg pp
03BFE8 1 00729E 0   01  0DC55 0 0 0002 01
03BFE9 1 007659 0   00  07BC6 1 0 0002 02
03BFEA 0 000000 0   00  00000 0 0 0000 00
03BFEB 0 000000 0   00  00000 0 0 0000 00
03BFEC 0 000000 0   00  00000 0 0 0000 00
03BFED 0 000000 0   00  00000 0 0 0000 00
03BFEE 0 000000 0   00  00000 0 0 0000 00
03BFEF 0 000000 0   00  00000 0 0 0000 00

pta Subcommand

The pta subcommand displays VMM PTA segment.

example:

KDB(3)> pta ? display usage
VMM PTA segment @ C0000000
Usage: pta
       pta -r[oot] [sid] to print XPT root
       pta -d[blk] [sid] to print XPT direct blocks
       pta -a[pm]  [idx] to print Area Page Map
       pta -v[map] [idx] to print map blocks
       pta -x[pt]   xpt  to print XPT fields

KDB(3)> pta display PTA information
VMM PTA segment @ C0000000
pta_root....... @ C0000000  pta_hiapm...... : 00000200
pta_vmapfree... : 00010FCB  pta_usecount... : 0004D000
pta_anchor[0].. : 00000107  pta_anchor[1].. : 00000000
pta_anchor[2].. : 00000102  pta_anchor[3].. : 00000000
pta_anchor[4].. : 00000000  pta_anchor[5].. : 00000000
pta_freecnt.... : 0000000A  pta_freetail... : 000001FF
pta_apm(1rst).. @ C0000600  pta_xptdblk.... @ C0080000

KDB(1)> pta -a 2 display area page map for 1K bucket
VMM PTA segment @ C0000000
INDEX XPT1K
pta_apm @ C0000810 pmap... : D0000000 fwd.... : 00F7 bwd.... : 0000
pta_apm @ C00007B8 pmap... : B0000000 fwd.... : 00EE bwd.... : 0102
pta_apm @ C0000770 pmap... : E0000000 fwd.... : 00FA bwd.... : 00F7
pta_apm @ C00007D0 pmap... : 30000000 fwd.... : 0112 bwd.... : 00EE
pta_apm @ C0000890 pmap... : B0000000 fwd.... : 010A bwd.... : 00FA
pta_apm @ C0000850 pmap... : B0000000 fwd.... : 0111 bwd.... : 0112
pta_apm @ C0000888 pmap... : 50000000 fwd.... : 00F5 bwd.... : 010A
pta_apm @ C00007A8 pmap... : A0000000 fwd.... : 010E bwd.... : 0111
pta_apm @ C0000870 pmap... : 10000000 fwd.... : 00F6 bwd.... : 00F5
pta_apm @ C00007B0 pmap... : D0000000 fwd.... : 010C bwd.... : 010E
pta_apm @ C0000860 pmap... : 30000000 fwd.... : 0114 bwd.... : 00F6
pta_apm @ C00008A0 pmap... : 10000000 fwd.... : 0108 bwd.... : 010C
pta_apm @ C0000840 pmap... : E0000000 fwd.... : 010D bwd.... : 0114
pta_apm @ C0000868 pmap... : D0000000 fwd.... : 0106 bwd.... : 0108
pta_apm @ C0000830 pmap... : 50000000 fwd.... : 0000 bwd.... : 010D

ste Subcommand

The ste subcommand displays segment table entry for 64-bit process.

example:

KDB(0)> ste display segment table
Segment Table (STAB)
Select the STAB entry to display by:
 1) esid
 2) sid
 3) dump hash class (input=esid)
 4) dump entire stab
Enter your choice: 4 display entire stab
000000002FF9D000: ESID 0000000080000000 VSID 0000000000024292 V Ks Kp
000000002FF9D010: ESID 0000000000000000 VSID 0000000000000000 V Ks Kp
000000002FF9D020: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D030: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D040: ESID 0000000000000000 VSID 0000000000000000
...

(0)> f stack frame
thread+002A98 STACK:
[00031960]e_block_thread+000224 ()
[00041738]nsleep+000124 (??, ??)
[01CFF0F4]nsleep64_+000058 (0FFFFFFF, F0000001, 00000001, 10003730,
   1FFFFEF0, 1FFFFEF8)
[000038B4].sys_call+000000 ()
[80000010000867C]080000010000867C (??, ??, ??, ??)
[80000010001137C]nsleep+000094 (??, ??)
[800000100058204]sleep+000030 (??)
[100000478]main+0000CC (0000000100000001, 00000000200FEB78)
[10000023C]__start+000044 ()

(0)> ste display segment table
Segment Table (STAB)
Select the STAB entry to display by:
 1) esid
 2) sid
 3) dump hash class (input=esid)
 4) dump entire stab
Enter your choice: 3  hash class
Hash Class to dump (in hex) [esid ok here]: 08000010 input=esid
          PRIMARY HASH GROUP
000000002FF9D800: ESID 0000000000000010 VSID 0000000000002BC1 V Ks Kp
000000002FF9D810: ESID 0000000080000010 VSID 0000000000014AEA V Ks Kp
000000002FF9D820: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D830: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D840: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D850: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D860: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D870: ESID 0000000000000000 VSID 0000000000000000
          SECONDARY HASH GROUP
000000002FF9D780: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D790: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D7A0: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D7B0: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D7C0: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D7D0: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D7E0: ESID 0000000000000000 VSID 0000000000000000
000000002FF9D7F0: ESID 0000000000000000 VSID 0000000000000000
000000002FF9DFF0: ESID 0000000000000000 VSID 0000000000000000

(0)> ste 1 display esid entry in segment table
Enter the esid (in hex): 0FFFFFFFF
000000002FF9DF80: ESID 00000000FFFFFFFF VSID 00000000000325F9 V Ks Kp


sr64 Subcommand

The sr64 subcommand displays segment registers for 64-bit process.

example:

KDB(0)> sr64 ? display help
Usage: sr64 [-p pid] [esid] [size]
KDB(0)> sr64 display all segment registers
SR00000000: 60000000  SR00000002: 60002B45  SR0000000D: 6000614C
SR00000010: 6000520A  SR00000011: 6000636C
SR8001000A: 60003B47
SR80020014: 6000B356
SR8FFFFFFF: 60000340
SR90000000: 60001142
SR9FFFFFFF: 60004148
SRFFFFFFFF: 6000B336
KDB(0)> sr64 11 display up to 16 SRs from 10
Segment registers for address space of Pid: 000048CA
SR00000010: 6000E339  SR00000011: 6000B855
KDB(0)> sr64 0 100 display up to 256 SRs from 0
Segment registers for address space of Pid: 000048CA
SR00000000: 60000000  SR00000002: 60002B45  SR0000000D: 6000614C
SR00000010: 6000520A  SR00000011: 6000636C

segst64 Subcommand

The segst64 subcommand displays segment state for 64-bit process.

example:

KDB(0)> segst64 display 
snode    base     last     nvalid   sfwd     sbwd
00000000 00000003 FFFFFFFE 00000010 00000001 FFFFFFFF
ESID           segstate segflag num_segs fno/shmp/srval/nsegs
SR00000003>[ 0]       SEG_AVAIL 00000000 0000000A
SR0000000D>[ 1]       SEG_OTHER 00000001 00000001
SR0000000E>[ 2]       SEG_AVAIL 00000000 00000001
SR0000000F>[ 3]       SEG_OTHER 00000001 00000001
SR00000010>[ 4]        SEG_TEXT 00000001 00000001
SR00000011>[ 5]     SEG_WORKING 00000001 00000000
SR00000012>[ 6]       SEG_AVAIL 00000000 8000FFF8
SR8001000A>[ 7]     SEG_WORKING 00000001 00000000
SR8001000B>[ 8]       SEG_AVAIL 00000000 00010009
SR80020014>[ 9]     SEG_WORKING 00000001 00000000
SR80020015>[10]       SEG_AVAIL 00000000 0FFDFFEA
SR8FFFFFFF>[11]     SEG_WORKING 00000001 00000000
SR90000000>[12]        SEG_TEXT 00000001 00000001
SR90000001>[13]       SEG_AVAIL 00000000 0FFFFFFE
SR9FFFFFFF>[14]        SEG_TEXT 00000001 00000001
SRA0000000>[15]       SEG_AVAIL 00000000 5FFFFFFF
snode    base     last     nvalid   sfwd     sbwd
00000001 FFFFFFFF FFFFFFFF 00000001 FFFFFFFF 00000000
ESID           segstate segflag num_segs fno/shmp/srval/nsegs
SRFFFFFFFF>[ 0]     SEG_WORKING 00000001 00000000

apt Subcommand

The apt subcommand displays alias page table.

example:

KDB(4)> apt display alias page table entry
VMM APT
Select the APT to display by:
 1) index
 2) sid,pno
 3) page frame
Enter your choice: 1        index
Enter the index (in hex): 0 value

VMM APT Entry 00000000 of 0000FF67
> valid
> pinned
segment identifier    (sid)  : 00001004
page number           (pno)  : 0000
page frame            (nfr)  : FF000
protection key        (key)  : 0
storage control attr  (wimg) : 5
next on hash          (next) : FFFF
next on alias list    (anext): 0000
next on free list     (free) : FFFF

KDB(4)> apt 2 display alias page table entry
Enter the sid (in hex): 1004 sid value
Enter the pno (in hex): 100  pno value

VMM APT Entry 00000001 of 0000FF67
> valid
> pinned
segment identifier    (sid)  : 00001004
page number           (pno)  : 0100
page frame            (nfr)  : FF100
protection key        (key)  : 0
storage control attr  (wimg) : 5
next on hash          (next) : 0000
next on alias list    (anext): 0000
next on free list     (free) : FFFF

vmwait Subcommand

The vmwait subcommand displays VMM wait status.

example:

KDB(6)> th -w WPGIN display threads waiting for VMM
              SLOT NAME     STATE   TID PRI CPUID CPU FLAGS    WCHAN

thread+000780   10 lrud     SLEEP 00A15 010       000 00001004 vmmdseg+69C84D0
thread+0012C0   25 dtlogin  SLEEP 01961 03C       000 00000000 vmmdseg+69C8670
thread+001500   28 cnsview  SLEEP 01C71 03C       000 00000004 vmmdseg+69C8670
thread+00B1C0  237 jfsz     SLEEP 0EDCD 032       000 00001000 vm_zqevent+000000
thread+00C240  259 jfsc     SLEEP 10303 01E       000 00001000 _$STATIC+000110
thread+00E940  311 rm       SLEEP 137C3 03C       000 00000000 vmmdseg+69C8670
thread+012300  388 touch    SLEEP 1843B 03C       000 00000000 vmmdseg+69C8670
thread+014700  436 rm       SLEEP 1B453 03C       000 00000000 vmmdseg+69C8670
thread+0165C0  477 rm       SLEEP 1DD8D 03C       000 00000000 vmmdseg+69C8670
thread+0177C0  501 cres     SLEEP 1F529 03C       000 00000000 vmmdseg+69C8670
thread+01C980  610 lslv     SLEEP 262AF 028       000 00000000 vmmdseg+69C8670
thread+01D7C0  629 touch    SLEEP 27555 03C       000 00000000 vmmdseg+69C8670
thread+021840  715 vmmmp9   SLEEP 2CBC7 03C       000 00400000 vmmdseg+69C8670
thread+023640  755 cres1    SLEEP 2F3DF 03C       000 00000000 vmmdseg+69C8670
thread+027540  839 xlC      SLEEP 34779 03C       000 00000000 vmmdseg+69C8670
thread+032B80 1082 rm       SLEEP 43AAB 03C       000 00000000 vmmdseg+69C8670
thread+033900 1100 rm       SLEEP 44CD9 03C       000 00000000 vmmdseg+69C8670
thread+038D00 1212 ksh      SLEEP 4BC45 029       000 00000000 vmmdseg+69C8670
thread+03FA80 1358 cres     SLEEP 54EDD 03C       000 00000000 vmmdseg+69C8670
thread+049140 1559 touch    SLEEP 617F7 03C       000 00000000 vmmdseg+69C8670
thread+04A880 1590 rm       SLEEP 6365D 03C       000 00000000 vmmdseg+69C8670
thread+053AC0 1785 rm       SLEEP 6F9A5 03C       000 00000000 vmmdseg+69C8670
thread+05BA40 1955 rm       SLEEP 7A3BB 03C       000 00000000 vmmdseg+69C8670
thread+05FC40 2043 cres     SLEEP 7FBB5 03C       000 00000000 vmmdseg+69C8670
thread+065DC0 2173 touch    SLEEP 87D35 03C       000 00000000 vmmdseg+69C8670
thread+0951C0 3181 ksh      SLEEP C6DE9 03C       000 00000000 vmmdseg+69C8670
thread+0AD040 3691 renamer  SLEEP E6B93 03C       000 00000000 vmmdseg+69C8670
thread+0AD7C0 3701 renamer  SLEEP E751F 03C       000 00000000 vmmdseg+69C8670
thread+0B8E00 3944 ksh      SLEEP F6839 03C       000 00000000 vmmdseg+69C8670
thread+0C1B00 4132 touch    SLEEP 10243D 03C       000 00000000 vmmdseg+69C8670
thread+0C2E80 4158 renamer  SLEEP 103EA9 03C       000 00000000 vmmdseg+69C8670
thread+0CF480 4422 renamer  SLEEP 1146F1 03C       000 00000000 vmmdseg+69C8670
thread+0D0F80 4458 link_fil SLEEP 116A39 03C       000 00000000 vmmdseg+69C9C74
thread+0DC140 4695 sync     SLEEP 1257BB 03C       000 00000000 vmmdseg+69C8670
thread+0DD280 4718 touch    SLEEP 126E57 03C       000 00000000 vmmdseg+69C8670
thread+0E5A40 4899 renamer  SLEEP 132315 03C       000 00000000 vmmdseg+69C8670
thread+0EE140 5079 renamer  SLEEP 13D7C3 03C       000 00000000 vmmdseg+69C8670
thread+0F03C0 5125 renamer  SLEEP 1405B7 03C       000 00000000 vmmdseg+69C8670
thread+0FC540 5383 renamer  SLEEP 15072F 03C       000 00000000 vmmdseg+69C8670
thread+101AC0 5497 renamer  SLEEP 157909 03C       000 00000000 vmmdseg+69C8670
thread+10D280 5742 rm       SLEEP 166E37 03C       000 00000000 vmmdseg+69C8670
KDB(6)> sw 4458 switch to thread slot 4458
Switch to thread: <thread+0D0F80>
KDB(6)> f display stack frame
thread+0D0F80 STACK:
[00017380].backt+000000 (0000EA07, C00C2A00 [??])
[000524F4]vm_gettlock+000020 (??, ??)
[001C0D28]iwrite+0001E4 (??)
[001C3860]finicom+0000B4 (??, ??)
[001C3BC0]comlist+0001CC (??, ??)
[001C3C8C]_commit+000030 (00000000, 00000002, 0A1A06C0, 0A1ACFE8,
   2FF3B400, E88C7C80, 34EF6655, 2FF3AE20)
[0020BD60]jfs_link+0000C4 (??, ??, ??, ??)
[001CED6C]vnop_link+00002C (??, ??, ??, ??)
[001D5F7C]link+000270 (??, ??)
[000037D8].sys_call+000000 ()
[10000270]main+000098 (0000000C, 2FF229A4)
[10000174].__start+00004C ()
KDB(6)> vmwait vmmdseg+69C9C74 display waiting channel
VMM Wait Info
Waiting on transaction block number 00000057
KDB(6)> tblk 87 display transaction block
  @tblk[87] vmmdseg +69C9C3C
logtid.... 002C77CF next...... 00000064 tid....... 00000057 flag...... 00000000
cpn....... 00000000 ceor...... 00000000 cxor...... 00000000 csn....... 00000000
waitsid... 00000000 waitline.. 00000000 locker.... 00000000 lsidx..... 00000AB3
logage.... 00B71704 gcwait.... FFFFFFFF waitors... E60D0F80 cqnext.... 00000000

ames Subcommand

The ames subcommand prints the specified process address map.

example:

KDB(4)> ames display current process address map
VMM AMEs
Select the ame to display by:
 1) current process
 2) specified process
Enter your choice: 1 current process

VMM address map, address BADCD23C

previous entry      (vme_prev)        : BADCC9FC
next entry          (vme_next)        : BADCC9FC
minimum offset      (min_offset)      : 30000000
maximum offset      (max_offset)      : D0000000
number of entries   (nentries)        : 00000001
size                (size)            : 00001000
reference count     (ref_count)       : 00000001
hint                (hint)            : BADCC9FC
first free hint     (first_free)      : BADCC9FC
entries pageable    (entries_pageable): 00000000

VMM map entry, address BADCC9FC

> copy-on-write
> needs-copy
previous entry      (vme_prev)      : BADCD23C
next entry          (vme_next)      : BADCD23C
start address       (vme_start)     : 60000000
end address         (vme_end)       : 60001000
object (vnode ptr)  (object)        : 09D7EB88
page num in object  (obj_pno)       : 00000000
cur protection      (protection)    : 00000003
max protection      (max_protection): 00000007
inheritance         (inheritance)   : 00000001
wired_count         (wired_count)   : 00000000
source sid          (source_sid)    : 0000272A
mapping sid         (mapping_sid)   : 000040B4
paging sid          (paging_sid)    : 000029CE
original page num   (orig_obj_pno)  : 00000000
xmem attach count   (xmattach_count): 00000000
KDB(4)> scb 2 display mapping sid
Enter the sid (in hex): 000040B4 sid value

VMM SCB Addr B6A1384C Index 000010B4 of 00003A2F  Segment ID: 000040B4

MAPPING SEGMENT
ame start address      (start): 60000000
ame hint               (ame)  : BADCC9FC

segment info bits        (_sibits) : 10000000
default storage key      (_defkey) : 0
> (_segtype)..... mapping segment
> (_segtype)..... segment is valid
next free list/mmap cnt  (free)    : 00000001
non-fblu pageout count   (npopages): 0000
xmem attach count        (xmemcnt) : 0000
address of XPT root      (vxpto)   : 00000000
pages in real memory     (npages)  : 00000000
page frame at head       (sidlist) : FFFFFFFF
max assigned page number (maxvpn)  : FFFFFFFF
lock                     (lock)    : E8038520

zproc Subcommand

The zproc subcommand prints the VMM zeroing kproc.

example:

KDB(1)> zproc display VMM zeroing kproc

VMM zkproc pid = 63CA  tid = 63FB
Current queue info
        Queue resides at 0x0009E3E8 with 10 elements
        Requests    16800    processed    16800     failed        0
        Elements
              sid      pno      npg      pno      npg 
        0 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        1 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        2 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        3 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        4 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        5 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        6 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        7 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        8 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000
        9 - 007FFFFF FFFFFFFF 00000000 FFFFFFFF 00000000

vmlog Subcommand

The vmlog subcommand prints the current VMM error log entry.

example:

KDB(0)> vmlog display VMM error log entry
Most recent VMM errorlog entry
Error id               =  DSI_PROC        
Exception DSISR/ISISR  =  40000000
Exception srval        =  007FFFFF
Exception virt addr    =  FFFFFFFF
Exception value        =  0000000E
KDB(0)> dr iar display current instruction
iar   : 01913DF0
01913DF0     lwz    r0,0(r3)            r0=00001030,0(r3)=FFFFFFFF
KDB(0)>

vrld Subcommand

The vrld subcommand prints the VMM reload xlate table. This information is only used on SMP POWER PC machine, to prevent VMM reload dead-lock.

example:

KDB(0)> vrld

freepno: 0A, initobj: 0008DAA8, *initobj: FFFFFFFF
   
[00] sid: 00000000, anch: 00
  {00} spno:00000000, epno:00000097, nfr:00000000, next:01
  {01} spno:00000098, epno:000000AB, nfr:00000098, next:02
  {02} spno:FFFFFFFF, epno:000001F6, nfr:000001DD, next:03
  {03} spno:000001F7, epno:000001FA, nfr:000001F7, next:04
  {04} spno:0000038C, epno:000003E3, nfr:00000323, next:FF

[01] sid: 00000041, anch: 06
  {06} spno:00003400, epno:0000341F, nfr:000006EF, next:05
  {05} spno:00003800, epno:00003AFE, nfr:000003F0, next:08
  {08} spno:00006800, epno:00006800, nfr:0000037C, next:07
  {07} spno:00006820, epno:00006820, nfr:0000037B, next:09
  {09} spno:000069C0, epno:000069CC, nfr:0000072F, next:FF

[02] sid: FFFFFFFF, anch: FF

[03] sid: FFFFFFFF, anch: FF

KDB(0)>

ipc Subcommand

The ipc subcommand reports interprocess communication facility information.

example:

KDB(0)> ipc
IPC info
Select the display:
 1) Message Queues
 2) Shared Memory
 3) Semaphores
Enter your choice: 1
 1) all msqid_ds
 2) select one msqid_ds
 3) struct msg
Enter your choice: 1
Message Queue id 00000000 @ 019E6988
uid........... 00000000 gid........... 00000009
cuid.......... 00000000 cgid.......... 00000009
mode.......... 000083B0 seq........... 0000
key........... 4107001C msg_first..... 00000000
msg_last...... 00000000 msg_cbytes.... 00000000
msg_qnum...... 00000000 msg_qbytes.... 0000FFFF
msg_lspid..... 00000000 msg_lrpid..... 00000000
msg_stime..... 00000000 msg_rtime..... 00000000
msg_ctime..... 3250C406 msg_rwait..... 0000561D
msg_wwait..... FFFFFFFF msg_reqevents. 0000
Message Queue id 00000001 @ 019E69D8
uid........... 00000000 gid........... 00000000
cuid.......... 00000000 cgid.......... 00000000
mode.......... 000083B6 seq........... 0000
key........... 77020916 msg_first..... 00000000
msg_last...... 00000000 msg_cbytes.... 00000000
msg_qnum...... 00000000 msg_qbytes.... 0000FFFF
msg_lspid..... 00000000 msg_lrpid..... 00000000
msg_stime..... 00000000 msg_rtime..... 00000000
msg_ctime..... 3250C40B msg_rwait..... 00006935
msg_wwait..... FFFFFFFF msg_reqevents. 0000

lockanch Subcommand

The lka subcommand prints VMM lock anchor. The tblk subcommand prints the specified transaction block.

example:

KDB(4)> lka display VMM lock anchor

VMM LOCKANCH vmmdseg +69C8654

nexttid................ : 003AB65A
freetid................ : 0000009A
maxtid................. : 000000B8
lwptr.................. : BEDCD000
freelock............... : 0000027B
morelocks.............. : BEDD4000
syncwait............... : 00000000
tblkwait............... : 00000000
freewait............... : 00000000
  @tblk[1] vmmdseg +69C86BC
logtid.... 003AB611 next...... 000002CF tid....... 00000001 flag...... 00000000
cpn....... 00000000 ceor...... 00000000 cxor...... 00000000 csn....... 00000000
waitsid... 00006A78 waitline.. 00000009 locker.... 00000015 lsidx..... 0000096C
logage.... 00B84FEC gcwait.... FFFFFFFF waitors... 00000000 cqnext.... 00000000
  @tblk[2] vmmdseg +69C86FC
logtid.... 003AB61A next...... 00000000 tid....... 00000002 flag...... 00000000
cpn....... 00000000 ceor...... 00000000 cxor...... 00000000 csn....... 00000000
waitsid... 00000000 waitline.. 00000000 locker.... 00000000 lsidx..... 0000096C
logage.... 00B861B8 gcwait.... FFFFFFFF waitors... 00000000 cqnext.... 00000000
  @tblk[3] vmmdseg +69C873C  tblk[3].cqnext vmmdseg +69C8D3C
logtid.... 003AB625 next...... 0000010D tid....... 00000003 flag...... 00000007
cpn....... 00000B8B ceor...... 00000198 cxor...... 37A17C95 csn....... 00000342
waitsid... 00000000 waitline.. 00000000 locker.... 00000000 lsidx..... 0000096C
logage.... 00B2AFC8 gcwait.... 00031825 waitors... E6012300 cqnext.... B69C8D3C
flag...... QUEUE READY COMMIT
  @tblk[4] vmmdseg +69C877C
logtid.... 003AB649 next...... 00000301 tid....... 00000004 flag...... 00000000
cpn....... 00000000 ceor...... 00000000 cxor...... 00000000 csn....... 00000000
waitsid... 00000000 waitline.. 00000000 locker.... 00000000 lsidx..... 0000096C
logage.... 00B35FB8 gcwait.... FFFFFFFF waitors... 00000000 cqnext.... 00000000
  @tblk[5] vmmdseg +69C87BC
logtid.... 003AB418 next...... 00000000 tid....... 00000005 flag...... 00000000
cpn....... 00000000 ceor...... 00000000 cxor...... 00000000 csn....... 00000000
waitsid... 00007E7D waitline.. 00000014 locker.... 0000002D lsidx..... 0000096C
logage.... 00B46244 gcwait.... FFFFFFFF waitors... 00000000 cqnext.... 00000000
  @tblk[6] vmmdseg +69C87FC
logtid.... 003AB5AD next...... 0000003D tid....... 00000006 flag...... 00000000
cpn....... 00000000 ceor...... 00000000 cxor...... 00000000 csn....... 00000000
waitsid... 00007E7D waitline.. 0000001C locker.... 00000046 lsidx..... 0000096C
logage.... 00B2BF9C gcwait.... FFFFFFFF waitors... E603CE40 cqnext.... 00000000
  @tblk[7] vmmdseg +69C883C
logtid.... 003AB1EC next...... 000001A3 tid....... 00000007 flag...... 00000000
cpn....... 00000000 ceor...... 00000000 cxor...... 00000000 csn....... 00000000
waitsid... 00000000 waitline.. 00000000 locker.... 00000000 lsidx..... 0000096C
logage.... 00B11F74 gcwait.... FFFFFFFF waitors... 00000000 cqnext.... 00000000
(4)> more (^C to quit) ? 

lockhash Subcommand

The lkh subcommand prints VMM lock hash list.

example:

KDB(4)> lkh display VMM lock hash list
                 BUCKET HEAD     COUNT

vmmdseg +69CC67C    1   00000144     3
vmmdseg +69CC680    2   0000019D     3
vmmdseg +69CC684    3   0000028E     2
vmmdseg +69CC688    4   00000179     2
vmmdseg +69CC68C    5   00000275     4
vmmdseg +69CC690    6   00000249     1
vmmdseg +69CC694    7   000000D4     2
vmmdseg +69CC698    8   00000100     2
vmmdseg +69CC69C    9   0000005E     2
vmmdseg +69CC6A0   10   00000171     2
vmmdseg +69CC6A4   11   00000245     2
vmmdseg +69CC6AC   13   00000136     2
vmmdseg +69CC6B4   15   000002F1     3
vmmdseg +69CC6B8   16   00000048     1
vmmdseg +69CC6BC   17   00000344     2
vmmdseg +69CC6C4   19   000001E9     2
vmmdseg +69CC6C8   20   0000021C     4
vmmdseg +69CC6D0   22   00000239     1
vmmdseg +69CC6D4   23   00000008     2
vmmdseg +69CC6D8   24   00000304     2
vmmdseg +69CC6DC   25   00000228     6
vmmdseg +69CC6E8   28   0000008A     2
vmmdseg +69CC6EC   29   000002F8     3
vmmdseg +69CC6F0   30   0000005F     1
vmmdseg +69CC6F4   31   000001FB     1
vmmdseg +69CC6FC   33   00000107     1
vmmdseg +69CC700   34   0000032A     2
vmmdseg +69CC704   35   00000326     1
vmmdseg +69CC708   36   0000006B     2
vmmdseg +69CC70C   37   000002CF     1
vmmdseg +69CC710   38   00000034     1
vmmdseg +69CC718   40   000000CC     2
vmmdseg +69CC71C   41   000001A4     1
vmmdseg +69CC728   44   000000C5     2
vmmdseg +69CC72C   45   000001C8     1
vmmdseg +69CC730   46   00000075     3
vmmdseg +69CC734   47   00000347     2
vmmdseg +69CC738   48   000001C0     2
vmmdseg +69CC73C   49   00000321     4
vmmdseg +69CC740   50   0000033C     3
vmmdseg +69CC744   51   00000201     3
vmmdseg +69CC750   54   000002CE     3
vmmdseg +69CC754   55   00000325     1
vmmdseg +69CC758   56   00000263     2
vmmdseg +69CC75C   57   0000014D     3
vmmdseg +69CC760   58   000001FE     6
...
KDB(4)> lkh 58 display VMM lock hash list 58
HASH ENTRY( 58): B69CC760
                          NEXT   TIDNXT    SID PAGE  TID FLAGS

 510 vmmdseg +EDD0FC0      695      445 0061BA 0103 0013 WRITE
 695 vmmdseg +EDD26E0      478      817 007E7D 00C4 000C WRITE FREE
 478 vmmdseg +EDD0BC0      669      778 006A78 00C1 009E WRITE FREE
 669 vmmdseg +EDD23A0      449      204 00326E 0057 004C WRITE
 449 vmmdseg +EDD0820      593      782 00729E 0527 0007 WRITE BIGALLOC
 593 vmmdseg +EDD1A20        0      815 00729E 0127 0007 WRITE BIGALLOC

lockword Subcommand

The lkw subcommand prints VMM lock words.

example:

KDB(4)> lkw display VMM lock words
                          NEXT   TIDNXT    SID PAGE  TID FLAGS

   0 vmmdseg +EDCD000        0        0 000000 0000 0000
   1 vmmdseg +EDCD020      620      679 00729E 0104 004C WRITE FREE BIGALLOC
   2 vmmdseg +EDCD040      365      460 00729E 0169 00B7 WRITE FREE BIGALLOC
   3 vmmdseg +EDCD060      222      650 00729E 0163 00B7 WRITE FREE BIGALLOC
   4 vmmdseg +EDCD080      501 BEDCD140 0025A3 0000 0188
   5 vmmdseg +EDCD0A0      748      115 00729E 0557 0025 WRITE FREE BIGALLOC
   6 vmmdseg +EDCD0C0      145      534 0061BA 0103 0046 WRITE FREE
   7 vmmdseg +EDCD0E0       79      586 006038 0080 0024 WRITE FREE
   8 vmmdseg +EDCD100       97      439 00224A 005C 0091 WRITE FREE
   9 vmmdseg +EDCD120       38       33 00729E 047F 00B7 WRITE FREE BIGALLOC
  10 vmmdseg +EDCD140        4 BEDD1820 0025A3 0000 0184
  11 vmmdseg +EDCD160 BEDCDD20 BEDCEA40 006B1B 0000 0070
  12 vmmdseg +EDCD180      684      440 00729E 0062 004C WRITE FREE BIGALLOC
  13 vmmdseg +EDCD1A0      736      402 00729E 0467 00B7 WRITE FREE BIGALLOC
  14 vmmdseg +EDCD1C0        0 BEDD3300 006B1B 0000 008C
  15 vmmdseg +EDCD1E0        0 BEDCEAE0 006B1B 0000 0004
  16 vmmdseg +EDCD200 BEDCDAE0 BEDD0840 007B3B 0000 0020
  17 vmmdseg +EDCD220      109       78 001E85 0065 005D WRITE FREE
  18 vmmdseg +EDCD240        0        0 005A74 007C 00A3 WRITE
  19 vmmdseg +EDCD260      563      797 00729E 0511 004C WRITE FREE BIGALLOC
  20 vmmdseg +EDCD280        0 BEDCEB20 002D89 0000 001C
  21 vmmdseg +EDCD2A0        0        0 000D86 0000 0047 WRITE
  22 vmmdseg +EDCD2C0        0 BEDD1460 007B3B 0000 0034
  23 vmmdseg +EDCD2E0      505      234 00729E 009E 0007 WRITE BIGALLOC
  24 vmmdseg +EDCD300       30      614 00729E 0221 00B7 WRITE FREE BIGALLOC
  25 vmmdseg +EDCD320      660      244 007E7D 0101 0074 WRITE FREE
  26 vmmdseg +EDCD340      143      821 00729E 013C 00B7 WRITE FREE BIGALLOC
  27 vmmdseg +EDCD360        0      593 00729E 028D 0007 WRITE BIGALLOC
  28 vmmdseg +EDCD380        0 BEDD06A0 006B1B 0000 00B4
  29 vmmdseg +EDCD3A0      701      407 00729E 016D 00B7 WRITE FREE BIGALLOC
  30 vmmdseg +EDCD3C0       75       24 00729E 0392 00B7 WRITE FREE BIGALLOC
  31 vmmdseg +EDCD3E0        0 BEDD0E00 006B1B 0000 0088
  32 vmmdseg +EDCD400      477 BEDD1300 0025A3 0000 0144
  33 vmmdseg +EDCD420        9      151 00729E 04D5 00B7 WRITE FREE BIGALLOC
  34 vmmdseg +EDCD440      178      589 001221 0075 0063 WRITE FREE
  35 vmmdseg +EDCD460      304      794 00729E 03D3 0025 WRITE FREE BIGALLOC
  36 vmmdseg +EDCD480      314 BEDCFBA0 0025A3 0000 0150
  37 vmmdseg +EDCD4A0      682      149 006038 0082 00A1 WRITE FREE
  38 vmmdseg +EDCD4C0      555        9 00729E 021E 00B7 WRITE FREE BIGALLOC
  39 vmmdseg +EDCD4E0      218      322 00729E 0416 00B7 WRITE FREE BIGALLOC
  40 vmmdseg +EDCD500      207       66 006A78 005A 0030 WRITE FREE
  41 vmmdseg +EDCD520      244      307 005376 0000 0074 WRITE FREE
  42 vmmdseg +EDCD540      549      626 00729E 0420 004C WRITE FREE BIGALLOC
  43 vmmdseg +EDCD560      155      830 00619C 0000 0081 WRITE FREE
  44 vmmdseg +EDCD580      118 BEDCFA80 00499A 0000 016C
  45 vmmdseg +EDCD5A0 BEDD1280 BEDD3160 006B1B 0000 0068
...
KDB(4)> lkw 45 display VMM lock word 45
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
  45 vmmdseg +EDCD5A0 BEDD1280 BEDD3160 006B1B 0000 0068
bits........... 1000154A log............ 1000154B
home........... 10001540 extmem......... 100015C0
next........... BEDD1280 vmmdseg +EDD1280
tidnxt......... BEDD3160 vmmdseg +EDD3160
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 779 vmmdseg +EDD3160 BEDCE660 BEDD0C20 006B1B 0000 0064
bits........... 10001480 log............ 10001483
home........... 10001500 extmem......... 10001501
next........... BEDCE660 vmmdseg +EDCE660
tidnxt......... BEDD0C20 vmmdseg +EDD0C20
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 481 vmmdseg +EDD0C20 BEDCFAA0 BEDD1FA0 006B1B 0000 0060
bits........... 10001484 log............ 10001485
home........... 10001486 extmem......... 10001482
next........... BEDCFAA0 vmmdseg +EDCFAA0
tidnxt......... BEDD1FA0 vmmdseg +EDD1FA0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 637 vmmdseg +EDD1FA0 BEDD2200 BEDD1220 006B1B 0000 0040
bits........... 100012A3 log............ 100012A4
home........... 10001299 extmem......... 1000131C
next........... BEDD2200 vmmdseg +EDD2200
tidnxt......... BEDD1220 vmmdseg +EDD1220
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 529 vmmdseg +EDD1220 BEDCF980 BEDD31A0 006B1B 0000 0028
bits........... 10001187 log............ 10001189
home........... 100011A3 extmem......... 1000118B
next........... BEDCF980 vmmdseg +EDCF980
tidnxt......... BEDD31A0 vmmdseg +EDD31A0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 781 vmmdseg +EDD31A0 BEDCD2C0 BEDCFB40 006B1B 0000 0014
bits........... 10001166 log............ 10001167
home........... 1000115A extmem......... 10001157
next........... BEDCD2C0 vmmdseg +EDCD2C0
tidnxt......... BEDCFB40 vmmdseg +EDCFB40
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 346 vmmdseg +EDCFB40        0 BEDCFFC0 006B1B 0000 0058
bits........... 100013C1 log............ 100013C2
home........... 100013C3 extmem......... 10001400
tidnxt......... BEDCFFC0 vmmdseg +EDCFFC0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 382 vmmdseg +EDCFFC0        0 BEDD15C0 006B1B 0000 005C
bits........... 10001403 log............ 10001488
home........... 10001489 extmem......... 1000148A
tidnxt......... BEDD15C0 vmmdseg +EDD15C0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 558 vmmdseg +EDD15C0        0 BEDCFC40 006B1B 0000 0050
(4)> more (^C to quit) ? 
bits........... 10001386 log............ 10001387
home........... 10001389 extmem......... 1000138C
tidnxt......... BEDCFC40 vmmdseg +EDCFC40
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 354 vmmdseg +EDCFC40        0 BEDD36E0 006B1B 0000 0054
bits........... 1000138A log............ 1000138B
home........... 10001382 extmem......... 10001385
tidnxt......... BEDD36E0 vmmdseg +EDD36E0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 823 vmmdseg +EDD36E0        0 BEDD1D20 006B1B 0000 0010
bits........... 10001548 log............ 10001546
home........... 10001544 extmem......... 10001547
tidnxt......... BEDD1D20 vmmdseg +EDD1D20
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 617 vmmdseg +EDD1D20        0 BEDD2D40 006B1B 0000 0030
bits........... 100011A7 log............ 100011FC
home........... 100011FD extmem......... 100011E8
tidnxt......... BEDD2D40 vmmdseg +EDD2D40
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 746 vmmdseg +EDD2D40        0 BEDD16A0 006B1B 0000 000C
bits........... 10001553 log............ 10001554
home........... 10001545 extmem......... 10001541
tidnxt......... BEDD16A0 vmmdseg +EDD16A0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 565 vmmdseg +EDD16A0        0 BEDD2C20 006B1B 0000 0020
bits........... 10001159 log............ 10001141
home........... 1000115D extmem......... 1000115C
tidnxt......... BEDD2C20 vmmdseg +EDD2C20
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 737 vmmdseg +EDD2C20        0 BEDCDAE0 006B1B 0000 0048
bits........... 1000130B log............ 1000131D
home........... 1000131A extmem......... 1000131B
tidnxt......... BEDCDAE0 vmmdseg +EDCDAE0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
  87 vmmdseg +EDCDAE0        0 BEDD2E80 006B1B 0000 0000
bits........... 1000108F log............ 10001110
home........... 1000114E extmem......... 1000114F
tidnxt......... BEDD2E80 vmmdseg +EDD2E80
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 756 vmmdseg +EDD2E80        0 BEDD0960 006B1B 0000 004C
bits........... 1000132B log............ 1000132C
home........... 10001342 extmem......... 10001388
tidnxt......... BEDD0960 vmmdseg +EDD0960
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 459 vmmdseg +EDD0960        0 BEDD1140 006B1B 0000 0034
bits........... 100011CF log............ 100011E2
home........... 100011D0 extmem......... 100011D1
tidnxt......... BEDD1140 vmmdseg +EDD1140
(4)> more (^C to quit) ? 
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 522 vmmdseg +EDD1140        0 BEDCE580 006B1B 0000 0024
bits........... 10001188 log............ 10001184
home........... 10001186 extmem......... 1000118A
tidnxt......... BEDCE580 vmmdseg +EDCE580
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 172 vmmdseg +EDCE580        0 BEDCEC60 006B1B 0000 001C
bits........... 100011A0 log............ 1000119E
home........... 100011F1 extmem......... 100011F2
tidnxt......... BEDCEC60 vmmdseg +EDCEC60
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 227 vmmdseg +EDCEC60        0 BEDCD1E0 006B1B 0000 0008
bits........... 10001549 log............ 10001543
home........... 10001542 extmem......... 10001552
tidnxt......... BEDCD1E0 vmmdseg +EDCD1E0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
  15 vmmdseg +EDCD1E0        0 BEDCEAE0 006B1B 0000 0004
bits........... 10001155 log............ 10001173
home........... 10001140 extmem......... 10001156
tidnxt......... BEDCEAE0 vmmdseg +EDCEAE0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 215 vmmdseg +EDCEAE0        0 BEDCE0E0 006B1B 0000 003C
bits........... 100011E4 log............ 100011E5
home........... 10001297 extmem......... 10001298
tidnxt......... BEDCE0E0 vmmdseg +EDCE0E0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 135 vmmdseg +EDCE0E0        0 BEDCE440 006B1B 0000 0044
bits........... 10001318 log............ 1000133B
home........... 1000133C extmem......... 1000130F
tidnxt......... BEDCE440 vmmdseg +EDCE440
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 162 vmmdseg +EDCE440        0 BEDCF160 006B1B 0000 002C
bits........... 100011A4 log............ 100011A5
home........... 100011A6 extmem......... 10001185
tidnxt......... BEDCF160 vmmdseg +EDCF160
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 267 vmmdseg +EDCF160        0 BEDCF2E0 006B1B 0000 0038
bits........... 100011EA log............ 100011EB
home........... 100011C8 extmem......... 100011D5
tidnxt......... BEDCF2E0 vmmdseg +EDCF2E0
                          NEXT   TIDNXT    SID PAGE  TID FLAGS
 279 vmmdseg +EDCF2E0        0        0 006B1B 0000 0018
bits........... 10001117 log............ 10001168
home........... 10001169 extmem......... 10001158
KDB(4)>

vmdmap Subcommand

The vmdmap subcommand prints VMM disk maps. Argument could be a PDT index. Default is all paging and file system disk map. To look at more, it is necessary to initialize the segment register 13 with the corresponding srval.

example:

KDB(1)> vmdmap display VMM disk maps
PDT slot [0000] Vmdmap [D0000000] dmsrval [00000C03] <--- paging space 0
mapsize................00007400 freecnt................00004D22
agsize.................00000800 agcnt..................00000007
totalags...............0000000F lastalloc..............00003384
maptype................00000003 clsize.................00000001
clmask.................00000080 version................00000000
agfree@................D0000030 tree@..................D00000A0
spare1@................D00001F4 mapsorsummary@.........D0000200
PDT slot [0001] Vmdmap [D0800000] dmsrval [00000C03] <--- paging space 1
mapsize................00005400 freecnt................00003CF6
agsize.................00000800 agcnt..................00000007
totalags...............0000000B lastalloc..............000047F4
maptype................00000003 clsize.................00000001
clmask.................00000080 version................00000000
agfree@................D0800030 tree@..................D08000A0
spare1@................D08001F4 mapsorsummary@.........D0800200
PDT slot [0002] Vmdmap [D1000000] dmsrval [00000C03] <--- paging space 2
mapsize................00005800 freecnt................0000418C
agsize.................00000800 agcnt..................00000007
totalags...............0000000B lastalloc..............000047A8
maptype................00000003 clsize.................00000001
clmask.................00000080 version................00000000
agfree@................D1000030 tree@..................D10000A0
spare1@................D10001F4 mapsorsummary@.........D1000200
PDT slot [0011] Vmdmap [D0000000] dmsrval [00003C2F] <--- file system
mapsize................00006400 freecnt................000057CC
agsize.................00000800 agcnt..................00000007
totalags...............0000000D lastalloc..............00001412
maptype................00000001 clsize.................00000008
clmask.................000000FF version................00000000
agfree@................D0000030 tree@..................D00000A0
spare1@................D00001F4 mapsorsummary@.........D0000200
PDT slot [0013] Vmdmap [D0000000] dmsrval [00005455] <--- file system
mapsize................00000800 freecnt................0000030A
agsize.................00000400 agcnt..................00000002
totalags...............00000002 lastalloc..............0000011A
maptype................00000001 clsize.................00000020
clmask.................00000000 version................00000001
agfree@................D0000030 tree@..................D00000A0
spare1@................D00001F4 mapsorsummary@.........D0000200
...
KDB(1)> vmdmap 21 display VMM disk map slot 0x21
PDT slot [0021] Vmdmap [D0000000] dmsrval [000075BC]
mapsize................00000800 freecnt................000006B4
agsize.................00000800 agcnt..................00000001
totalags...............00000001 lastalloc..............00000060
maptype................00000001 clsize.................00000008
clmask.................000000FF version................00000000
agfree@................D0000030 tree@..................D00000A0
spare1@................D00001F4 mapsorsummary@.........D0000200

vmlocks Subcommand

The vl subcommand prints VMM spin locks.

example:

KDB(1)> vl display VMM spin locks

GLOBAL LOCKS

pmap  lock at @ 00000000 FREE
vmker lock at @ 0009A1AC LOCKED by thread: 0039AED
pdt   lock at @ B69C84D4 FREE
vmap  lock at @ B69C8514 FREE
ame   lock at @ B69C8554 FREE
rpt   lock at @ B69C8594 FREE
alloc lock at @ B69C85D4 FREE
apt   lock at @ B69C8614 FREE
lw    lock at @ B69C8678 FREE

SCOREBOARD

scoreboard cpu 0 :
hint.....................00000000
00: empty
01: empty
02: empty
03: empty
04: empty
05: empty
06: empty
07: empty
scoreboard cpu 1 :
hint.....................00000000
00: lock@ B6A31E60  lockword E804F380 
01: empty
02: empty
03: empty
04: empty
05: empty
06: empty
07: empty
scoreboard cpu 2 :
hint.....................00000002
00: lock@ B6A2851C  lockword E8048B60 
01: empty
02: empty
03: empty
04: empty
05: empty
06: empty
07: empty
scoreboard cpu 3 :
hint.....................00000005
00: empty
(1)> more (^C to quit) ? 
01: empty
02: empty
03: empty
04: lock@ B6AB04D8  lockword E8096E20 
05: lock@ B69F2E54  lockword E8022760 
06: empty
07: empty
scoreboard cpu 4 :
hint.....................00000000
00: lock@ B6AAC380  lockword E8095740 
01: empty
02: empty
03: empty
04: empty
05: empty
06: empty
07: empty
scoreboard cpu 5 :
hint.....................00000001
00: lock@ B6A7BBE0  lockword E805CC40 
01: lock@ B69CCD84  lockword E8000C80 
02: empty
03: empty
04: empty
05: empty
06: empty
07: empty
scoreboard cpu 6 :
hint.....................00000000
00: empty
01: empty
02: empty
03: empty
04: empty
05: empty
06: empty
07: empty
scoreboard cpu 7 :
hint.....................00000001
00: empty
01: lock@ B6AA8FF8  lockword E807CA00 
02: empty
03: empty
04: empty
05: empty
06: empty
07: empty
KDB(1)> 

[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]