IP Library Granted Patent US 11,507,455
Granted Patent B2
US 11,507,455 · App. 17/236,549 · Granted Nov 22, 2022

Detecting and recovering a corrupted non-volatile random-access memory

Inventors: Gowtham Moorthy (Namakkal District, IN); Annappa Kumar MN (Bangalore, IN); Shekar Babu Suryanarayana (Bangalore, IN)
Assignee: Dell Products L.P.
G06F11/1068G06F11/0772G06F11/1438G06F11/1471G06F2201/84
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,507,455
App. No.
17/236,549
Granted
Nov 22, 2022
Kind
B2
Abstract

An information handling system includes a memory manager that may detect corruption of a non-volatile random-access memory, and perform a recovery process of the non-volatile random-access memory that includes determining whether a header of the non-volatile random-access memory is corrupted. If the header is not corrupted, then a data region associated with the header may be recovered from recovery data values in a spare store in the non-volatile random-access memory. If the header is corrupted, then the header and the data region may be recovered from default data values.

Claims (41)

1. A method comprising:

detecting, by a processor, a corruption of a non-volatile random-access memory of an information handling system;

performing a recovery process of the non-volatile random-access memory that includes:

determining whether a header of the non-volatile random-access memory is corrupted;

if the header is not corrupted, then recovering a data region associated with the header using recovery data values in a spare store of the non-volatile random-access memory;

if the header is corrupted, then recovering the header and the data region using default data values; and

resetting complementary metal-oxide-semiconductor/embedded controller values; and

rebooting the information handling system.

2. The method of claim 1 , further comprising authenticating recovered data values loaded in the non-volatile random-access memory prior to the rebooting.

3. The method of claim 1 , initializing system properties to support the recovered data values.

4. The method of claim 1 , wherein performing the recovery process further includes recovering the header and the data region using last known good data values.

5. The method of claim 1 , wherein the corruption is detected during system boot.

6. The method of claim 1 , wherein the corruption is detected at runtime.

7. The method of claim 1 , wherein the corruption is detected after a reclaim operation of the non-volatile random-access memory.

8. The method of claim 1 , wherein the recovery process is performed after failure to initialize a variable service.

9. The method of claim 1 , further comprising regenerating the header from a bit pattern of a snapshot of the header.

10. The method of claim 9 , wherein the bit pattern includes delta between the snapshot and another snapshot of the header.

11. An information handling system, comprising:

a non-volatile random-access memory device; and

a memory manager interfaced with the non-volatile random-access memory device, the memory manager configured to:

detect corruption of the non-volatile random-access memory device; and

perform a recovery process of the non-volatile random-access memory device that includes:

determine whether a header of the non-volatile random-access memory device is corrupted;

if the header is not corrupted, then recover a data region associated with the header from recovery data values in a spare store in the non-volatile random-access memory device;

if the header is corrupted, then recover the header and the data region from default data values; and

reset complementary metal-oxide-semiconductor/embedded controller values.

12. The information handling system of claim 11 , wherein the memory manager is further configured to authenticate recovered data values of the non-volatile random-access memory device prior to a reboot.

13. The information handling system of claim 11 , wherein the memory manager is further configured to regenerate the header from a bit pattern of a snapshot of the header.

14. The information handling system of claim 13 , wherein the bit pattern includes delta between the snapshot and another snapshot of the header.

15. The information handling system of claim 11 , wherein the corruption is detected during system boot.

16. The information handling system of claim 11 , wherein the corruption is detected at runtime.

17. A non-transitory computer-readable medium including code that when executed performs a method, the method comprising:

detecting corruption of a non-volatile random-access memory of an information handling system; and

performing a recovery process of the non-volatile random-access memory that includes:

determining whether a header of the non-volatile random-access memory is corrupted;

if the header is not corrupted, then recovering a data region associated with the header from recovery data values in a spare store in the non-volatile random-access memory;

if the header is corrupted, then recovering the header and the data region from default data values; and

resetting complementary metal-oxide-semiconductor/embedded controller values.

18. The method of claim 17 , further comprising authenticating recovered data values of the non-volatile random-access memory prior to a rebooting.

19. The method of claim 17 , further comprising regenerating the header from a bit pattern of a snapshot of the header.

20. The method of claim 19 , wherein the bit pattern includes delta between the snapshot and another snapshot of the header.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0280) 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/0255 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0124) 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/0012 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0001) 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 062021/0844 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058297/0332 →
SECURITY INTEREST Recorded May 19, 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 056295/0124 →
SECURITY INTEREST Recorded May 19, 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 056295/0001 →
SECURITY INTEREST Recorded May 19, 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 056295/0280 →
CORRECTIVE ASSIGNMENT TO CORRECT THE MISSING PATENTS THAT WERE ON THE ORIGINAL SCHEDULED SUBMITTED BUT NOT ENTERED PREVIOUSLY RECORDED AT REEL: 056250 FRAME: 0541. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 17, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056311/0781 →
SECURITY AGREEMENT Recorded May 14, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056250/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2021
From: MOORTHY, GOWTHAM; KUMAR MN, ANNAPPA; SURYANARAYANA, SHEKAR BABU
To: DELL PRODUCTS, LP
Reel/Frame 055991/0854 →