I/O timing
The I/O timing facility abnormally ends the following I/O requests
that exceeded the I/O timing limits that are specified for a device:
- Queued requests that are waiting for execution.
- Start pending requests.
- Active requests.
The I/O timing facility can be enabled to trigger a HyperSwap® when an I/O timeout occurs for a device that is monitored for HyperSwap. Optionally, the user can specify whether a timed-out I/O operation that initiates a HyperSwap is to be terminated or allowed to be started on the swap 'TO' device.
For any I/O request that exceeds the I/O timing limit, the system performs
the following actions:
- When the I/O timing trigger is not enabled for HyperSwap,
or is enabled and the IOTTERM option is also enabled:
- Abnormally ends the I/O request that exceeded the time limit, and does not requeue the request for execution.
- Issues a message.
- Writes an entry in the SYS1.LOGREC data set for the abnormally ended I/O request.
- When the I/O timing trigger is enabled for HyperSwap and
the IOTTERM option is disabled:
- Abnormally ends the I/O request that exceeded the time limit, and requeues the request for later execution on the swap 'TO' device at the completion of the HyperSwap.
- Issues a message for the first timeout condition that triggers a HyperSwap on the associated DASD subsystem.
- Writes an entry in the SYS1.LOGREC data set for the abnormally ended I/O request.
Installations that want the system to issue an I/O timing message and record in SYS1.LOGREC, but do not want to abnormally end the I/O request can do so with I/O timing message-only processing. Message-only processing allows the system to detect I/O timeout conditions, but, provides the ability to allow the user to decide which I/O requests should be terminated.
The system records data associated with the original I/O error, if any exists.
IBM recommendations for I/O timing limits: Within
1 second, the system abnormally ends an I/O request that exceeded
the I/O timing limit. IBM® suggests
setting your I/O timing limits to 6 seconds or longer. An I/O timing
limit of less than 6 seconds can result in a loss of service information
that is required to correct a DASD subsystem hardware failure that
triggered the long I/O event. In addition, a limit of less than 6
seconds can result in a loss of SYS1.LOGREC records.
Notes:
- To cancel the I/O timing limit, (that is, to have no time limit on I/O requests) specify IOTIMING=00:00.
- I/O timing is only supported for non-paging DASD devices and for TAPE devices. I/O timing for TAPE devices requires MSGONLY=YES to be in effect because full I/O timing support is not available.
- An I/O timeout will not trigger a HyperSwap if message-only recovery is specified for the device or as the result of a timeout condition that is specified by an I/O driver program.