x86: Disable cpuidle by default unless hpet broadcast is available.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
This commit is contained in:
Keir Fraser committed 2009-04-15 08:40:12 +01:00
1 parent b7bcf6c3be
commit e2d6c4bd8a
2 files changed
+12 -3

No files matched your search

+1 -1
View File
@@ -89,7 +89,7 @@ boolean_param("noapic", skip_ioapic_setup);
/* **** Linux config option: propagated to domain0. */
/* xen_cpuidle: xen control cstate. */
/*static*/ int xen_cpuidle = 1;
/*static*/ int xen_cpuidle = -1;
boolean_param("cpuidle", xen_cpuidle);
int early_boot = 1;
+11 -2
View File
@@ -1279,8 +1279,17 @@ static int disable_pit_irq(void)
hpet_broadcast_init();
if ( !hpet_broadcast_is_available() )
{
printk("HPET broadcast init failed, turn to PIT broadcast.\n");
return 0;
if ( xen_cpuidle == -1 )
{
xen_cpuidle = 0;
printk("CPUIDLE: disabled due to no HPET. "
"Force enable with 'cpuidle'.\n");
}
else
{
printk("HPET broadcast init failed, turn to PIT broadcast.\n");
return 0;
}
}
}
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.