Merge git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
[sfrench/cifs-2.6.git] / init / do_mounts_initrd.c
index 2cfd7cb36e7963bee6987c826c39a3411459666d..b222ce9e1c8bd3e4871acf564d187225ba0e574c 100644 (file)
@@ -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 */