IP Library Granted Patent US 7,340,652
Granted Patent B2
US 7,340,652 · App. 10/837,302 · Granted Mar 4, 2008

Invalidation of storage control unit cache metadata

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,340,652
App. No.
10/837,302
Granted
Mar 4, 2008
Kind
B2
Abstract

Method, apparatus and program product are provided for the invalidation of faulty metadata in a storage controller coupled to a host device. Faulty metadata may include metadata which no longer matches the associated customer data tracks stored on a DASD or other storage device. When faulty metadata is detected, metadata tracks are selected to be invalidated. A command is received through a host interface, without the controller being taken off-line from the host, and the specified metadata tracks are invalidated. Subsequently, the invalidated metadata tracks are rebuilt. The disclosed method, apparatus and program product invalidate the faulty metadata with reduced impact on normal host/controller I/O operations.

Claims (59)

1. A method for rebuilding metadata in a data storage system having a storage control unit coupled to a host device through a host interface, the metadata formatted into one or more metadata tracks each containing information on customer data stored in one or more corresponding customer data tracks, the method comprising:

detecting an occurrence of an error in metadata comprising a mismatch between a metadata track and an associated customer data track by detecting a warmstart for each of a plurality of customer data tracks;

identifying a range of customer tracks in which the error is likely to have occurred;

issuing a command through the host interface to invalidate the metadata associated with the identified range of customer tracks;

invalidating the metadata associated with the identified range of customer tracks while the storage control unit remains on-line with the host device; and

rebuilding the invalidated metadata tracks.

2. The method of claim 1 , wherein detecting an occurrence of an error in metadata comprises detecting repeated warmstarts.

3. The method of claim 1 , wherein detecting an occurrence of an error in metadata comprises detecting a period of storage control unit unavailability resulting from repeated warmstarts.

4. The method of claim 1 , wherein detecting an occurrence of an error in metadata comprises detecting a hardware detected error.

5. The method of claim 1 , wherein receiving an invalidating command comprises receiving a command to invalidate one of: a single metadata track, a specified range of metadata tracks, a plurality of metadata tracks associated with a volume of customer data, and all of the metadata tracks.

6. A system for rebuilding metadata, comprising:

a storage controller coupled to a host device through a host interface;

a memory for storing a plurality of metadata tracks, each metadata track associated with at least one customer track stored on a storage device coupled to the storage controller; and

control logic implemented within the storage controller, comprising:

means for detecting an occurrence of an error in metadata comprising a mismatch between a metadata track and an associated customer data track by detecting a warmstart for each of a plurality of customer data tracks;

means for identifying a range of customer tracks in which the error is likely to have occurred;

means for issuing a command through the host interface to invalidate the metadata associated with the identified range of customer tracks;

means for invalidating the metadata associated with the identified tracks while the storage control unit remains on-line with the host device; and

means for rebuilding the invalidated metadata tracks.

7. The system of claim 6 , wherein the means for detecting an occurrence of an error in metadata comprises means for detecting repeated warmstarts.

8. The system of claim 6 , wherein the means for detecting an occurrence of an error in metadata comprises means for detecting a period of storage control unit unavailability resulting from repeated warmstarts.

9. The system of claim 6 , wherein the means for detecting an occurrence of an error in metadata comprises means for detecting a hardware detected error.

10. The system of claim 6 , wherein the means for receiving an invalidating command comprises means for receiving a command to invalidate one of: a single metadata track, a specified range of metadata tracks, a plurality of metadata tracks associated with a volume of customer data, and all of the metadata tracks.

11. A data processing system, comprising:

a storage controller coupled to a host device through a host interface;

a storage device for storing customer data formatted in customer tracks;

a memory for storing a plurality of metadata tracks, each metadata track associated with at least one customer track; and

a processor programmed to execute instructions for:

detecting an occurrence of an error in metadata comprising a mismatch between a metadata track and an associated customer data track by detecting a warmstart for each of a plurality of customer data tracks;

identifying a range of customer tracks in which the error is likely to have occurred;

receiving a command through the host interface to invalidate the metadata associated with the identified range of customer tracks;

invalidating the metadata associated with the identified range of customer tracks while the storage control unit remains on-line with the host device; and

rebuilding the invalidated metadata tracks.

12. The data processing system of claim 11 , wherein the instructions for detecting an occurrence of an error in metadata comprise instructions for detecting repeated warmstarts.

13. The data processing system of claim 11 , wherein the instructions for detecting an occurrence of an error in metadata comprise instructions for detecting a period of storage control unit unavailability resulting from repeated warmstarts.

14. The data processing system of claim 11 , wherein the instructions for detecting an occurrence of an error in metadata comprise instructions for detecting a hardware detected error.

15. The data processing system of claim 11 , wherein the instructions for receiving an invalidating command comprise instructions for receiving a command to invalidate one of: a single metadata track, a specified range of metadata tracks, a plurality of metadata tracks associated with a volume of customer data, and all of the metadata tracks.

16. A storage controller comprising:

a host interface coupled to a host device;

a storage interface coupled to a storage device on which customer data is stored as a plurality of customer data tracks;

a memory in which metadata is stored, as one or more metadata tracks, each metadata track comprising information on one or more associated customer data tracks;

means for detecting a mismatch between a metadata track and an associated customer data track by detecting a warmstart for each of a plurality of customer data tracks;

means for receiving a command through the host interface to invalidate one or more selected metadata tracks including the metadata track associated with the customer data track;

means for invalidating the one or more selected metadata tracks while the storage control unit remains on-line with the host device; and

means for rebuilding the one or more invalidated metadata tracks.

17. The storage controller of claim 16 , wherein the means for detecting an occurrence of an error in metadata comprises means for detecting a hardware detected error.

18. The storage controller of claim 16 , wherein the means for detecting a mismatch comprises means for detecting a period of storage control unit unavailability during from a plurality of warmstarts.

19. The storage controller of claim 16 , wherein the means for receiving an invalidating command comprises means for receiving a command to invalidate one of: a single metadata track, a specified range of metadata tracks, a plurality of metadata tracks associated with a volume of customer data, and all of the metadata tracks.

20. The storage controller of claim 16 , wherein the memory comprises a cache memory.

21. A computer program product of a computer readable medium usable with a programmable computer, the computer program product having computer-readable code embodied therein for processing metadata tracks stored in a memory of a data storage controller coupled to a host device through a host interface and to a storage device, the storage device storing customer data formatted as customer data tracks, each metadata track containing information on one or more associated customer data tracks, the computer-readable code comprising instructions for:

detecting an occurrence of an error in a metadata track comprising a mismatch between a metadata track and an associated customer data track by detecting a warmstart for each of a plurality of customer data tracks;

identifying a range of customer tracks in which the error is likely to have occurred;

receiving a command through the host interface to invalidate the metadata associated with the identified range of customer tracks;

invalidating the metadata associated with the identified range of customer tracks while the storage control unit remains on-line with the host device; and

rebuilding the invalidated metadata tracks.

22. The computer program product of claim 21 , wherein the instructions for detecting an occurrence of an error in metadata comprise instructions for detecting repeated warmstarts.

23. The computer program product of claim 21 , wherein the instructions for detecting an occurrence of an error in metadata comprise instructions for detecting a period of storage control unit unavailability resulting from repeated warmstarts.

24. The computer program product of claim 21 , wherein the instructions for detecting an occurrence of an error in metadata comprise instructions for detecting a hardware detected error.

25. The computer program product of claim 21 , wherein the instructions for receiving an invalidating command comprise instructions for receiving a command to invalidate one of: a single metadata track, a specified range of metadata tracks, a plurality of metadata tracks associated with a volume of customer data, and all of the metadata tracks.

Assignments (2)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: FACEBOOK, INC.
Reel/Frame 028015/0181 →