diff -r 774dfc178c39 xen/arch/x86/acpi/cpuidle_menu.c --- a/xen/arch/x86/acpi/cpuidle_menu.c Thu Aug 12 17:06:21 2010 +0100 +++ b/xen/arch/x86/acpi/cpuidle_menu.c Mon Aug 16 17:33:05 2010 -0500 @@ -272,6 +272,11 @@ { struct menu_device *data = &per_cpu(menu_devices, power->cpu); + if (!cpu_online(power->cpu)) + { + return -1; + } + memset(data, 0, sizeof(struct menu_device)); return 0;