Failover and failback system for a direct access storage device
First Claim
1. A method for handling failures in a storage controller interfacing between a plurality of host systems and direct access storage devices (DASDs), comprising the steps of:
- (a) directing data from the host systems through a first and second data paths in the storage controller to a DASD, wherein a first processor, first non-volatile memory unit (NVS), and a first cache are associated with the first data path, wherein a second processor, a second NVS, and a second cache are associated with the second data path, and wherein a bridge provides communication between the first processor and the second NVS and the second processor and the first NVS, comprising the steps of;
(1) writing data directed toward the first data path in the first cache;
(2) communicating with the first processor data directed toward the first data path to the second NVS via the bridge for storage in the second NVS;
(3) writing data directed toward the second data path in the second cache;
(4) communicating with the second processor data directed toward the second data path to the first NVS via the bridge for storage in the first NVS;
(b) handling a point of failure within at least one of the first processor, first cache, and first NVS, comprising the steps of routing data directed toward the first data path to the second processor and writing the routed data to the second cache and the second NVS; and
(c) rerouting data directed to the first data path to the first processor upon repairing the point of failure, wherein the rerouted data is written in the first cache and communicated with the first processor to the second NVS via the bridge for storage therein.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed is a system for handling failures in a storage controller interfacing between a plurality of host systems and direct access storage devices (DASDs). The storage controller directs data from the host systems through a first and second data paths in the storage controller to a DASD. A first processor, first non-volatile memory unit (NVS), and a first cache are associated with the first data path and a second processor, a second NVS, and a second cache are associated with the second data path. A bridge provides communication between the first processor and the second NVS and the second processor and the first NVS. During normal operations prior to a failure in the storage controller, data directed to the first data path is written in the first cache and communicated with the first processor to the second NVS via the bridge for storage in the second NVS. Data directed to the second data path is written in the second cache and communicated with the second processor to the first NVS via the bridge for storage in the first NVS. A point of failure within at least one of the first processor, first cache, and first NVS is handled by routing the data directed to the first data path to the second processor and writing the routed data to the second cache and the second NVS. Upon repairing the point of failure, the data directed to the first data path is rerouted to the first processor, wherein the rerouted data is written in the first cache and communicated with the first processor to the second NVS via the bridge for storage therein.
-
Citations
26 Claims
-
1. A method for handling failures in a storage controller interfacing between a plurality of host systems and direct access storage devices (DASDs), comprising the steps of:
-
(a) directing data from the host systems through a first and second data paths in the storage controller to a DASD, wherein a first processor, first non-volatile memory unit (NVS), and a first cache are associated with the first data path, wherein a second processor, a second NVS, and a second cache are associated with the second data path, and wherein a bridge provides communication between the first processor and the second NVS and the second processor and the first NVS, comprising the steps of; (1) writing data directed toward the first data path in the first cache; (2) communicating with the first processor data directed toward the first data path to the second NVS via the bridge for storage in the second NVS; (3) writing data directed toward the second data path in the second cache; (4) communicating with the second processor data directed toward the second data path to the first NVS via the bridge for storage in the first NVS; (b) handling a point of failure within at least one of the first processor, first cache, and first NVS, comprising the steps of routing data directed toward the first data path to the second processor and writing the routed data to the second cache and the second NVS; and (c) rerouting data directed to the first data path to the first processor upon repairing the point of failure, wherein the rerouted data is written in the first cache and communicated with the first processor to the second NVS via the bridge for storage therein. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A storage controller for interfacing between a plurality of host systems and direct access storage devices (DASDs), wherein data is transferred between the host systems and a first and second locations in the DASDs, comprising:
-
(a) a first cluster, including a first processor, a first non-volatile memory unit (NVS), and a first cache; (b) a second cluster, including a second processor, a second NVS, and a second cache; (c) a bridge providing communication between the first processor and the second NVS and the second processor and the first NVS, wherein data directed toward the first location is directed toward the first processor and written in the first cache and the second NVS, and wherein data directed to the second location is directed toward the second processor and written in the second cache and the first NVS; (d) means, performed by the second processor, for detecting a failure in the first cluster; (e) means for routing data directed toward the first location to the second processor and writing the routed data to the second cache and the second NVS in response to detecting a failure within the first cluster; and (f) means for rerouting data directed toward the first location to the first processor upon repairing the failure in the first cluster, wherein the rerouted data is written in the first cache and the second NVS via the bridge. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. An article of manufacture for use in programming a storage controller to direct data between host systems and direct access storage devices (DASDs), the article of manufacture comprising a storage medium having logic embodied therein that causes components of the storage controller to perform the steps of:
-
(a) directing data from the host systems through a first and second data paths in the storage controller to a DASD, wherein the first processor, a first non-volatile memory unit (NVS), and a first cache are associated with the first data path, wherein the second processor, a second NVS, and a second cache are associated with the second data path, and wherein a bridge provides communication between the first processor and the second NVS and the second processor and the first NVS, comprising the steps of; (1) writing data directed toward the first data path in the first cache; (2) communicating with the first processor data directed toward the first data path to the second NVS via the bridge for storage in the second NVS; (3) writing data directed toward the second data path in the second cache; (4) communicating with the second processor data directed toward the second data path to the first NVS via the bridge for storage in the first NVS; (b) handling a point of failure within at least one of the first processor, first cache, and first NVS, comprising the steps of routing data directed toward the first data path to the second processor and writing the routed data to the second cache and the second NVS; and (d) rerouting data directed to the first data path to the first processor upon repairing the point of failure, wherein the routed data is written in the first cache and communicated with the first processor to the second NVS via the bridge for storage therein. - View Dependent Claims (19, 20, 21)
-
- 22. The article of manufacture of 18, wherein the step of directing data from the host systems through the first and second data paths further comprises the steps of directing data from the first processor to a first device adaptor which accesses a DASD within a group of DASDs and directing data from the second processor to a second device adaptor which accesses a DASD within a group of DASDs, wherein the first device adaptor and the second device adaptor are attached to the group of DASDs to access data locations therein, and wherein the step of routing data from the first data path to the second processor during failure handling further comprises writing the routed data to a DASD via the second device adaptor.
-
25. The article of manufacture of 24, wherein the point of failure occurs in the first device adaptor linked to the first logical subsystem, and wherein the step of routing data directed to the first data path to the second processor comprises the steps of routing data directed to the first, second, and fourth logical subsystems to the second processor and second device adaptors and routing data directed to the third logical subsystem to the first processor and a first device adaptor.
-
26. The article of manufacture of 25, wherein the step of rerouting the data directed to the first data path to the first processor further comprises:
-
destaging data directed to the first, second, and fourth logical subsystems that was written to the second NVS during failure handling to the DASD; destaging data directed to the third logical subsystem that was routed from the first data path to the second processor and written to the second cache during failure handling to the DASD; and copying data directed to the third logical subsystem that was routed from the first data path to the second processor and written to the second NVS during failure handling to the first cache.
-
Specification