diff -urN linux-2.6.11-rc3-bk7/include/linux/timer.h linux-2.6.11-rc3-bk7-patched/include/linux/timer.h --- linux-2.6.11-rc3-bk7/include/linux/timer.h 2004-12-24 14:35:23.000000000 -0700 +++ linux-2.6.11-rc3-bk7-patched/include/linux/timer.h 2005-02-11 01:16:39.000000000 -0700 @@ -87,7 +87,7 @@ __mod_timer(timer, timer->expires); } -#ifdef CONFIG_SMP +#if defined(CONFIG_SMP) || defined(CONFIG_PREEMPT) extern int del_timer_sync(struct timer_list *timer); extern int del_singleshot_timer_sync(struct timer_list *timer); #else diff -urN linux-2.6.11-rc3-bk7/kernel/timer.c linux-2.6.11-rc3-bk7-patched/kernel/timer.c --- linux-2.6.11-rc3-bk7/kernel/timer.c 2005-02-11 01:09:38.000000000 -0700 +++ linux-2.6.11-rc3-bk7-patched/kernel/timer.c 2005-02-11 01:16:53.000000000 -0700 @@ -318,7 +318,7 @@ EXPORT_SYMBOL(del_timer); -#ifdef CONFIG_SMP +#if defined(CONFIG_SMP) || defined(CONFIG_PREEMPT) /*** * del_timer_sync - deactivate a timer and wait for the handler to finish. * @timer: the timer to be deactivated