Provides a means to send Independent Network Storage Access Language (ISAL) commands to an SSA physical or logical disk drive. ISAL comprises a set of commands which allow a program to control and access a storage device. The ISAL Command set is described in the Technical Reference for the adapter.
The SSADISK_ISAL_CMD operation allows the caller to issue an ISAL command to a selected logical or physical disk drive. The caller must be root or have an effective user ID of root to issue this ioctl.
The following ISAL commands (minor function codes), defined in /usr/include/ipn/ipnsal.h may be issued:
FN_ISAL_Read FN_ISALWrite FN_ISAL_Format FN_ISAL_Progress FN_ISAL_Lock FN_ISAL_Unlock FN_ISAL_Test FN_ISAL_SCSI FN_ISAL_Download FN_ISAL_Fence
The arg parameter for the SSADISK_ISAL_CMD ioctl is the address of an ssadisk_ioctl_parms structure. This structure is defined in the /usr/include/sys/ssadisk.h file.
The SSADISK_ISAL_CMD ioctl uses the following fields of the ssadisk_ioctl_parms structure:
Field | Description |
---|---|
dsb | Contains the directive status byte returned for the command. This contains a value from /usr/include/ipn/ipndef.h. A non zero value indicates an error. |
result | Contains the Independent Packet Network (IPN) result word returned by IPN for the command. This contains values from /usr/include/ipn/ipntra.h. A non-zero value indicates an error. |
u0.isal.parameter_descriptor | Set by the caller to indicate the buffer for parameter data. |
u0.isal.transmit_descriptor | Set by the caller to indicate the buffer for transmit data. |
u0.isal.receive_descriptor | Set by the caller to indicate the buffer for received data. |
u0.isal.status_descriptor | Set by the caller to indicate the buffer for status data. |
u0.isal.minor_function | Set by the caller to one of the ISAL commands defined in /usr/include/ipn/ipnsal.h and listed above. |
If the command was successfully sent to the adapter card this operation returns a value of 0. Otherwise, a value of -1 is returned and the errno global variable set to one of the following values:
Value | Description |
---|---|
EIO | Indicates an unrecoverable I/O error. |
EINVAL | Indicates either that the caller has specified an ISAL command that is not in the list of supported ISAL commands, or that the caller has attempted to send a FN_ISAL_FENCE command to an SSA physical disk. |
EPERM | Indicates that caller did not have an effective user ID (EUID) of 0. |
ENOMEM | Indicates that the device driver was unable to allocate or pin enough memory to complete the operation. |
If the return code is 0, the result field of the ssadisk_ioctl_parms structure is valid. This indicates whether the adapter was able to process the command successfully.
Item | Description |
---|---|
/dev/pdisk0, /dev/pdisk1,..., /dev/pdiskn | Provide an interface to allow SSA device drivers to access SSA physical disk drives. |
/dev/hdisk0, /dev/hdisk1,..., /dev/hdiskn | Provide an interface to allow SSA device drivers to access SSA logical disk drives. |