scsi_ctl.7 (2010 09)
s
scsi_ctl(7) scsi_ctl(7)
The current operating communication parameters may be determined by use of the:
SIOC_GET_LUN_PARMS
, PSIOC_GET_TGT_PARMS
(recommended) or
SIOC_GET_TGT_PARMS
(for
backward compatibility), and
SIOC_GET_BUS_PARMS
ioctls.
Occasionally, it is desirable to limit SCSI communication parameters to work around a communication
problem or to provide external insight in determining optimal parameters. SCSI communication parame-
ter limit suggestions can be specified by use of the:
SIOC_SET_LUN_LIMITS
,
SIOC_SET_TGT_LIMITS
, and SIOC_SET_BUS_LIMITS
ioctls.
Note that there might be substantial differences between specified communication parameter limit
suggestions and the corresponding actual current communication parameters being used for communica-
tion. These differences are a result of device-specific driver capabilities, interface driver capabilities,
interface hardware capabilities, device capabilities, delays due to the negotiation process, delays due to
currently active commands, and delays due to commands waiting to be sent to devices. Note that com-
munication parameter limit suggestions might not survive between
close() and open() calls, when no
SCSI device drivers (device-specific or
scsi_ctl) have associated LUN(s) open.
The current SCSI communication parameter limit suggestions may be determined by use of the
SIOC_GET_LUN_LIMITS
, SIOC_GET_TGT_LIMITS
, and SIOC_GET_BUS_LIMITS
ioctls.
Logical unit communication parameters may be managed by use of the
SIOC_GET_LUN_PARMS
,
SIOC_SET_LUN_LIMITS
, and SIOC_GET_LUN_LIMITS
, SIOC_RESET_DEV
, SIOC_RESET_BUS
ioctls.
The
SIOC_GET_LUN_PARMS
ioctl indicates the current LUN communication parameter values. The
max_q_depth field indicates whether or not tagged queuing is enabled, and if enabled, the maximum
number of simultaneously active commands allowed. When max_q_depth is zero, tagged queuing is dis-
abled. When it is one, tags are being used but commands are still being serially processed. When it is
greater than one, tags are being used and max_q_depth specifies the maximum number of simultaneously
active commands allowed.
The
SIOC_SET_LUN_LIMITS
ioctl may be used to provide LUN communication parameter limit sugges-
tions. The max_q_depth field indicates whether or not tagged queuing should be enabled, and if enabled,
the maximum number of simultaneously active commands that should be allowed. The
SIOC_GET_LUN_LIMITS
ioctl indicates the current LUN communication parameter limit suggestions.
Target communication parameters may be managed by use of the
PSIOC_GET_TGT_PARMS ioctl on any
associated HBA DSF, or
SIOC_GET_TGT_PARMS
, SIOC_SET_TGT_LIMITS, and
SIOC_GET_TGT_LIMITS
ioctls to any associated LUN.
The
PSIOC_GET_TGT_PARMS
and SIOC_GET_TGT_PARMS ioctls indicate the current target communi-
cation parameter values. The width, reqack_offset , and xfer_rate fields indicate the currently negotiated
data transfer parameters. When width is eight, narrow transfers are in effect. When it is sixteen, wide
transfers are in effect. When reqack_offset is zero, asynchronous transfers are in effect and xfer_rate is
meaningless. When reqack_offset is non-zero, synchronous transfers are in effect and the maximum
"burst" data transfer rate is xfer_rate words per second, where the size of a word is as indicated in width .
The
SIOC_SET_TGT_LIMITS ioctl specifies the target communication parameter limit suggestions. The
max_width field specifies the maximum bus width that should be used for data transfers. The
max_reqack_offset field specifies the maximum number of outstanding REQs that should be attempted
during data transfers. The max_xfer_rate field specifies the maximum "burst" data rate that should be
allowed during synchronous data transfers. The SIOC_GET_TGT_LIMITS ioctl indicates the current
target communication parameter limit suggestions. The width, reqack_offset , xfer_rate , max_width ,
max_reqack_offset , max_xfer_rate fields only apply to parallel SCSI.
Bus communication parameters may be managed by use of the
SIOC_GET_BUS_PARMS
,
SIOC_SET_BUS_LIMITS, and SIOC_GET_BUS_LIMITS
ioctls to any associated LUN.
The
SIOC_GET_BUS_PARMS ioctl indicates the current bus communication parameter values. The
max_width field indicates the maximum data transfer width that will be attempted for data transfers to
any target device connected to the associated bus. The max_reqack_offset field indicates the maximum
number of outstanding REQs that will be attempted during data transfers to any target device connected
to the associated bus. The max_xfer_rate field indicates the maximum "burst" data transfer rate that will
be attempted for data transfers to any target device connected to the associated bus.
The
SIOC_SET_BUS_LIMITS ioctl specifies the bus communication parameter limit suggestions for tar-
gets connected to the associated bus. The max_width field specifies the suggested maximum data transfer
width that should be attempted for data transfers to any target device connected to the associated bus.
HP-UX 11i Version 3: September 2010 − 3 − Hewlett-Packard Company 3