A method, apparatus, and system for preserving the cache data of redundant
storage controllers, by copying the recorded data blocks and the
associated cache tags in the primary cache memory of a storage controller
to a secondary cache memory of an alternate, redundant storage
controller, wherein upon a failure occurring in the primary cache memory
of any of the storage controllers, subsequent storage requests from a
host, previously intended for processing by the failed storage
controller, are processed through the secondary cache memory of a
non-failed, redundant storage controller that contains the failed
storage's controller cache data and cache tags.