Abstract:
Enabling multi-channel communications between controllers in a storage array, including: creating a plurality of logical communications channels between two or more storage array controllers; inserting, into a buffer utilized by a direct memory access (‘DMA’) engine of a first storage array controller, a data transfer descriptor describing data stored in memory of the first storage array controller and a location to write the data to memory of a second storage array controller; retrieving, in dependence upon the data transfer descriptor, the data stored in memory of the first storage array controller; and writing, via a predetermined logical communications channel, the data into the memory of the second storage array controller in dependence upon the data transfer descriptor.
Abstract:
A method, apparatus, and computer program product for managing permissions for processing input/output (I/O) operations in a storage system is disclosed that includes a plurality of storage system controllers and a plurality of storage devices. The method comprises determining that a permission associated with a storage system controller for issuing I/O operations to the storage devices should be invalidated and, in response to the determination, modifying at least one I/O capability of the storage system controller.
Abstract:
Emulating a remote direct memory access (‘RDMA’) link between controllers in a storage array, including: inserting, into a buffer utilized by a direct memory access (‘DMA’) engine of a first storage array controller, a data transfer descriptor describing data stored in memory of the first storage array controller and a location to write the data to memory of the second storage array controller; retrieving, in dependence upon the data transfer descriptor, the data stored in memory of the first storage array controller; and writing the data into the memory of the second storage array controller in dependence upon the data transfer descriptor.