IP Library Granted Patent US 7,865,762
Granted Patent B2
US 7,865,762 · App. 11/950,343 · Granted Jan 4, 2011

Methods and apparatus for handling errors involving virtual machines

Assignee: Intel Corporation
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 7,865,762
App. No.
11/950,343
Granted
Jan 4, 2011
Kind
B2
Abstract

A virtual machine monitor (VMM) in a data processing system handles errors involving virtual machines (VMs) in the processing system. For instance, an error manager in the VMM may detect an uncorrectable error in involving a component associated with a first VM in the processing system. In response to detection of that error, the error manager may terminate the first VM, while allowing a second VM in the processing system to continue operating. In one embodiment, the error manager automatically determines which VM is affected by the uncorrectable error, in response to detecting the uncorrectable error. The error manager may also automatically spawn a new VM to replace the first VM, if the processing system has sufficient resources to support the new VM. Other embodiments are described and claimed.

Claims (61)

1. A method comprising:

detecting an uncorrectable error in a processing system having first and second virtual machines (VMs), the uncorrectable error involving a component associated with the first VM;

in response to detection of the uncorrectable error, terminating the first VM, and allowing the second VM to continue operating; and

configuring an interrupt select register for a basic input/output system (BIOS) in the processing system to not issue a system management interrupt (SMI) in response to a machine check exception.

2. A method according to claim 1 , comprising:

in response to detecting the uncorrectable error, automatically determining which VM is affected by the uncorrectable error, and

terminating the first VM in response to a determination that the VM affected by the uncorrectable error is the first VM.

3. A method according to claim 1 , further comprising:

in response to detecting the uncorrectable error, automatically determining whether the processing system has sufficient resources to support a new VM; and

in response to determining that the processing system has sufficient resources to support the new VM, spawning the new VM.

4. A method according to claim 1 , further comprising:

in response to detecting the uncorrectable error, automatically spawning a new VM; and

launching software in the new VM to support a function formerly served by the first VM.

5. A method according to claim 1 , wherein the uncorrectable error involving the component associated with the first VM comprises:

a memory error in a memory module used by the first VM.

6. A method according to claim 1 , wherein the uncorrectable error involving the component associated with the first VM comprises:

a data error in a processing unit used by the first VM.

7. An apparatus comprising:

a tangible, machine-accessible medium; and

instruction in the machine-accessible medium, wherein the instructions, when executed by a processing system having first and second virtual machines (VMs), cause the processing system to perform operations comprising:

detecting an uncorrectable error involving a component associated with the first VM;

in response to detection of the uncorrectable error, terminating the first VM, and allowing the second VM to continue operating; and

configuring an interrupt select register for a basic input/output system (BIOS) in the processing system to not issue a system management interrupt (SMI) in response to a machine check exception.

8. An apparatus according to claim 7 , wherein the operations comprise:

in response to detecting the uncorrectable error, automatically determining which VM is affected by the uncorrectable error, and

terminating the first VM in response to a determination that the VM affected by the uncorrectable error is the first VM.

9. An apparatus according to claim 7 , wherein the operations comprise:

in response to detecting the uncorrectable error, automatically determining whether the processing system has sufficient resources to support a new VM; and

in response to determining that the processing system has sufficient resources to support the new VM, spawning the new VM.

10. An apparatus according to claim 7 , wherein the operations comprise:

in response to detecting the uncorrectable error, automatically spawning a new VM; and

launching software in the new VM to support a function formerly served by the first VM.

11. An apparatus according to claim 7 , wherein the uncorrectable error involving the component associated with the first VM comprises:

a memory error in a memory module used by the first VM.

12. An apparatus according to claim 7 , wherein the uncorrectable error involving the component associated with the first VM comprises:

a data error in a processing unit used by the first VM.

13. A processing system comprising:

first and second processing units;

a first memory controller associated with the first processing unit;

a second memory controller associated with the second processing unit;

a first memory module responsive to the first memory controller;

a second memory module responsive to the second memory controller;

a machine-accessible medium; and

a virtual machine error manager stored in the machine-accessible medium, the virtual machine error manager including control logic to perform operations comprising:

detecting an uncorrectable error involving a component associated with a first VM in the processing system;

in response to detection of the uncorrectable error, terminating the first VM, while allowing a second VM in the processing system to continue operating; and

configuring an interrupt select register for a basic input/output system (BIOS) in the processing system to not issue a system management interrupt (SMI) in response to a machine check exception.

14. A processing system according to claim 13 , wherein the virtual machine error manager comprises part of a virtual machine manager (VMM).

15. A processing system according to claim 14 , wherein the VMM comprises a hypervisor.

16. A processing system according to claim 13 , wherein the virtual machine error manager comprises control logic to perform operations comprising:

in response to detecting the uncorrectable error, automatically determining which VM is affected by the uncorrectable error, and

terminating the first VM in response to a determination that the VM affected by the uncorrectable error is the first VM.

17. A processing system according to claim 13 , wherein the virtual machine error manager comprises control logic to perform operations comprising:

in response to detecting the uncorrectable error, automatically determining whether the processing system has sufficient resources to support a new VM; and

in response to determining that the processing system has sufficient resources to support the new VM, spawning the new VM.

18. A processing system according to claim 13 , wherein the virtual machine error manager comprises control logic to perform operations comprising:

in response to detecting the uncorrectable error, automatically spawning a new VM; and

launching software in the new VM to support a function formerly served by the first VM.

19. A processing system according to claim 13 , wherein the uncorrectable error involving the component associated with the first VM comprises an error selected from the group consisting of:

a memory error in a memory module used by the first VM; and

a data error in a processing unit used by the first VM.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2010
From: SWANSON, ROBERT C.
To: INTEL CORPORATION
Reel/Frame 024241/0801 →
Continuity (1)
Related Publication 20090144579A1 · Jun 4, 2009