MPIO device attributes

The following attributes are supported only by multipath devices. The attributes can be displayed or changed by using the SMIT, or commands (in particular, the lsattr and the chdev commands).

Some of the Multiple Path I/O (MPIO) device attributes are enabled for concurrent update of the attribute. You can update the attribute values while the disk is open and is in use, and the new values take effect immediately. For some attributes, particularly the reserve_policy attribute, there might be restrictions on when the attribute can be changed or what new values the attribute can accept. For example, if a disk is open and currently in use as a cluster repository disk, the AIX® operating system blocks any attempt to set a reserve policy on the disk because it causes other cluster nodes to lose access to the repository.

The required device attributes that all MPIO devices must support is reserve_policy. Typically, a multipath device also has the PR_key_value device attribute. A multipath device can have additional device-specific attributes. Other device-specific attributes are as follows:

FC3_REC
Indicates whether the device must turn on error recovery that uses Fibre Channel class 3 or not. Enabling this feature improves error detection and error recovery for certain types of fabric errors that are related to Fibre Channel. This attribute is available only on a limited set of devices. This attribute can have the following values:
true
Enables error recovery that uses Fibre Channel class 3.
false
Disables error recovery that uses Fibre Channel class 3 error recovery.
reserve_policy
Defines whether a reservation methodology is employed when the device is opened. The values are as follows:
no_reserve
Does not apply a reservation methodology for the device. The device might be accessed by other initiators, and these initiators might be on other host systems.
single_path
Applies a SCSI2 reserve methodology for the device, which means the device can be accessed only by the initiator that issued the reserve. This policy prevents other initiators in the same host or on other hosts from accessing the device. This policy uses the SCSI2 reserve to lock the device to a single initiator (path), and commands routed through any other path result in a reservation conflict.

Path selection algorithms that alternate commands among multiple paths can result in thrashing when the single_path value is selected. As an example, assume a device-specific PCM has a required attribute that is set to a value that distributes I/O across multiple paths. When single_path is in effect, the disk driver must issue a bus device reset (BDR) and then issue a reserve using a new path for sending the next command to break the previous reservation. Each time a different path is selected, thrashing occurs and performance degrades because of the overhead of sending a BDR and issuing a reserve to the target device. (The AIX PCM does not allow you to select an algorithm that could cause thrashing.)

PR_exclusive
Applies a SCSI3 persistent-reserve, exclusive-host methodology when the device is opened. The PR_key_value attribute value must be unique for each host system. The PR_key_value attribute is used to prevent access to the device by initiators from other host systems.
PR_shared
Applies a SCSI3 persistent-reserve, shared-host methodology when the device is opened. The PR_key_value value must be a unique value for each host system. Initiators from other host systems are required to register before they can access the device.
PR_key_value
Required only if the device supports any of the persistent reserve policies (PR_exclusive or PR_shared).
rw_timeout and min_rw_to
The rw_timeout attribute specifies the time, in seconds, that a SCSI command is allowed for completion each time it is issued to a storage device. In an MPIO environment, a command can experience more than one timeout as it is retried on different paths.

The disk ODM, contained in AIX for Fibre Channel attached disks, uses a default value of 30 seconds for rw_timeout. For some devices, AIX allows setting the rw_timeout attribute to values as low as 10 seconds.

AIX uses a special unique type for some MPIO FC attached disks, disk/fcp/mpioosdisk. This unique type is used for various storage device models, which might have different requirements for the smallest allowed value of the rw_timeout attribute. As a result, disks of this type have a min_rw_to attribute that specifies the actual minimum timeout value for that particular disk.

For example, the lsattr -Rl hdisk5 -a rw_timeout command might show that hdisk5 allows an rw_timeout value of 10 seconds. The value of the min_rw_to attribute, however, might provide a different, higher minimum value for the rw_timeout attribute. When you are using a storage device that is provided by a vendor other than IBM®, obtain and install the ODM package from the storage vendor. The ODM package from the storage vendor might have a different range of values that are allowed for the rw_timeout attribute.

rw_max_time
This attribute specifies an approximate maximum time taken by an MPIO device, in seconds, to complete each I/O operation. The time is measured from when the I/O request is issued to the disk driver to when the disk driver returns the I/O request to the calling process. This attribute can be used when the disk is part of a redundant configuration, such as Logical Volume Manager (LVM) mirroring configuration. When this attribute is set, if an I/O operation encounters errors such as command timeout, the I/O operation might fail before completing all of the normal retry operations. Thus, this attribute provides quicker redundancy.

When this attribute is set to the default value of 0, the disk driver and Path Control Module (PCM) retry I/O operations until the threshold value of the retry counter is reached. The retry I/O operations might take several minutes depending on the number of errors and the configuration of the disk. If the rw_max_time attribute is set to a nonzero value and if you use a Fibre Channel adapter that provides the io_thrshld_tmr attribute, set the io_thrshld_tmr attribute to yes for best results.

io_thrshld_tmr
The io_thrshld_tmr attribute is a threshold timer for error recovery of the FC drivers. This Fibre Channel (FC) I/O attribute enhances the FC device driver control over the command timeout processing. The valid values of this attribute are as follows:
yes
Enables the I/O threshold attribute. When you enable this attribute, a threshold timer is started in the FC device driver that monitors the I/O operations in the pending queue of the FC device driver. If an I/O operation is pending for more than the rw_timeout seconds (the maximum read/write timeout specified by SCSI device driver), then the FC device driver completes that I/O operation, with the required status that is required by the SCSI device driver. The SCSI device driver controls the rw_timeout attribute for each I/O operation that the SCSI device driver is sending to the FC device driver.
no
Disables the I/O threshold attribute. This is the default value.
To enable error recovery for a FC SCSI device, enter the following command:
# chdev -U -l fscsi0 -a io_thrshld_tmr=yes
where, the FC SCSI device instance is fscsi0.
To disable error recovery for a FC SCSI device, enter the following command:
# chdev -U -l fscsi0 -a io_thrshld_tmr=no
where, the Fibre Channel SCSI device instance is fscsi0.

The io_thrshld_tmr attribute supports concurrent update that means that you can update the attribute while FC SCSI device instance fscsi0 is open and in use.