HP-UX Reference (11i v1 00/12) - 5 Miscellaneous Topics, 7 Device (Special) Files, 9 General Information, Index (vol 9)

__________________________________________________________________________________________________________________________________________________________________________________________________
__________________________________________________________________________________________________________________________________________________________________________________________________
STANDARD Printed by: Nora Chuang [nchuang] STANDARD
/build/1111/BRICK/man7/!!!intro.7
________________________________________________________________
___ ___
s
scsi_pt(7) scsi_pt(7)
(Series 800 Only)
S_CONDITION_MET
Device successfully completed the command and the requested (search or
pre-fetch) operation was satisfied.
S_BUSY Device indicated it was unable to accept the command because it is busy
doing other operations.
S_RESV_CONFLICT Device indicated the command conflicted with an existing reservation.
S_COMMAND_TERMINATED Device indicated the command was terminated early by the host system.
S_QUEUE_FULL Device indicated it was unable to accept the command because its command
queue is currently full.
S_INTERMEDIATE Device successfully completed this command, which was one in a series of
linked commands. (Not supported)
S_I_CONDITION_MET Both S_INTERMEDIATE and S_CONDITION_MET indicated by the
device. (Not supported)
The sense field indicates the sense data of the SCSI REQUEST SENSE command. It is only valid if the
sense_status eld indicates successful status.
The sense_status field indicates the results of the SCSI
REQUEST SENSE command used to collect
the associated sense data. It is only valid if the
cdb_status eld indicates a S_CHECK_CONDITION
status.
The sense_xfer field indicates the number of valid sense data bytes. This field is valid only when the
cdb_status field contains the value S_CHECK_CONDITION
and the sense_status field contains
the value
S_GOOD.
EXAMPLE
The configuration test program provided with the SCSI pass-through driver product can be used as an
example. It sends a SCSI INQUIRY command to the device referenced by the required special device file
and prints out the returned inquiry data. The source for this program can be found in the file:
/usr/contrib/src/scsi_io.c
.
WARNINGS
Incorrect use of SCSI device-control operations can easily cause data loss, resulting in a corrupted sys-
tem.
Only two ioctl commands are supported; the
SIOC_EXCLUSIVE
command and the SIOC_IO com-
mand. Any other commands attempted will return the
EINVAL error.
It is recommended that the SIOC_EXCLUSIVE
ioctl be used to gain exclusive access to a device
prior to attempting
SIOC_IO commands. This will protect against other device opens from external
sources (for example, from another user program). If exclusive access is not obtained, SIOC_IO
commands may be intermixed between a number of different applications which can lead to undesir-
able results.
Most SCSI commands have a logical unit number (LUN) field. SCSI implementations on the HP-UX
operating system select logical units via the SCSI IDENTIFY message. The LUN portion of the cdb
should normally be set to zero, even when the LUN being accessed is not zero.
Most SCSI commands with a data phase expect the data length information to be included somewhere
in the command bytes. Both the data_length field and any cdb data length values must be
correctly specified to get correct command results.
Very large timeout values can cause the SCSI bus and potentially the entire system to appear to be
‘‘hung’’.
Unlike on the S700, the NIO SCSI pass-through driver is implemented as a stand-alone driver. To
ensure system integrity, certain restrictions exist with its use of the bus and its interactions with
other drivers.
Any device accessed via the NIO SCSI pass-through driver must be on a STAND-ALONE APPLICA-
TION BUS. Therefore, no boot, dump, or swap devices can be connected to this bus. While a NIO
SCSI pass-through driver application is running, it should have exclusive use of the application bus.
There should be no other accesses to this bus, be it from the operating system, a user, or another
application.
HP-UX Release 11i: December 2000 3 Section 7127
___
___