G06F11/2084

Mirrored byte addressable storage
10776267 · 2020-09-15 · ·

Mirrored byte addressable storage is disclosed. For example, first and second persistent memories store first and second pluralities of pages, both associated with a plurality of page states in a mirror state log in a third persistent memory. A mirror engine executing on a processor with a processor cache detects a write fault associated with the first page of the first plurality of pages and in response, updates a first page state to a dirty-nosync state. A notice of a flush operation of the processor cache associated with first data is received. The first data becomes persistent in the first page of the first plurality of pages after the flush operation; then the first page state is updated to a clean-nosync state. The first data is then copied to the first page of the second plurality of pages; then the first page state is updated to a clean-sync state.

SYSTEM AND METHOD FOR LOG METADATA AUTOMATIC RECOVERY ON DUAL CONTROLLER STORAGE SYSTEM
20200250041 · 2020-08-06 ·

A method, computer program product, and computer system for executing an automatic recovery of log metadata. A secondary storage processor may request one or more log metadata buffer values from a first buffer used by a primary storage processor. The secondary storage processor may update one or more log metadata buffer values from a second buffer used by the secondary storage processor.

SOLID-STATE DRIVE AND DATA PROCESSING METHOD AND SYSTEM THEREOF

The present disclosure discloses a method, a system, and a solid-state drive for data processing. The method includes detecting the user operations on a first storage area which is visible to an operating system in a solid-state drive; if the user operation is a reading or writing operation, keeping the data of the first storage area and the data of a mirrored data storage area of a second storage area to be synchronization; if the user operation is a deleting operation or a TRIM operation, keeping the data of the first storage area and the data of the mirrored data storage area of the second storage area to be synchronization, and backing up the deleted data from the first storage area to a deleted data storage area of the second storage area. The second storage area is set to be invisible to the operating system in the solid-state disk.

TECHNOLOGY TO ENABLE SECURE AND RESILIENT RECOVERY OF FIRMWARE DATA
20200226028 · 2020-07-16 ·

Systems, apparatuses and methods may provide for technology that conducts a first copy of firmware data from a first partition in a storage device to a second partition in the storage device, detects a recovery condition with respect to the firmware data in the first partition, and automatically conducts a second copy of the firmware data from the second partition to the first partition in response to the recovery condition. In one example, the firmware data defines one or more settings for firmware code.

Two level addressing in storage clusters
10649827 · 2020-05-12 · ·

Digital objects are stored and accessed within a fixed content storage cluster by using a page mapping table and a pages index. A stream is read from the cluster by using a portion of its unique identifier as a key into the page mapping table. The page mapping table indicates a node holding a pages index indicating where the stream is stored. A stream is written by storing the stream on any suitable node and then updating a pages index stored within the cluster responsible for knowing the location of digital objects having unique identifiers that fall within a particular address range. The cluster recovers from a node failure by first replicating streams from the failed node and reallocating a page mapping table to create a new pages index. The remaining nodes send records of the unique identifiers corresponding to objects they hold to the new pages index.

METHOD, DEVICE AND COMPUTER PROGRAM PRODUCT FOR STORAGE MANAGEMENT
20200133534 · 2020-04-30 ·

Techniques perform storage management. Such techniques involve: detecting a change of a size of storage space for a file system, the file system having one or more associated bitmaps, each active bit in the one or more bitmaps indicating data status in storage space not exceeding an upper size limit of the file system; in response to detecting the change, determining, based on the upper size limit, a first number of bits required for indicating the changed storage space; and in response to determining that the first number exceeds a second number of current active bits in the one or more bitmaps, allocating at least one additional active bit for the file system. Accordingly, the number of bits for indicating the file system can be dynamically adjusted based on the changes of the file system.

METHOD, DEVICE, AND PROGRAM PRODUCT FOR REDUCING DELAY IN I/O PROCESSING DUE TO MIRRORING OF CACHE DATA
20200133507 · 2020-04-30 ·

Techniques perform storage management. Such techniques involve: in response to receiving, at a first processor of a storage system, a write request from a host for writing user data, caching the user data in a first cache of the first processor, and generating cache metadata in the first cache, the cache metadata including information associated with writing the user data; sending the user data and the cache metadata to a second cache of a second processor, for the second processor to perform, in the second cache, data processing related to cache mirroring by the second processor; and sending, to the host, an indication of completion of the write request, without waiting for the second processor to complete the data processing. Such techniques can improve system performance such as reducing latency, and shortening length of the I/O handling path of write request.

HANDLING UNCORRECTED MEMORY ERRORS INSIDE A KERNEL TEXT SECTION THROUGH INSTRUCTION BLOCK EMULATION

A technique for handling uncorrected memory errors (UEs) inside a kernel text section, the kernel text section being stored in a memory that is operably coupled to a CPU executing kernel program instructions. In an embodiment, a UE is detected that affects the kernel text section. The current instruction affected by the UE is identified. The UE-affected instruction is recovered by loading a copy thereof into the memory from a kernel image maintained in persistent storage. The UE-affected instruction is emulated using the copy of the UE-affected instruction. The instruction pointer of the CPU is then incremented to point to a next instruction in the memory that would normally be executed by the UE-affected instruction had there been no UE.

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.

RECONSTRUCTION HARD DISK ARRAY AND RECONSTRUCTION METHOD BASED ON HARD DISK ARRAY
20190354439 · 2019-11-21 · ·

A reconstruction method based on a hard disk array comprises determining whether at least one damaged hard disk among a plurality of hard disks of the hard disk array has been replaced by at least one to-be-reconstructed hard disk, and writing a backup data corresponding to the at least one damaged hard disk into the at least one to-be-reconstructed hard disk according to a mapping table and information of the at least one damaged hard disk.