How to decode LBOLT numbers
From Wiki-UX.info
Abstract[edit]
The following briefly explains how to decode LBOLT numbers, to reference a specific hardware. These LBOLT numbers appear most of time when the system is experiencing SCSI errors, and is logging these errors in the /var/adm/syslog/syslog.log file.
Example:
Sep 12 17:07:47 myserver vmunix: SCSI: Unexpected Disconnect -- lbolt: 54063027, dev: bc051000, io_id:5cf6050
In this case the LBOLT number to decode is bc051000 which correspond to the device that is logging the error.
How To Decode LBOLT[edit]
In order to decode this LBOLT number, is easier to split it in 5 hex sections.
0x | bc | 05 | 10 | 00 |
s1 | s2 | s3 | s4 | s5 |
s1:
- 0x = Designates the remaining as hex and is always there.
s2:
- bc = This is the hex for the MAJOR number (188) of the SCSI character device
- 1f = This is the hex for the MAJOR number (31) of the SCSI block device
The remaining numbers (051000) correspond to the MINOR nunmber for the device in hex.
s3:
- 05 = First pair of MINOR in hex. Hex 05 = Decimal 05 <-Controller number
s4:
- 10 = Third number of MINOR in hex. Hex 10 = Decimal 16 <- Target number
s5:
- 00 = Fourth number of MINOR in hex. Hex 00 = Decimal 0 <- Disk number
A quick way to find out the dsf that belongs to a LBOLT code is to drop the MAJOR number from the LBOLT error and search with the "ll" command the disks device special files.
Example:
# ll /dev/*dsk/* | grep 051000 brw-r----- 1 bin sys 31 0x051000 Jul 25 2006 /dev/dsk/c5t16d0 crw-r----- 1 bin sys 188 0x051000 Jul 25 2006 /dev/rdsk/c5t16d0