IP Library Granted Patent US 11,726,879
Granted Patent B2
US 11,726,879 · App. 17/372,973 · Granted Aug 15, 2023

Multiple block error correction in an information handling system

Inventors: Michael E. Brown (Austin, TX); Prashanth Giri (Round Rock, TX); Senthil Kumar V (Thanjavur, IN); Nagendra Varma Totakura (Round Rock, TX); Vasanth Venkataramanappa (Austin, TX)
Assignee: Dell Products L.P.
G06F11/1417G06F3/0604G06F3/0659G06F3/0673G06F11/1076G06F21/572G06F2221/033H04L9/32
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,726,879
App. No.
17/372,973
Granted
Aug 15, 2023
Kind
B2
Abstract

An information handling system includes a first memory and a baseboard management controller. The first memory stores a first firmware partition and a second firmware partition. The baseboard management controller includes a second memory. The baseboard management controller begins execution of a DM-Verity daemon, and performs periodic patrol reads of the first firmware partition. The baseboard management controller detects one or more block failures in the first firmware partition, and stores information associated with the one or more block failures in a message box of the second memory. In response to the entire first firmware partition being scanned, the baseboard management controller switches a boot partition from the first firmware partition to the second firmware partition, and initiates a reboot of the information handling system.

Claims (67)

1. An information handling system comprising:

a first memory to store a first firmware partition and a second firmware partition; and

a baseboard management controller including a second memory, the baseboard management controller to:

begin execution of a DM-Verity daemon;

perform periodic patrol reads of the first firmware partition;

detect one or more block failures in the first firmware partition;

store information associated with the one or more block failures in a message box of the second memory;

in response to the entire first firmware partition being scanned, switch a boot partition from the first firmware partition to the second firmware partition;

initiate a reboot of the information handling system; and

upon the reboot:

if a flag is set in the message box, then perform a full rescan of the first firmware partition; and

in response to the flag being set:

read the information in the message box of the second memory; and

based on the information read from the message box, determine the block failures in the first firmware partition.

2. The information handling system of claim 1 , the baseboard management controller further to:

read data from a block of the second firmware partition, wherein the block is associated with one of block failures in the first firmware partition; and

write the data from the block of the second firmware partition to the associated block failure of the first firmware partition.

3. The information handling system of claim 2 , wherein block of the second firmware partition is a cryptographically verified good block of backup data for the block failure of the first firmware partition.

4. The information handling system of claim 1 , wherein in response to data of all block failures of the first firmware partition being replaced by data in corresponding blocks of the second firmware partition, the baseboard management controller further to:

switch the boot partition from the second firmware partition to the first firmware partition; and

initiate the reboot of the information handling system.

5. The information handling system of claim 1 , wherein the baseboard management controller further to:

determine whether an error threshold of the message box has been exceeded; and

in response to the error threshold being exceeded, set a flag in the message box.

6. The information handling system of claim 1 , wherein in response to the reboot of the information handling system, the baseboard management controller further to:

utilize forward error correction to correct all of the block failures of the first firmware partition.

7. A method comprising:

beginning, by a processor of an information handling system, execution of a DM-Verity daemon;

performing periodic patrol reads of the first firmware partition;

detecting, via the DM-Verity daemon one or more block failures in a first firmware partition of the information handling system;

storing information associated with the block failures in a message box of a memory of the information handling system;

in response to the entire first firmware partition being scanned, switching a boot partition from the first firmware partition to a second firmware partition;

determining whether an error threshold of the message box has been exceeded;

in response to the error threshold being exceeded, setting a flag in the message box;

initiating a reboot of the information handling system; and

upon the reboot:

if a flag is set in the message box, then performing a full rescan of the first firmware partition; and

in response to the flag being set:

reading the information in the message box of the second memory; and

based on the information read from the message box, determining the block failures in the first firmware partition.

8. The method of claim 7 , further comprising:

reading data from a block of the second firmware partition, wherein the block is associated with one of block failures in the first firmware partition; and

writing the data from the block of the second firmware partition to the associated block failure of the first firmware partition.

9. The method of claim 8 , wherein block of the second firmware partition is a cryptographically verified good block of backup data for the block failure of the first firmware partition.

10. The method of claim 7 , wherein in response to data of all block failures of the first firmware partition being replaced by data in corresponding blocks of the second firmware partition, the method further comprises:

switching the boot partition from the second firmware partition to the first firmware partition; and

initiating the reboot of the information handling system.

11. The method of claim 7 , wherein in response to the rebooting of the information handling system, the method further comprises:

utilizing forward error correction to correct all of the block failures of the first firmware partition.

12. A method comprising:

beginning, by a processor of an information handling system, execution of a DM-Verity daemon;

performing periodic patrol reads of the first firmware partition;

detecting, via the DM-Verity daemon one or more block failures in a first firmware partition of the information handling system;

storing information associated with the one or more block failures in a message box of a memory of the information handling system;

in response to the entire first firmware partition being scanned, switching a boot partition from the first firmware partition to a second firmware partition;

initiating a reboot of the information handling system; and

upon the reboot:

if a flag is set in the message box, then performing a full rescan of the first firmware partition; and

in response to the flag being set:

reading the information in the message box of the second memory; and

based on the information read from the message box, determining the block failures in the first firmware partition.

13. The method of claim 12 , further comprising:

reading data from a block of the second firmware partition, wherein the block is associated with one of block failures in the first firmware partition; and

writing the data from the block of the second firmware partition to the associated block failure of the first firmware partition.

14. The method of claim 13 , wherein block of the second firmware partition is a cryptographically verified good block of backup data for the block failure of the first firmware partition.

15. The method of claim 12 , wherein in response to the rebooting of the information handling system, the method further comprises:

utilizing forward error correction to correct all of the block failures of the first firmware partition.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 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 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 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 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 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 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2021
From: BROWN, MICHAEL E.; GIRI, PRASHANTH; KUMAR V, SENTHIL; TOTAKURA, NAGENDRA VARMA; VENKATARAMANAPPA, VASANTH VENKATARAMANAPPA; VENKATARAMANAPPA, VASANTH
To: DELL PRODUCTS, LP
Reel/Frame 056825/0490 →
Continuity (1)
Related Publication 20230008412A1 · Jan 12, 2023