Discussion:
How to enforce probing of all disks?
Jim Klimov
2013-03-22 15:20:20 UTC
Permalink
Hello all,

I have a kind of lame question here: how can I force the system (OI)
to probe all the HDD controllers and disks that it can find, and be
certain that it has searched everywhere for disks?

My remotely supported home-NAS PC was unavailable for a while, and
a friend rebooted it for me from a LiveUSB image with SSH (oi_148a).
I can see my main pool disks, but not the old boot (rpool) drive.
Meaning, that it does not appear in "zpool import" nor in "format"
outputs. While it is possible that it has finally kicked the bucket,
and that won't really be unexpected, I'd like to try and confirm.

For example, it might fail to spin up or come into contact with
the SATA cable initially - but subsequent probing of the same
controller might just find it. Happened before, too - though
via a reboot and full POST... The friend won't be available for a
few days, and there's no other remote management nor inspection
facility for this box, so I'd like to probe from within OI as much
as I can. Should be an educational quest, too ;)

# cfgadm -al
Ap_Id Type Receptacle Occupant
Condition
Slot36 sata/hp connected configured ok
sata0/0::dsk/c5t0d0 disk connected configured ok
sata0/1::dsk/c5t1d0 disk connected configured ok
sata0/2::dsk/c5t2d0 disk connected configured ok
sata0/3::dsk/c5t3d0 disk connected configured ok
sata0/4::dsk/c5t4d0 disk connected configured ok
sata0/5::dsk/c5t5d0 disk connected configured ok
sata1/0 sata-port empty unconfigured ok
sata1/1 sata-port empty unconfigured ok
... (USB reports follow)

# devfsadm -Cv -- nothing new found

Nothing of interest in dmesg...

# scanpci -v | grep -i ata
Intel Corporation 82801HR/HO/HH (ICH8R/DO/DH) 6 port SATA AHCI Controller
JMicron Technology Corp. JMB362/JMB363 Serial ATA Controller
JMicron Technology Corp. JMB362/JMB363 Serial ATA Controller

# prtconf -v | grep -i ata
name='ata-dma-enabled' type=string items=1
name='atapi-cd-dma-enabled' type=string items=1
value='ADATA USB Flash Drive'
value='ADATA'
value='ADATA'
name='sata' type=int items=1 dev=none
value='SATA AHCI 1.0 Interface'
dev_link=/dev/cfg/sata1/0
dev_link=/dev/cfg/sata1/1
name='ata-options' type=int items=1
value='atapi'
name='sata' type=int items=1 dev=none
value='\_SB_.PCI0.SATA'
value='SATA AHCI 1.0 Interface'
dev_link=/dev/cfg/sata0/0
dev_link=/dev/cfg/sata0/1
dev_link=/dev/cfg/sata0/2
dev_link=/dev/cfg/sata0/3
dev_link=/dev/cfg/sata0/4
dev_link=/dev/cfg/sata0/5

value='id1,***@SATA_____ST2000DL003-9VT1____________5YD217ZL'
name='sata-phy' type=int items=1

value='scsiclass,00.vATA.pST2000DL003-9VT1.rCC32' +
'scsiclass,00.vATA.pST2000DL003-9VT1' + 'scsiclass,00' + 'scsiclass'

value='id1,***@SATA_____ST2000DL003-9VT1____________5YD1XWWB'
name='sata-phy' type=int items=1

value='scsiclass,00.vATA.pST2000DL003-9VT1.rCC32' +
'scsiclass,00.vATA.pST2000DL003-9VT1' + 'scsiclass,00' + 'scsiclass'

value='id1,***@SATA_____ST2000DL003-9VT1____________5YD1VLKC'
name='sata-phy' type=int items=1

value='scsiclass,00.vATA.pST2000DL003-9VT1.rCC32' +
'scsiclass,00.vATA.pST2000DL003-9VT1' + 'scsiclass,00' + 'scsiclass'

value='id1,***@SATA_____ST2000DL003-9VT1____________5YD21QZL'
name='sata-phy' type=int items=1

value='scsiclass,00.vATA.pST2000DL003-9VT1.rCC32' +
'scsiclass,00.vATA.pST2000DL003-9VT1' + 'scsiclass,00' + 'scsiclass'

value='id1,***@SATA_____ST2000DL003-9VT1____________5YD24GCA'
name='sata-phy' type=int items=1

value='scsiclass,00.vATA.pST2000DL003-9VT1.rCC32' +
'scsiclass,00.vATA.pST2000DL003-9VT1' + 'scsiclass,00' + 'scsiclass'

value='id1,***@SATA_____ST2000DL003-9VT1____________5YD24GDG'
name='sata-phy' type=int items=1

value='scsiclass,00.vATA.pST2000DL003-9VT1.rCC32' +
'scsiclass,00.vATA.pST2000DL003-9VT1' + 'scsiclass,00' + 'scsiclass'


This only sees the six ST2000DL003 drives of the main data pool,
and the LiveUSB flash drive...

So - is it possible to try reinitializing and locating connections to
the disk on a commodity motherboard (i.e. no lsiutil, IPMI and such)
using only OI, without rebooting the box?

The pools are not imported, so if I can detach and reload the sata
drivers - I might try that, but I am stumped at how would I do that.
Funny, after all the theoretical advice I dispense, the practice has
a new trick for me to learn and stay humble and almost ashamed ;)

Thanks for pointers,
//Jim

Loading...