scsi_vhci(7D)
NAME
scsi_vhci - SCSI virtual host controller interconnect driver
DESCRIPTION
The scsi_vhci driver is a SCSA compliant pseudo nexus driver
that supports multipath services for fibre channel attached
SCSI-3 devices. This driver introduces a fundamental res-
tructuring of the Solaris device tree to enable a multipath
device to be represented as single device instance rather
than as an instance per physical path as in earlier Solaris
versions.
The multipath SCSI target devices managed by this driver are
identified and represented by using SCSI-3 VPD page (0x83)
as the device's unit address.
Symbolic links in /dev/[r]dsk continue to adhere to the
cNtNdNsN format. cN is the logical controller number
assigned to this driver instance. tN is the global unique
identifier (GUID) of the multipath target device (64/128
bits), represented as hexadecimal numbers.
The following is an example of a system with a A5000 storage
array:
...
/dev/rdsk/c4t200000203709C3F5d0s0 -> ../../devices/scsi_vhci/
ssd@g200000203709c3f5:a,raw
...
/dev/rdsk/c4t200000203709C3F5d0s7 -> ../../devices/scsi_vhci/
ssd@g200000203709c3f5:h,ra
...
The following is an example of a system with a T300 storage
array:
...
/dev/rdsk/c1t60020F200000033939C2C2B60008D4AEd0s0 -> ../../devices/
scsi_vhci/ssd@g60020f200000033939a2c2b60008d4ae:a,raw
...
/dev/rdsk/c1t60020F200000033939A2C2B60008D4AEd0s7 -> ../../devices/
scsi_vhci/ssd@g60020f200000033939a2c2b60008d4ae:h,raw
The scsi_vhci driver receives naming and transport services
from one or more physical HBA devices. To support multi-
pathing, a physical HBA driver must comply with the mul-
tipathing services provided by this driver. Currently, the
fcp(7D) fibre channel SCSI protocol driver is the only
driver to comply with the services provided by the scsi_vhci
driver.
Note:
Enabling this feature on an upgraded implementation may
result in a new naming scheme for multipath devices
under /dev and /devices. If this happens, older links
will be invalid and existing file systems will be
unusable.
The scsi_vhci driver supports the standard functions pro-
vided by the SCSA interface.
CONFIGURATION
The scsi_vhci driver can be configured by defining proper-
ties in the scsi_vhci.conf file. The scsi_vhci.conf file
overrides the default settings. (See driver.conf(4)).
The scsi_vhci driver supports the following properties:
_________________________________________________________________
| PROPERTY NAME | DEFAULT | POSSIBLE VALUES |
|____________________|____________________|______________________|
| mpxio-disable | no | yes or no |
|____________________|____________________|______________________|
| load-balance | round robin | none or round-robin|
|____________________|____________________|______________________|
The mpxio-disable property determines if the HBA driver
instance is attached to the mpxio framework. By default,
HBA drivers register themselves with the mpxio framework.
If the mpxio-disable property is set to value "yes," the
device tree space continues to work in the current way, that
is, SCSI target devices are created under the physical
parent node. The mpxio-disable property comprises a system
wide enable/disable. To coexist with other multipath solu-
tions, certain SCSI HBA drivers must enable/disable the
mpxio functionality on a HBA instance basis. The HBA driver
implementation manages this using properties configurable
through the driver.conf file. Please refer to the
corresponding HBA driver man page for information on how to
disable mpxio on a HBA driver instance basis.
By default, the load balance property is ON. You can glo-
bally disable it by setting the load balance string property
to "none" through the driver.conf file. The scsi_vhci
driver supports a simple round robin automatic path selec-
tion model.
Setting load balance to "round-robin" enables paths in
ONLINE state to be selected for I/O in a round robin
fashion.
A sample configuration file follows:
...
# mpxio Global enable/disable configuration
# possible values are mpxio-disable="no" or mpxio-disable="yes"
#
mpxio-disable="no";
#
# Load Balancing global configuration
# possible values are load-balance="none" or load-balance="round-robin"
#
load-balance="round-robin";
#
Sample prtconf(1M) (verbose option) output of scsi_vhci pro-
perties is shown below:
scsi_vhci, instance #0
System properties:
...
name <mpxio disable> length <3>
value 'no'
name <load balance> length <12>
value 'round-robin'
...
FILES
/kernel/drv/scsi_vhci
64-bit ELF kernel module
/kernel/drv/sparcv9/scsi_vhci
Access system console
/kernel/drv/scsi_vhci.conf
Driver configuration file
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Architecture | SPARC |
|_____________________________|_____________________________|
| Availability | SUNWmdi, SUNWmdix (64 bit) |
|_____________________________|_____________________________|
SEE ALSO
eeprom(1M), prtconf(1M), attributes(5), fcp(7D), fctl(7D),
fp(7D), ssd(7D), qlc(9F), scsi_abort(9F), scsi_ifgetcap(9F),
scsi_pkt(9S), scsi_reset(9F), scsi_transport(9F),
scsi_inquiry(9S), scsi_extended_sense(9S)
Writing Device Drivers
Small Computer System Interface-3 (SCSI-3)
Man(1) output converted with
man2html