METHODS AND STRUCTURE FOR TASK MANAGEMENT IN STORAGE CONTROLLERS OF A CLUSTERED STORAGE SYSTEM
First Claim
1. A method operable in a clustered storage system comprising an initiator storage controller and a target storage controller, the method comprising:
- receiving an I/O request in the initiator storage controller from an attached host system;
shipping the I/O request from the initiator storage controller to the target storage controller for processing;
determining, within the initiator controller, that the shipped I/O request is to be aborted;
transmitting a task management message from the initiator storage controller to the target storage controller, the task management message indicating that the shipped I/O request is to be aborted;
completing processing of the shipped I/O request within the target storage controller responsive to receipt of the task management message;
returning a completion status from the target storage controller to the initiator storage controller; and
returning the completion status from the initiator storage controller to the host system.
8 Assignments
0 Petitions
Accused Products
Abstract
Methods and structure for task management in storage controllers of a clustered storage system. An initiator storage controller of the clustered storage system ships I/O requests for processing to a target storage controller of the system. Responsive to a need to abort a previously shipped I/O request, the initiator storage controller transmits a task management message to the target storage controller. The task management message identifies one or more previously shipped I/O requests to be aborted. The target storage controller processes the received task management message in due course of processing requests and completes processing for the aborted previously shipped request in an orderly manner. Resources associated with the aborted previously shipped requests are release within both controllers.
-
Citations
20 Claims
-
1. A method operable in a clustered storage system comprising an initiator storage controller and a target storage controller, the method comprising:
-
receiving an I/O request in the initiator storage controller from an attached host system; shipping the I/O request from the initiator storage controller to the target storage controller for processing; determining, within the initiator controller, that the shipped I/O request is to be aborted; transmitting a task management message from the initiator storage controller to the target storage controller, the task management message indicating that the shipped I/O request is to be aborted; completing processing of the shipped I/O request within the target storage controller responsive to receipt of the task management message; returning a completion status from the target storage controller to the initiator storage controller; and returning the completion status from the initiator storage controller to the host system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method operable in a clustered storage system comprising an initiator storage controller and a target storage controller, the method comprising:
-
shipping one or more I/O requests received at the initiator storage controller to the target storage controller as shipped I/O requests; detecting one or more of;
a timeout in the initiator storage controller waiting for processing of one or more shipped I/O requests by the target storage controller, and an error condition in processing of the one or more shipped I/O requests;responsive to the detection, transmitting a task management message from the initiator storage controller to the target storage controller, wherein the task management message comprises one or more of;
an Abort Request message, an Abort All Requests message, a Reset Logical Device message, and a Reset Controller message;aborting one or more processes within the target storage controller corresponding with each of the one or more shipped I/O requests responsive to receipt of the task management message; completing processing of each of the one or more shipped I/O request within the target storage controller responsive to the aborting of the one or more processes, wherein the step of completion comprises applying a completion signal to the initiator storage controller indicative of the completion; releasing resources within the target storage controller relating to processing of each of the one or more shipped I/O requests responsive to completing processing of the one or more shipped I/O requests; and releasing resources within the initiator storage controller relating to processing of the one or more shipped I/O requests responsive to receipt of the completion signal. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A clustered storage system comprising:
-
an initiator storage controller adapted to receive I/O requests from an attached host system; and a target storage controller adapted to couple with one or more storage devices and communicatively coupled with the initiator storage controller, wherein the initiator storage controller comprises an initiator protocol processing component adapted to communicate with the target storage controller, wherein the target storage controller comprises a target protocol processing component adapted to communicate with the initiator storage controller, wherein the initiator storage controller is adapted to ship one or more received I/O requests to the target storage controller as shipped I/O requests, wherein the initiator controller is adapted to detect one or more of;
a timeout in the initiator storage controller waiting for processing of one or more shipped I/O requests by the target storage controller, and an error condition in processing of the one or more shipped I/O requests,wherein the initiator controller, responsive to the detection, is adapted to transmit a task management message to the target storage controller, wherein the task management message comprises one or more of;
an Abort Request message, an Abort All Requests message, a Reset Logical Device message, and a Reset Controller message,wherein the target storage controller is adapted to abort one or more processes corresponding with each of the one or more shipped I/O requests responsive to receipt of the task management message, wherein the target storage controller is adapted to complete processing of each of the one or more shipped I/O request responsive to the aborting of the one or more processes, wherein the completion comprises applying a completion signal to the initiator storage controller indicative of the completion, wherein the target storage controller is adapted to release resources within the target storage controller relating to processing of each of the one or more shipped I/O requests responsive to completing processing of the one or more shipped I/O requests, and wherein the initiator storage controller is adapted to release resources within the initiator storage controller relating to processing of the one or more shipped I/O requests responsive to receipt of the completion signal. - View Dependent Claims (17, 18, 19, 20)
-
Specification