IP Library Granted Patent US 10,838,815
Granted Patent B2
US 10,838,815 · App. 16/135,115 · Granted Nov 17, 2020

Fault tolerant and diagnostic boot

Inventor: Krishnakumar Narasimhan (Chennai, IN)
Assignee: DELL PRODUCTS L.P.
G06F11/1417G06F9/4403G06F11/0757G06F9/4401G06F2211/1097
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 10,838,815
App. No.
16/135,115
Granted
Nov 17, 2020
Kind
B2
Abstract

A method for processing data is provided that includes starting a processor from an off state and loading watchdog timer handler code into a processor memory. Executing the watchdog timer handler code and determining whether a catastrophic error has occurred during execution of the watchdog timer handler code. Invoking a system management module to update error code if it is determined that the catastrophic error has occurred and invoking a first phase dispatcher to set up a first stack frame associated with a first phase if it is determined that a catastrophic error has not occurred.

Claims (65)

1. A method for processing data, comprising:

starting a processor from an off state;

loading watchdog timer handler code into a processor memory;

executing the watchdog timer handler code;

determining whether a catastrophic error has occurred during execution of the watchdog timer handler code;

updating error code if it is determined that the catastrophic error has occurred; and

setting up a first stack frame associated with a first phase if it is determined that a catastrophic error has not occurred.

2. The method of claim 1 further comprising:

determining whether an error has occurred during execution of the first stack frame associated with the first phase; and

invoking a watchdog timer handler if the error has occurred during execution of the first stack frame.

3. The method of claim 1 further comprising:

determining whether a minimum boot path exists after execution of the first stack frame associated with the first phase; and

booting the processor using the minimum booth path if the minimum boot path exists.

4. The method of claim 1 further comprising setting up a second stack frame associated with a second phase if it is determined that a catastrophic error has not occurred during the first phase.

5. The method of claim 4 further comprising:

determining whether a minimum boot path exists after execution of the second stack frame associated with the second phase; and

booting the processor using the minimum booth path if the minimum boot path exists.

6. The method of claim 1 further comprising setting up a plurality of additional stack frames if it is determined that a catastrophic error has not occurred during a preceding phase.

7. The method of claim 6 further comprising:

determining whether a minimum boot path exists after execution of a last stack frame associated with a last phase; and

booting the processor using the minimum booth path if the minimum boot path exists.

8. The method of claim 1 further comprising:

determining whether execution of the first phase is complete; and

reinitializing a watchdog timer if execution of the first phase is complete.

9. The method of claim 8 further comprising:

determining whether memory regions are accessible if execution of the first phase is not complete; and

capturing error data if it is determined that the memory regions are not accessible.

10. The method of claim 8 further comprising:

determining whether memory regions are accessible if execution of the first phase is not complete; and

capturing a detailed error if it is determined that the memory regions are accessible.

11. A system for processing data, comprising:

a processor configured to perform predetermined actions when starting from an off state, the actions including:

load watchdog timer handler code into a processor memory;

execute the watchdog timer handler code;

determine whether a catastrophic error has occurred during execution of the watchdog timer handler code;

update error code if it is determined that the catastrophic error has occurred; and

set up a first stack frame associated with a first phase if it is determined that a catastrophic error has not occurred.

12. The system of claim 11 , wherein the processor is further configured to:

determine whether an error has occurred during execution of the first stack frame associated with the first phase; and

invoke a watchdog timer handler if the error has occurred during execution of the first stack frame.

13. The system of claim 11 , wherein the processor is further configured to:

determine whether a minimum boot path exists after execution of the first stack frame associated with the first phase; and

boot the processor using the minimum booth path if the minimum boot path exists.

14. The system of claim 11 wherein the processor is further configured to set up a second stack frame associated with a second phase if it is determined that a catastrophic error has not occurred during the first phase.

15. The system of claim 11 wherein the processor is further configured to:

determine whether a minimum boot path exists after execution of the second stack frame associated with the second phase; and

boot the processor using the minimum booth path if the minimum boot path exists.

16. The system of claim 11 wherein the processor is further configured to set up a plurality of additional stack frames if it is determined that a catastrophic error has not occurred during a preceding phase.

17. The system of claim 16 wherein the processor is further configured to:

determine whether a minimum boot path exists after execution of a last stack frame associated with a last phase; and

boot the processor using the minimum booth path if the minimum boot path exists.

18. The system of claim 11 wherein the processor is further configured to:

determine whether execution of the first phase is complete; and

reinitialize a watchdog timer if execution of the first phase is complete.

19. The system of claim 18 wherein the processor is further configured to:

determine whether memory regions are accessible if execution of the first phase is not complete; and

capture error data if it is determined that the memory regions are not accessible.

20. A method for processing data, comprising:

starting a processor from an off state;

loading watchdog timer handler code into a processor memory;

executing the watchdog timer handler code;

determining whether a catastrophic error has occurred during execution of the watchdog timer handler code;

updating error code if it is determined that the catastrophic error has occurred;

setting up a first stack frame associated with a first phase if it is determined that a catastrophic error has not occurred; and

booting the processor after execution of the first stack frame associated with the first phase.

Assignments (5)
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 →
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 →
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 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 19, 2018
From: NARASIMHAN, KRISHNAKUMAR
To: DELL PRODUCTS L.P.
Reel/Frame 046907/0174 →