Dynamic Transitioning of Protection Information in Array Systems
US-2016378363-A1 · Dec 29, 2016 · US
US10564903B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10564903-B2 |
| Application number | US-201615153874-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 13, 2016 |
| Priority date | May 13, 2016 |
| Publication date | Feb 18, 2020 |
| Grant date | Feb 18, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A storage controller is provided. The storage controller includes circuitry configured to utilize a format command to change a storage volume coupled to the storage controller from a first format to a second format and memory configured to store a data structure for first and second format indications for the storage volume. The storage controller determines if a selected band is initialized to the second format, and if the selected band is not initialized to the second format, the storage controller initializes the selected band to the second format and updates the data structure to indicate the selected band is initialized to the second format.
Opening claim text (preview).
We claim: 1. A storage controller, comprising: circuitry configured to utilize a format command to change a first storage volume coupled to the storage controller from a first format to a second format, the first storage volume comprising a first plurality of bands each comprising a first band size different from a second band size, the second band size corresponding to a second storage volume comprising a second plurality of bands each comprising the second band size, one or more of the first and second band sizes selected in order to equalize band format times across the first and second storage volumes, each band of the first and second plurality of bands comprising an integer number of sectors; and memory configured to store the format command and a data structure comprising a single high water mark address variable that always tracks a demarcation between bands in the first format and bands in the second format, the format command resident in the memory and configured to be invoked by a user or application program configured to control the storage controller, the storage controller: selecting an initial band comprising one of a lowest or a highest starting Logical Block Address within the first storage volume, the initial band having the lowest starting Logical Block Address within the first storage volume selected in response to an initialization direction variable in a first state and the initial band having the highest starting Logical Block Address within the first storage volume selected in response to the initialization direction variable in a second state opposite to the first state; and determining if the selected band is initialized to the second format, and in response to the storage controller determining the selected band is not initialized to the second format, the storage controller: initializing the selected band to the second format; and updating the data structure to indicate the selected band is initialized to the second format. 2. The storage controller of claim 1 , wherein in response to the storage controller determining the selected band is initialized to the second format, the storage controller: calculating if there are one or more additional bands of the first plurality of bands to initialize to the second format, and in response: choosing a next band of the first plurality of bands to initialize, the next band being adjacent to the selected band in a direction of initialization corresponding to the initialization direction variable, wherein in response to the next band was not previously initialized to the second format, the storage controller repeats the determining, initializing, updating, calculating, and choosing steps until all bands of the first plurality of bands have been initialized to the second format, and if there are no-additional bands of the first plurality of bands to initialize to the second format, the storage controller creating a notification that the first storage volume is in the second format. 3. The storage controller of claim 1 , wherein prior to issuing the format command to the first storage volume, the storage controller: initializes the data structure to a state identifying all bands of the first plurality of bands as one of uninitialized and initialized to the first format. 4. The storage controller of claim 2 , wherein the notification that the first storage volume is in the second format comprises at least one of the storage controller: creates an event in a management log; and notifies a user that initialization of the first storage volume to the second format is complete. 5. The storage controller of claim 1 , wherein the storage controller allows read and write access to the first storage volume while the first storage volume is being initialized to the second format. 6. The storage controller of claim 5 , wherein in response to the storage controller receiving a first write request to the selected band, the storage controller: determining whether the selected band is one of in the first format and initialization to the second format has not been started, currently being initialized to the second format, or previously initialized to the second format, wherein in response to the storage controller determining the selected band is in the first format and initialization to the second format has not been started, the storage controller: locks the selected band; writes data corresponding to the first write request to logical block addresses of the selected band corresponding to the first write request; and initializes data of the selected band having logical block addresses that do not correspond to the first write request, wherein in response to the storage controller determining the selected band is currently being initialized to the second format, the storage controller: delays the first write request to the selected band until the initialization of the selected band to the second format is completed, wherein in response to the storage controller determining the selected band was previously initialized to the second format, the storage controller: completes the first write request to the selected band. 7. The storage controller of claim 5 , wherein in response to the storage controller receiving a read request to the selected band while the selected band is being initialized to the second format, the storage controller either: provides predetermined read data in response to the read request; or waits to provide read data until initialization of the selected band to the second format is completed. 8. The storage controller of claim 1 , wherein one of: the first format comprises one of unformatted, no Protection Information (PI), and a different type of Protection Information (PI) from the second format, and the second format comprises Protection Information (PI); and the first format comprises Protection Information (PI) and the second format comprises no Protection Information (PI). 9. A method comprising: issuing, by a hardware storage controller, a format command changing a first storage volume from a first format to a second format, the first storage volume comprising a first plurality of bands each comprising a first band size different from a second band size, the second band size corresponding to a second storage volume comprising a second plurality of bands each comprising the second band size, one or more of the first and second band sizes selected in order to equalize band format times across the first and second storage volumes, each band of the first and second plurality of bands comprising an integer number of sectors, the format command resident in a memory of the hardware storage controller and configured to be invoked by a user or application program configured to control the hardware storage controller; selecting a band of the first storage volume to initialize, the selected band comprising one of a lowest or a highest starting Logical Block Address within the first storage volume, the selected band having the lowest starting Logical Block Address within the first storage volume selected in response to an initialization direction variable in a first state and the selected band having the highest starting Logical Block Address within the first storage volume selected in response to the initialization direction variable in a second state opposite to the first state; determining, by the hardware storage controller, if the selected band is initialized to the second format, and in response to determining the selected band is not initialized to the second format: initializing the selected band to the second format; and updating a data structure in the memory, the data structure comprising a single address variable that always tr
Disk arrays, e.g. RAID, JBOD · CPC title
Format or protocol conversion arrangements · CPC title
at device level, e.g. emulation of a storage device or system · CPC title
Saving storage space on storage systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.