Preventing data corruption and single point of failure in a fault-tolerant memory

US10402287B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10402287-B2
Application numberUS-201515500064-A
CountryUS
Kind codeB2
Filing dateJan 30, 2015
Priority dateJan 30, 2015
Publication dateSep 3, 2019
Grant dateSep 3, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

According to an example, data corruption and single point of failure is prevented in a fault-tolerant memory fabric with multiple redundancy controllers by granting, by a parity media controller, a lock of a stripe to a redundancy controller to perform a sequence on the stripe. The lock may be broken in response to determining a failure of the redundancy controller prior to completing the sequence. In response to breaking the lock, the parity cacheline of the stripe may be flagged as invalid. Also, a journal may be updated to document the breaking of the lock.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for preventing data corruption and single point of failure in a fault-tolerant memory fabric with multiple redundancy controllers, the method comprising: granting, by a media controller, a first lock of a stripe to a first redundancy controller to perform a sequence on the stripe; breaking the first lock in response to determining a failure of the first redundancy controller prior to completing the sequence; flagging a parity cacheline of the stripe as invalid in response to breaking the first lock; and updating a journal to document the breaking of the first lock. 2. The method of claim 1 , wherein determining the failure of the first redundancy controller comprises determining that a duration of the first lock has exceeded a predetermined time threshold. 3. The method of claim 1 , wherein flagging the parity cacheline of the stripe further comprises granting a second lock for the stripe to a second redundancy controller. 4. The method of claim 3 , wherein granting the second lock for the stripe to the second redundancy controller comprises transmitting an indication that the parity cacheline of the stripe has been flagged as invalid with the grant of the second lock. 5. The method of claim 4 , wherein transmitting the indication further comprises triggering the second redundancy controller to initiate a rebuild sequence of the stripe. 6. The method of claim 1 , wherein updating the journal to document the breaking of the first lock further comprises: transmitting an entry of the journal to a firmware health monitor, wherein the transmitted entry triggers a rebuild sequence of the stripe by a second redundancy controller. 7. A media controller to prevent data corruption and single point of failure in a fault-tolerant memory fabric with multiple redundancy controllers, the media controller comprising: a lock grant module to grant a first lock for a stripe to a first redundancy controller; a duration determination module to determine that a duration of the first lock has exceeded a predetermined time threshold, a lock break module to break the first lock of the stripe; a flag module to flag a parity cacheline of the stripe as invalid; and a journal update module to update a journal to document the breaking of the first lock. 8. The media controller of claim 7 , wherein to flag the parity cacheline of the stripe, the flag module is to grant a second lock for the stripe to a second redundancy controller. 9. The media controller of claim 8 , wherein to grant the second lock for the stripe to the second redundancy controller, the lock grant module is to transmit an indication that the parity cacheline of the stripe has been flagged as invalid with the grant of the second lock. 10. The media controller of claim 9 , wherein to transmit the indication, the lock grant module is to initiate a rebuild sequence of the stripe. 11. The media controller of claim 7 , wherein to update the journal to document the breaking of the first lock, the journal update module is to: transmit an entry of the journal to a firmware health monitor, wherein the transmitted entry triggers a rebuild sequence of the stripe by a second redundancy controller. 12. A non-transitory computer readable medium to prevent data corruption and single point of failure in a fault-tolerant memory, including machine readable instructions executable by a processor to: break a first lock of a stripe in response to determining that a duration of the first lock has exceeded a predetermined time threshold; flag a parity cacheline of the stripe as invalid; and update a journal to document the breaking of the first lock. 13. The non-transitory computer readable medium of claim 12 , wherein to flag the parity cacheline of the stripe, the machine readable instructions are executable by the processor to: grant a second lock for the stripe to an operating redundancy controller; and transmit an indication that the parity cacheline of the stripe has been flagged as invalid with the grant of the second lock. 14. The non-transitory computer readable medium of claim 13 , wherein to transmit the indication, the machine readable instructions are executable by the processor to trigger the operating redundancy controller to initiate a rebuild sequence of the stripe. 15. The non-transitory computer readable medium of claim 12 , wherein to update the journal to document the breaking of the first lock, the machine readable instructions are executable by the processor to: update an entry of the journal to a firmware health monitor, wherein the entry triggers a rebuild sequence of the stripe by a second redundancy controller.

Assignees

Inventors

Classifications

  • G06F11/108Primary

    Parity data distribution in semiconductor storages, e.g. in SSD · CPC title

  • Techniques of failing over between control units · CPC title

  • Redundant storage or storage space (G06F11/2056 takes precedence) · CPC title

  • Real-time · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10402287B2 cover?
According to an example, data corruption and single point of failure is prevented in a fault-tolerant memory fabric with multiple redundancy controllers by granting, by a parity media controller, a lock of a stripe to a redundancy controller to perform a sequence on the stripe. The lock may be broken in response to determining a failure of the redundancy controller prior to completing the seque…
Who is the assignee on this patent?
Hewlett Packard Entpr Dev Lp
What technology area does this patent fall under?
Primary CPC classification G06F11/108. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 03 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).