G06F11/2087

Seamless fault tolerance via block remapping and efficient reconciliation

In a storage cluster having nodes, blocks of a logical storage space of a storage object are allocated flexibly by a parent node to component nodes that are backed by physical storage. The method includes maintaining a first allocation map for the parent node, and second and third allocation maps for the first and second component nodes, respectively, executing a first write operation on the first component node and updating the second allocation map to indicate that the first block is a written block, and upon detecting that the first component node is offline, executing a second write operation that targets a second block of the logical storage space, which is allocated to the first component node, on the second component node and updating the third allocation map to indicate that the second block is a written block.

METHOD, APPARATUS, AND COMPUTER READABLE MEDIUM FOR I/O CONTROL
20200133779 · 2020-04-30 ·

Techniques providing I/O control involve: in response to receiving an I/O request, detecting a first set bits for a stripe in a RAID. The RAID is built on disk slices divided from disks. The stripes include extents. Each of the first set bits indicates whether a disk slice where a corresponding extent in the stripe is located is in a failure state. The techniques further involve determining, from the stripe and based on the first set bits, a first set of extents in the failure state and a second set of extents out of the failure state. The techniques further involve executing the I/O request on the second set of extents without executing the I/O request on the first set of extents. Such techniques can simplify storage bits in I/O control, support the degraded stripe write request for the RAID and enhance performance executing the I/O control.

REDUNDANT MEMORY FOR UNDERWATER INSTRUMENTATION
20200110445 · 2020-04-09 ·

A redundant memory for use with an instrument arranged to acquire and store data while underwater. Such an instrument comprises a main housing which contains instrument electronics that acquires and may process data received from one or more sensors, with a primary memory located within the main housing and arranged to store at least some of the acquired and/or processed data, and a secondary memory which stores a copy of the data stored in the primary memory. The instrumentation may be arranged to write data to the primary and secondary memories contemporaneously in either a burst or continuous mode, or with primary memory backed up to secondary memory periodically and/or in response to the occurrence of a triggering event. The instrument may comprise a second housing within which the secondary memory is located. The main and second housings may be contained within a common enclosure.

Memory mirror invocation upon detecting a correctable error

Aspects of the invention include fetching data requested by a requestor from a primary memory in a memory system that includes the primary memory and a secondary memory mirroring the primary memory. An error status of the data fetched from the primary memory is determined. The error status is one of correctable error (CE), uncorrectable error (UE), and no error. Based at least in part on determining that the data fetched from the primary memory has the error status of no error, the data fetched from the primary memory is output to the requestor. Based at least in part on determining that the data fetched from the primary memory has the error status of UE or CE, the data requested by the requestor is fetched from the secondary memory.

Providing redundancy in a virtualized storage system for a computer system

A method for providing redundancy in a virtualized storage system for a computer system is provided. The method includes determining a first set of first logical addresses to provide a virtual storage volume. A redundancy schema is then selected to provide redundancy data for primary data stored in the first set of first logical addresses. A second set of second logical addresses is determined to provide logical storage for the primary data and for the redundancy data. The first set of first logical addresses and the second set of second logical addresses are then mapped and a set of physical addresses is selected from a set of physical storage elements. Mapping between the second set of second logical addresses and the set of physical addresses is then performed to provide physical storage for the primary data and the redundancy data stored in the virtual storage volume.

MEMORY MIRRORING IN AN INFORMATION HANDLING SYSTEM
20200065203 · 2020-02-27 ·

A method, an information handling system (IHS) and a memory mirroring system for operating a mirrored memory. The method includes detecting, via a memory controller, at least one uncorrectable data error (UCDE) in a first memory device. In response to detecting the at least one UCDE, a UCDE event counter is retrieved that tracks the number of UCDE events that have occurred and a UCDE event threshold is retrieved corresponding to a maximum number of allowed UCDE events. The method further includes determining if the UCDE event counter is greater than the UCDE event threshold and in response to determining that the UCDE event counter is not greater than the UCDE event threshold, continuing writing of data to the first memory device via a first memory channel and continuing writing of the data to a second memory device via a second memory channel to create a mirror of the data.

Storing data in multi-region storage devices

An apparatus comprises a storage controller coupled to at least one multi-region storage device. The at least one multi-region storage device comprises two or more storage regions, the two or more storage regions comprising a first storage region associated with a first set of failure characteristics and at least a second storage region associated with a second set of failure characteristics different than the first set of failure characteristics. The storage controller is configured to replicate in the second storage region at least a portion of data that is stored in the first storage region.

SYSTEM AND METHOD FOR FACILITATING CLUSTER-LEVEL CACHE AND MEMORY SPACE
20200042454 · 2020-02-06 · ·

Embodiments described herein provide a system for facilitating cluster-level cache and memory in a cluster. During operation, the system presents a cluster cache and a cluster memory to a first application running on a first compute node in the cluster. The system maintains a first mapping between a first virtual address of the cluster cache and a first physical address of a first persistent storage of the first compute node. The system maintains a second mapping between a second virtual address of the cluster memory and a second physical address of a second persistent storage of a first storage node of the cluster. Upon receiving a first memory allocation request for cache memory from the first application, the system allocates a first memory location corresponding to the first physical address. The first application can be configured to access the first memory location based on the first virtual address.

Cache program with backup blocks

Systems, apparatus and methods are provided for performing cache program operations in a non-volatile storage system. A method may comprise issuing a first cache program operation from a storage controller to a non-volatile storage device to write data to a first regular block, writing the data to the first regular block and a copy of the data to a backup block, determining that a program error has occurred while writing the data to the first regular block, asserting the program error to the storage controller, retrieving a mapping between the first regular block and the backup block, issuing a read operation to read the copy of the data from the backup block, reading the copy of the data from the backup block and issuing a second cache program operation to write the data to a second regular block and marking the first regular block as defective.

SYSTEMS AND METHODS TO PREVENT SYSTEM CRASHES DUE TO LINK FAILURE IN MEMORY MIRRORING MODE
20190377650 · 2019-12-12 ·

Systems and methods for preventing system crashes due to memory link failure in memory mirroring mode in an information handling system (IHS). The IHS may include a first memory device, a second memory device, and an integrated memory controller (IMC). The IMC may issue write transactions to both the first and second memory devices and issue read transactions to the first memory device when the IMC is in memory mirroring mode. The IMC may transmit a system management interrupt (SMI) with an IMC error to a basic input/output system (BIOS) when a persistent uncorrected IMC error is detected within the first memory device. The BIOS may perform a memory mirror failover process that may cause the IMC to issue the write transactions and the read transactions to the second memory device when the IMC error is a fatal memory link error.