Discovering SCSI Tape Devices
The SCSI target driver for tape devices, st
, permits only one concurrent
open
. Thus, a service domain configuration that has two or more
vsan
instances that reference the same SCSI HBA initiator port issues the
following pair of messages for each vsan
instance other than the one that
successfully called open
:
vsan: WARNING: vs@7: dip(6400a921b1f8): open(/pci@3c0/pci@1/pci@0/pci@7/SUNW,qlc@0/fp@0,2/st@w200000110d211500,2) err(16) vsan: WARNING: vs@7: device(6400a921b1f8) is of type TAPE; ensure all the domain's vSANs are configured correctly.
At boot time, you cannot determine which vsan
successfully calls
open
for a set of vsan
s that indirectly reference the
same tape device. This happens because the initialization of each vsan
is
independent and executes concurrently.
Use the ldm add-vsan
and ldm add-vhba
commands to specify
which vsan
is the first to open the tape devices that are reachable from
that vsan
's initiator port. Also, set the mask
attribute
of the vsan
to isolate a specific tape device within its own
vsan
.
For more information about using the mask
attribute, see Managing the Physical Devices in a Virtual Storage Area Network.
To identify the device path of the tape device that opened successfully, perform the following
commands in the guest domain. Use the ::vhba -v
command to find the entry
that corresponds to the tape device's worldwide number. Note that the device type field shows
inq_dtype(1=tape)
for a tape device. The device path in the following
example output is highlighted in boldface:
# mdb -k
> ::vhba -v
vhba_t( 640014816600 ) vhba@3
...
vhba_iport_t( 6400222b1e50 )
vhba_tport_t( 400040de0e0 ) tport_phys(w200000110d211500) flags[dirty,NEW]
...
vhba_lun_t( 400040de200 ) lun(2) vlun-id(18) wwn(naa.600110D0002115000109000001ABA60C) [NEW]
devinfo(640022b0d840) scsi_device(40000176468) scsi_inquiry(6400228bc560).inq_dtype(1=tape)
/scsi_vhci/tape@g600110d0002115000109000001aba60c
The /scsi_vhci/tape@g600110d0002115000109000001aba60c
device path shows that
Solaris Multipathing is enabled in the vhba.conf
file for the
vhba
instance that successfully opened the tape device. If Solaris
Multipathing is disabled, the device path syntax would look similar to
/virtual-devices@100/channel-devices@200/scsi@3/iport@0/tape@w200000110d211500,2
.
The following example shows how to identify the /dev
path that matches the
device path shown by the ::vhba
command. In this example, Solaris
Multipathing is enabled and the tape device is referenced by
/dev/rmt/1
:
# find /dev/rmt -ls | grep :$ ... /dev/rmt/1 -> ../../devices/scsi_vhci/tape@g600110d0002115000109000001aba60c:
If you disable Solaris Multipathing in the vhba.conf
file and reboot the
domain, the tape device is referenced by /dev/rmt/0
:
# find /dev/rmt -ls | grep :$ ... /dev/rmt/0 -> ../../devices/virtual-devices@100/channel-devices@200/scsi@3/iport@0/tape@w200000110d211500,2: