scsi_vhci - SCSI virtual host controller interconnect driver


     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

     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

          /dev/rdsk/c4t200000203709C3F5d0s0 -> ../../devices/scsi_vhci/
          /dev/rdsk/c4t200000203709C3F5d0s7 -> ../../devices/scsi_vhci/

     The following is an example of a system with a T300  storage

          /dev/rdsk/c1t60020F200000033939C2C2B60008D4AEd0s0 -> ../../devices/
          /dev/rdsk/c1t60020F200000033939A2C2B60008D4AEd0s7 -> ../../devices/

     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


          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

     The  scsi_vhci driver supports the standard  functions  pro-
     vided by the SCSA interface.

     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

     A sample configuration file follows:

                        # mpxio Global enable/disable configuration
                        # possible values are mpxio-disable="no" or mpxio-disable="yes"
                        # Load Balancing global configuration
                        # possible values are load-balance="none" or 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'


           64-bit ELF kernel  module

           Access system console

           Driver configuration file


     See attributes(5) for descriptions of the  following  attri-

    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | Architecture                | SPARC                       |
    | Availability                | SUNWmdi,  SUNWmdix (64 bit) |


     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