Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ scsiha(1m) — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ioconfig(1M)

scsicontrol(1M)

scsiha(7M)



scsiha(1m)                                                          scsiha(1m)



NAME
     scsiha - probe and control scsi buses

SYNOPSIS
     scsiha [-lprt] [-D debuglevel] [-L targetID|all] {bus_number | device} ...

DESCRIPTION
     scsiha is used to perform operations on fibrechannel loops of SCSI
     devices and parallel SCSI buses.

     The following options apply to both parallel SCSI and fibrechannel SCSI:

     -p   Probe for devices on the bus or loop.  On parallel SCSI buses, this
          option causes the driver to look for devices at every ID on the SCSI
          bus.  On fibrechannel SCSI loops, this option causes the driver to
          look for devices at every ID that was reported in use at the most
          recent loop initialization.  On parallel SCSI buses, when a device
          is found at lun 0, all other luns are then probed.  When devices or
          luns are not valid, a warning message may be printed on the console.
          With fibrechannel, the Report Luns SCSI command is used to determine
          which LUNs are valid.  If the Report Luns command returns error,
          only LUN 0 is assumed to be valid.

          After probing, new devices will have a controller number of "-1"
          until ioconfig -f /hw is run to update the hardware graph.

     -r   Perform a SCSI bus reset and/or reset host adapter.

          This affects all devices on that SCSI bus, causing current commands
          to be aborted, and specially set parameters to be reset, in many
          cases.  Tape drive state will be reset after this, and any tape
          operations in progress will be aborted.

          This option should therefore be used with some caution.  In very
          rare cases, it may cause a device to become unusable without a
          powercycle.  There are times when it is desired to reset devices or
          adapters that appear to be hung, however, so this function is
          provided.  Some host adapter drivers will reset the adapter as part
          of this ioctl.  Fibrechannel adapters will perform loop
          initialization, making this operation similar to the -l option,
          except that the adapter will also be reset.

     -D debuglevel
          Set the debug level in the host adapter driver.  Where supported,
          this option changes the verbosity of a given host adapter driver.
          In general, 0 is least verbose, with no specific upward limit.

     The following option only applies to some parallel SCSI adapters:

     -t   Return interesting SCSI bus and attached target parameters. Bus
          parameters include whether the bus is single-ended or differential,
          the SCSI host ID and the selection timeout. The target parameters



                                                                        Page 1





scsiha(1m)                                                          scsiha(1m)



          include whether the device is capable of operating in narrow or wide
          mode, whether it's capable of doing synchronous transfer and if so,
          what the period and offset is.

     The following options only apply to Fibrechannel SCSI adapters:

     -l   Perform loop initialization.  During loop initialization, all
          devices on the loop will attempt to acquire a target ID.  SGI
          devices will attempt to get the ID they have been selected for,
          either by settings on and position within an enclosure, or by
          dials/switches on the device.  If multiple devices have the same ID
          selection, only one device will get that ID.  Other devices will
          attempt to acquire IDs not in already in use.

          This option may have a side effect of aborting current commands
          outstanding on the adapter, so it should be used with care.  The
          disk driver will typically reissue the aborted commands, but there
          will be a performance impact while commands are reissued.



     -L targetID
          Send LIPRST to the specified device and then perform loop
          initialization.  This option is much like -l above, except that it
          also requests that the device resets itself.  Not all devices will
          honor the request.  RAID controllers typically don't while disk
          drives typically do.  This option can be used in rare cases where a
          device is not functioning properly, but is still able to complete
          loop initialization and acquire a target ID.  For example, if a
          drive gets timeouts on attempts to probe (using the -p option
          above), then this option may bring it back to working condition.  In
          this respect, the -L option can be used for reasons similar to -r on
          parallel SCSI buses.

     -L all
          This option is like the -L option directly above, except that it
          directs all devices to reset themselves.  Only devices that
          implement FC-AL-2 or later will respond to this.  This option can be
          used if a loop is malfunctioning, and it is suspected that one or
          more devices may be causing the malfunction, but it isn't known
          which.  RAID controllers typically don't honor the "self-reset"
          function of the LIPRST

          The -L options may have a side effect of aborting current commands
          outstanding on the adapter, and it if the device honors the reset
          function, outstanding commands to it will be dropped.  The disk
          driver will typically reissue the aborted commands, but there will
          be a performance impact while commands are reissued and while a
          device resets.






                                                                        Page 2





scsiha(1m)                                                          scsiha(1m)



EXAMPLES
     To reset parallel scsi bus 2, use one of these commands:

          scsiha -r 2
          scsiha -r /hw/scsictlr/2/bus

     To probe scsi bus 0, use one of these commands:

          scsiha -p 0
          scsiha -p /hw/scsictlr/0/bus

     To reset target 8 and then perform loop initialization on fibrechannel
     bus 6, do the following:

          scsiha -L 8 6
          scsiha -L 8 /hw/scsictlr/6/bus

FILES
     /hw/scsi_ctlr/*/bus     the scsi bus operation devices

SEE ALSO
     ioconfig(1M), scsicontrol(1M), scsiha(7M).

NOTE
     This command is normally usable only by the superuser, because the
     standard permissions of the devices in /hw/scsi_ctlr/* restrict access to
     other users.

     With Fibrechannel adapters, if a loop is broken after a system has been
     operational, numerous attempts will be made to reinitialize the loop,
     after which the host adapter driver will give up on the loop.  At this
     point, if the hardware condition causing the broken loop is fixed (box of
     drives powered back on, cable reinserted, etc.), the -r option should be
     used to re-establish loop operation.

     The source to this program is also shipped as sample source code in the
     irixdev.gifts.scsi subsystem as part of IDO.

     The Performance Co-Pilot (see PCP(1)) may be used to monitor SCSI
     devices, however configuration changes by scsiha may not be
     asynchronously detected.  If SCSI devices are being monitored,
     libirixpmda(5) may be notified and forced to reset using the command:

               > pmstore irix.xbow.switch 1











                                                                        Page 3



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026