Using cache to manage errors in primary storage

US9798623B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9798623-B2
Application numberUS-201213469801-A
CountryUS
Kind codeB2
Filing dateMay 11, 2012
Priority dateMay 11, 2012
Publication dateOct 24, 2017
Grant dateOct 24, 2017

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.

An occurrence of at least one storage error is determined in an addressable portion of a primary storage storing a block of data. In response to determining the occurrence of the at least one storage error, it is determined whether the block of data is available in cache storage. In response to determining the block of data is cached, the cached block of data is used rather than the block of data from the addressable portion of the primary storage.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: performing a background scan of a data storage device comprising, for each cached block of data in cache storage determining an occurrence of at least one storage error in an addressable portion of a primary storage storing a block of data associated with the cached block of data, the cached block of data having been stored in the cache storage before the occurrence of the at least one storage error, wherein the cache storage is arranged to mirror a portion of the primary storage to speed up host data access; and in response to determining the occurrence of the at least one storage error, using the cached block of data to perform a recovery operation on the primary storage. 2. The method of claim 1 , wherein the primary storage comprises a magnetic storage. 3. The method of claim 1 , wherein the cache storage comprises a non-volatile, solid state memory. 4. The method of claim 1 , wherein using the cached block of data further comprises using the cached block of data rather than the block of data from the addressable portion of the primary storage to perform a host data access operation. 5. The method of claim 1 , wherein the recovery operation comprises moving the block of data to a new location on the primary storage. 6. The method of claim 1 , further comprising preventing the cached block of data from being modified until the recovery operation can be performed. 7. The method of claim 1 , wherein the at least one storage error comprises an unrecoverable error. 8. An apparatus comprising: a controller capable of being coupled to a primary storage and a cache, wherein the cache is arranged to mirror a portion of the primary storage to speed up host data access, the controller configured to: perform a background scan for each cached block of data in the cache, the background scan comprising determining an occurrence of at least one storage error in an addressable portion of the primary storage storing a block of data associated with the cached block of data, the block of data having been stored in the cache before the occurrence of the at least one storage error; and in response to determining the occurrence of the at least one storage error, use the cached block of data to perform a recovery operation on the primary storage. 9. The apparatus of claim 8 , wherein the primary storage comprises a magnetic storage. 10. The apparatus of claim 8 , wherein the cache comprises a non-volatile, solid state memory. 11. The apparatus of claim 8 , wherein using the cached block of data further comprises using the cached block of data rather than the block of data from the addressable portion of the primary storage to perform a host data access operation. 12. The apparatus of claim 8 , wherein the recovery operation comprises moving the block of data to a new location on the primary storage. 13. The apparatus of claim 8 , wherein the controller is further configured to prevent the cached block of data from being modified until the recovery operation can be performed. 14. The apparatus of claim 8 , wherein the at least one storage error comprises an unrecoverable error. 15. The apparatus of claim 8 , wherein the apparatus comprises a hybrid disk drive. 16. A method comprising: causing a cached block of data to be stored in a cache in response to a first host data access operation, wherein the cache is arranged to mirror a portion of a primary storage to speed up the first host data access operation, the cached block of data associated with a first block of data in the primary storage; in response to a second host data access operation after the first host data access operation, accessing a second block of data directly from the primary storage, wherein the second block of data encompasses the first block of data; in response to determining at least one storage error affecting a portion of the second block of data, determining whether an associated portion is available in the cached block of data; and in response to determining the associated portion is available, using the associated portion of the cached block of data rather than the portion of the second block of data. 17. The method of claim 16 , wherein using the cached block of data comprises using the cached block of data to perform the second host data access operation. 18. The method of claim 16 , wherein using the cached block of data comprises using the cached block of data to perform a recovery operation on the primary storage. 19. The method of claim 1 , wherein the background scan occurs during an idle time of the data storage device. 20. The method of claim 3 , wherein the background scan further comprises: determining an error in at least one of the cached blocks of data; and in response thereto, use the block of data in the primary storage associated with the cached block of data to refresh or relocate the cached block of data. 21. The method of claim 1 , wherein the cached block of data was stored in the cache storage in response to a host data access request before the occurrence of the at least one storage error.

Assignees

Inventors

Classifications

  • Error detection or correction; Testing {, e.g. of drop-outs} · CPC title

  • Audio or video recording; Data buffering arrangements (G11B20/12 - G11B20/18 take precedence) · CPC title

  • at system level · 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 US9798623B2 cover?
An occurrence of at least one storage error is determined in an addressable portion of a primary storage storing a block of data. In response to determining the occurrence of the at least one storage error, it is determined whether the block of data is available in cache storage. In response to determining the block of data is cached, the cached block of data is used rather than the block of da…
Who is the assignee on this patent?
Yulizar Yunaldi, Friendshuh Luke W, Seagate Technology Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/1415. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 24 2017 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 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).