From: Rafael J. Wysocki Date: Sun, 6 May 2007 21:50:46 +0000 (-0700) Subject: freezer: remove PF_NOFREEZE from handle_initrd X-Git-Tag: v2.6.22-rc1~900 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=726162b5dad154a90dad51c0185b891312de5757;p=linux-2.6 freezer: remove PF_NOFREEZE from handle_initrd Make handle_initrd() call try_to_freeze() in a suitable place instead of setting PF_NOFREEZE for the current task. Signed-off-by: Rafael J. Wysocki Acked-by: Nigel Cunningham Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/init/do_mounts_initrd.c b/init/do_mounts_initrd.c index 2cfd7cb36e..b222ce9e1c 100644 --- a/init/do_mounts_initrd.c +++ b/init/do_mounts_initrd.c @@ -55,11 +55,12 @@ static void __init handle_initrd(void) sys_mount(".", "/", NULL, MS_MOVE, NULL); sys_chroot("."); - current->flags |= PF_NOFREEZE; pid = kernel_thread(do_linuxrc, "/linuxrc", SIGCHLD); if (pid > 0) { - while (pid != sys_wait4(-1, NULL, 0, NULL)) + while (pid != sys_wait4(-1, NULL, 0, NULL)) { + try_to_freeze(); yield(); + } } /* move initrd to rootfs' /old */