Patent ID: 7707464

Claim:
A computer program product comprising a computer readable storage medium including a computer readable program, wherein the computer readable program when executed on a computer causes the computer to: execute one or more user segments programmed to: create at least one timeout request object when a timeout request is originated upon initiation of an associated input/output (I/O) operation; define a timeout time period for completion of the I/O operation associated with that at least one timeout request object; store the at least one timeout request object into a queue associated with a first memory location with a timeout status indicator set to schedule a pending cancellation action for the I/O operation; and invalidate the timeout request object by resetting the timeout status indicator if the I/O operation is completed prior to expiration of the timeout period or if the timeout period has expired and a timeout action has been invoked; and execute a timeout processing segment programmed to: examine the queue comprised of one or more timeout request objects; ignore an invalidated timeout request object; calculate, for a timeout request object that has not been invalidated, a point in time when a timeout action is required to cancel an incomplete I/O operation by adding an unelapsed portion of the timeout time period to an initiation time of the I/O operation and adjust an expiration time for the associated I/O operation to take place at a nearest time period interval after that time, this being a new adjusted expiration time; move the timeout request object that has not been invalidated to a grouped timeout list selected from a plurality of grouped timeout lists in a second memory location, the grouped timeout list comprising storage for at least one additional timeout request object with the same adjusted expiration time; and examine the grouped timeout list for expiration of the associated I/O operations.