write cache mirroring

Enables cached data to be mirrored across two redundant controllers that have the same cache size. The data written to the cache memory of one controller is also written to the cache memory of the other controller. Therefore, if one controller fails, the other can complete all outstanding write operations.