Index: linux/kernel/dyn-tick.c =================================================================== --- linux.orig/kernel/dyn-tick.c 2005-06-05 00:51:53.000000000 +0800 +++ linux/kernel/dyn-tick.c 2005-06-05 01:02:55.000000000 +0800 @@ -54,7 +54,8 @@ /* Check if we are already skipping ticks and can idle other cpus */ if (dyn_tick->state & DYN_TICK_SKIPPING) { - reprogram_apic_timer(dyn_tick->skip); + if (cpu_has_local_apic()) + reprogram_apic_timer(dyn_tick->skip); return 0; }