From: Rafael J. Wysocki migration_thread should not be freezable, or it will break hibernation and suspend on SMP. Signed-off-by: Rafael J. Wysocki kernel/sched.c | 3 --- 1 file changed, 3 deletions(-) Index: linux-2.6.22/kernel/sched.c =================================================================== --- linux-2.6.22.orig/kernel/sched.c +++ linux-2.6.22/kernel/sched.c @@ -5212,13 +5212,10 @@ static int migration_thread(void *data) BUG_ON(rq->migration_thread != current); set_current_state(TASK_INTERRUPTIBLE); - set_freezable(); while (!kthread_should_stop()) { struct migration_req *req; struct list_head *head; - try_to_freeze(); - spin_lock_irq(&rq->lock); if (cpu_is_offline(cpu)) {