IP Library Granted Patent US 11,314,463
Granted Patent B2
US 11,314,463 · App. 16/832,462 · Granted Apr 26, 2022

Firmware activation in a RAID storage environment

Inventors: Smruti Ranjan Debata (Basavanagar, IN); Muniswamy Setty K S (Bangalore, IN); Santosh Gore (Bangalore, IN)
Assignee: Dell Products L.P.
G06F3/0689G06F3/061G06F3/0632G06F3/0653G06F8/65
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 11,314,463
App. No.
16/832,462
Granted
Apr 26, 2022
Kind
B2
Abstract

Methods, systems, and computer programs encoded on computer storage medium, for performing firmware activation, including obtaining input/output (I/O) metrics of the disks; determining an index value for the disk based on a disk weighted index (DWI); determining a DWI value for the array of disks based on the index value for each disk of the array of disks; comparing the DWI value for the array of disks to a DWI threshold; determining that the DWI value for a first array of disks is greater than the DWI threshold, and in response: aggregating the I/O metrics for each disk of the first array of disks; comparing the aggregated I/O metrics for the first array of disks to an activation threshold; determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold, and in response triggering firmware activation for the first array of disks.

Claims (79)

1. A computer-implemented method, comprising:

obtaining, for each individual disk of a plurality of arrays of disks, input/output (I/O) metrics of the disks;

determining, for each individual disk of each array of disks, an index value for the disk based on a disk weighted index (DWI), the DWI associating index values with respective types of disks;

determining, for each array of disks of the plurality of arrays of disks, a DWI value for the array of disks based on the index value for each individual disk of the array of disks;

comparing, for each array of disks of the plurality of arrays of disks, the DWI value for the array of disks to a DWI threshold;

determining, based on the comparing, that the DWI value for a first array of disks is greater than the DWI threshold, and in response:

aggregating the I/O metrics for each individual disk of the first array of disks;

comparing the aggregated I/O metrics for the first array of disks to an activation threshold;

determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold;

in response to determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold, triggering firmware activation for the first array of disks, and ii) updating, based on triggering the firmware activation, firmware for the first array of disks; and

in response to determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold, re-obtaining the I/O metrics of the first array of disks and determining whether the re-obtained I/O metrics are less than the activation threshold.

2. The computer-implemented method of claim 1 , further comprising:

determining, based on the comparing, that the DWI value for a second array of disks is less than the DWI threshold, and in response, triggering firmware activation for the second array of disks.

3. The computer-implemented method of claim 1 , wherein the activation threshold is based on an usage of the first array of disks being substantially zero.

4. The computer-implemented method of claim 1 , further comprising in response to determining that the DWI value for the first array of disks is greater than the DWI threshold:

determining that an activation counter associated with the first array of disks is greater than or equal to a counter threshold; and

in response to determining i) that the DWI value for the first array of disks is greater than the DWI threshold and ii) that the activation counter associated with the first array of disks is greater than or equal to the counter threshold, triggering firmware activation for the first array of disks.

5. The computer-implemented method of claim 1 , further comprising in response to determining that the DWI value for the first array of disks is greater than the DWI threshold:

determining that an activation counter associated with the first array of disks is less than a counter threshold; and

in response to determining that the activation counter associated with the first array of disks is less than the counter threshold, increasing the activation counter.

6. The computer-implemented method of claim 5 , further comprising:

in response to determining that i) that the DWI value for the first array of disks is greater than the DWI threshold and ii) that the activation counter associated with the first array of disks is less than or equal to the counter threshold, determining that a time period associated with the first array of disks is greater than a time threshold; and

in response to determining that the time period associated with the first array of disks is greater than the time threshold, triggering firmware activation for the first array of disks.

7. The computer-implemented method of claim 1 , further comprising:

determining that a third array of disks of the plurality of arrays of disks includes a mirrored array of disks, and in response:

triggering parallel firmware activation for a first group of disks of the third array of disks; and

after triggering parallel firmware activation for the first group of disks of the third array of disks, triggering parallel firmware activation for a second group of disks of the third array of disks, the second group of disks separate from the first group of disks.

8. An information handling system, comprising:

a memory media storing instructions;

a processor in communication with the memory media to execute the instructions to perform operations comprising:

obtaining, for each individual disk of a plurality of arrays of disks, input/output (I/O) metrics of the disks;

determining, for each individual disk of each array of disks, an index value for the disk based on a disk weighted index (DWI), the DWI associating index values with respective types of disks;

determining, for each array of disks of the plurality of arrays of disks, a DWI value for the array of disks based on the index value for each individual disk of the array of disks;

comparing, for each array of disks of the plurality of arrays of disks, the DWI value for the array of disks to a DWI threshold;

determining, based on the comparing, that the DWI value for a first array of disks is greater than the DWI threshold, and in response:

aggregating the I/O metrics for each individual disk of the first array of disks;

comparing the aggregated I/O metrics for the first array of disks to an activation threshold;

determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold;

in response to determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold, triggering firmware activation for the first array of disks, and ii) updating, based on triggering the firmware activation, firmware for the first array of disks; and

in response to determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold, re-obtaining the I/O metrics of the first array of disks and determining whether the re-obtained I/O metrics are less than the activation threshold.

9. The information handling system of claim 8 , the operations further comprising:

determining, based on the comparing, that the DWI value for a second array of disks is less than the DWI threshold, and in response, triggering firmware activation for the second array of disks.

10. The information handling system of claim 8 , wherein the activation threshold is based on an usage of the first array of disks being substantially zero.

11. The information handling system of claim 8 , the operations further comprising in response to determining that the DWI value for the first array of disks is greater than the DWI threshold:

determining that an activation counter associated with the first array of disks is greater than or equal to a counter threshold; and

in response to determining i) that the DWI value for the first array of disks is greater than the DWI threshold and ii) that the activation counter associated with the first array of disks is greater than or equal to the counter threshold, triggering firmware activation for the first array of disks.

12. The information handling system of claim 8 , the operations further comprising in response to determining that the DWI value for the first array of disks is greater than the DWI threshold:

determining that an activation counter associated with the first array of disks is less than a counter threshold; and

in response to determining that the activation counter associated with the first array of disks is less than the counter threshold, increasing the activation counter.

13. The information handling system of claim 12 , the operations further comprising:

in response to determining that i) that the DWI value for the first array of disks is greater than the DWI threshold and ii) that the activation counter associated with the first array of disks is less than or equal to the counter threshold, determining that a time period associated with the first array of disks is greater than a time threshold; and

in response to determining that the time period associated with the first array of disks is greater than the time threshold, triggering firmware activation for the first array of disks.

14. The information handling system of claim 8 , the operations further comprising:

determining that a third array of disks of the plurality of arrays of disks includes a mirrored array of disks, and in response:

triggering parallel firmware activation for a first group of disks of the third array of disks; and

after triggering parallel firmware activation for the first group of disks of the third array of disks, triggering parallel firmware activation for a second group of disks of the third array of disks, the second group of disks separate from the first group of disks.

15. A non-transitory computer-readable medium storing software comprising instructions executable by one or more computers which, upon such execution, cause the one or more computers to perform operations comprising:

obtaining, for each individual disk of a plurality of arrays of disks, input/output (I/O) metrics of the disks;

determining, for each individual disk of each array of disks, an index value for the disk based on a disk weighted index (DWI), the DWI associating index values with respective types of disks;

determining, for each array of disks of the plurality of arrays of disks, a DWI value for the array of disks based on the index value for each individual disk of the array of disks;

comparing, for each array of disks of the plurality of arrays of disks, the DWI value for the array of disks to a DWI threshold;

determining, based on the comparing, that the DWI value for a first array of disks is greater than the DWI threshold, and in response:

aggregating the I/O metrics for each individual disk of the first array of disks;

comparing the aggregated I/O metrics for the first array of disks to an activation threshold;

determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold;

in response to determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold, triggering firmware activation for the first array of disks, and ii) updating, based on triggering the firmware activation, firmware for the first array of disks; and

in response to determining that the aggregated I/O metrics for the first array of disks is less than the activation threshold, re-obtaining the I/O metrics of the first array of disks and determining whether the re-obtained I/O metrics are less than the activation threshold.

16. The computer-readable medium of claim 15 , the operations further comprising:

determining, based on the comparing, that the DWI value for a second array of disks is less than the DWI threshold, and in response, triggering firmware activation for the second array of disks.

17. The computer-readable medium of claim 15 , wherein the activation threshold is based on an usage of the first array of disks being substantially zero.

18. The computer-readable medium of claim 15 , the operations further comprising in response to determining that the DWI value for the first array of disks is greater than the DWI threshold:

determining that an activation counter associated with the first array of disks is greater than or equal to a counter threshold; and

in response to determining i) that the DWI value for the first array of disks is greater than the DWI threshold and ii) that the activation counter associated with the first array of disks is greater than or equal to the counter threshold, triggering firmware activation for the first array of disks.

19. The computer-readable medium of claim 15 , the operations further comprising in response to determining that the DWI value for the first array of disks is greater than the DWI threshold:

determining that an activation counter associated with the first array of disks is less than a counter threshold; and

in response to determining that the activation counter associated with the first array of disks is less than the counter threshold, increasing the activation counter.

20. The computer-readable medium of claim 19 , the operations further comprising:

in response to determining that i) that the DWI value for the first array of disks is greater than the DWI threshold and ii) that the activation counter associated with the first array of disks is less than or equal to the counter threshold, determining that a time period associated with the first array of disks is greater than a time threshold; and

in response to determining that the time period associated with the first array of disks is greater than the time threshold, triggering firmware activation for the first array of disks.

Assignments (11)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2020
From: DEBATA, SMRUTI RANJAN; K S, MUNISWAMY SETTY; GORE, SANTOSH
To: DELL PRODUCTS L.P.
Reel/Frame 052245/0623 →
Continuity (1)
Related Publication 20210303217A1 · Sep 30, 2021