G06F2211/1088

Memory erasure information in cache lines

Example implementations relate to storing memory erasure information in memory devices on a memory module. In example implementations, a memory location associated with an error in a first cache line may be identified. The first cache line may include data read from the memory location, and the memory location may be in a first memory device of a plurality of memory devices on a memory module. A device number corresponding to the first memory device may be written to one of the plurality of memory devices. When the memory location is read for a second cache line, the device number corresponding to the first memory device may be retrieved. The second cache line may include the retrieved device number and data read from the memory location.

BLOCK PRIORITY INFORMATION

Example implementations relate to a storage system. An example implementation includes a storage system including a controller coupled to a storage medium. The controller is to receive block priority information from a file system via a communication agent. The block priority information and the file system are associated with the storage medium. Based on the block priority information, the controller is to selectively perform an operation on the storage medium. The operation includes a reconstruction operation, a data scrubbing operation, and a data migration operation.

Distributed data method for encrypting data

Techniques for performing data encryption on data to be stored within a storage system are provided. A client application executing on a host machine may generate a data storage write request to write data to a storage system. A host-side module, executing on the host machine receives the write request. The host-side module is configured to generate one or more fingerprints for the data corresponding to the write request, where the one or more fingerprints are unique identifiers used to identify data blocks that make up the data. The host-side module generates encrypted data by encrypting the data blocks using an encryption technique. The encrypted data is then sent to a storage node within the storage system. Deduplication may be performed on the encrypted data using the one or more generated fingerprints.

Metadata recovery mechanism for page storage

A method includes identifying, using a controller, a first data error at a first data block stored in page metadata, the first data block having a first block logical ID. The method also includes identifying a second data block having the first block logical ID. The method also includes copying the second data block to the first data block based on the identified second data block.

Data storage with a distributed virtual array

A data storage system includes a plurality of hosts, each of which includes at least one processor and communicates over a network with a plurality of storage nodes, at least one of which has at least one storage device, at least one storage controller, and at least one non-volatile memory. At least one process within a host issues data storage read/write requests. At least one of the hosts has a cache for caching data stored in at least one of the plurality of storage nodes. The host writes data corresponding to a write request to at least one remote non-volatile memory and carries out at least one storage processing function; data in the written-to node may then be made available for subsequent reading by a different one of the hosts. Examples of the storage processing function include compression, ECC computation, deduplicating, garbage collection, write logging, reconstruction, rebalancing, and scrubbing.

Cloud data backup storage manager
10860432 · 2020-12-08 · ·

Techniques for cloud data backup are disclosed. Example methods may store backup data from a client computer on portions of data storage media associated with peer computers. In some example embodiments, a file may be encoded into segments using an error-tolerant encoding scheme, and the segments may be stored on peer computers. In some example embodiments, individual segments may be stored on more than one peer machine and/or an individual peer machine may not receive all of the segments associated with the file.

Scrubbing controllers of semiconductor memory devices, semiconductor memory devices and methods of operating the same
10671478 · 2020-06-02 · ·

A scrubbing controller of a semiconductor memory device includes a scrubbing address generator and a weak codeword address generator. The scrubbing address generator generates a scrubbing address for all codewords in a first bank array of a plurality of bank arrays in a first scrubbing mode. The scrubbing address is associated with a normal scrubbing operation and changes in response to an internal scrubbing signal and a scrubbing command. The weak codeword address generator generates a weak codeword address for weak codewords in the first bank array in a second scrubbing mode. The weak codeword address is associated with a weak scrubbing operation and is generated in response to the internal scrubbing signal.

METADATA RECOVERY MECHANISM FOR PAGE STORAGE

A method includes identifying, using a controller, a first data error at a first data block stored in page metadata, the first data block having a first block logical ID. The method also includes identifying a second data block having the first block logical ID. The method also includes copying the second data block to the first data block based on the identified second data block.

DISTRIBUTED DATA METHOD FOR ENCRYPTING DATA
20200151344 · 2020-05-14 ·

Techniques for performing data encryption on data to be stored within a storage system are provided. A client application executing on a host machine may generate a data storage write request to write data to a storage system. A host-side module, executing on the host machine receives the write request. The host-side module is configured to generate one or more fingerprints for the data corresponding to the write request, where the one or more fingerprints are unique identifiers used to identify data blocks that make up the data. The host-side module generates encrypted data by encrypting the data blocks using an encryption technique. The encrypted data is then sent to a storage node within the storage system. Deduplication may be performed on the encrypted data using the one or more generated fingerprints.

Storage systems with peer data scrub
10649843 · 2020-05-12 · ·

Example peer storage systems, storage devices, and methods provide data scrub using a peer communication channel. Peer storage devices establish peer communication channels that communicate data among the peer storage devices. A storage device may identify data segments from their storage medium for a data scrub process. A peer storage device may be identified that contains corresponding data segments to the data segment being scrubbed. A corresponding lock command may be sent over the peer communication channel to lock the corresponding data segments during the data scrub process. A data scrub error report may be generated from the data scrub process. If an error is discovered during the data scrub process the storage device may use the peer communication channel to retrieve recovery data from peer storage devices to rebuild the data segment with the error.