X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=init%2Fdo_mounts_initrd.c;h=fd4fc12d262464b0b763e2e0fb5dd1781f2a3b70;hb=c548f08a4f7b89b93c805e0c4024b8302afa7121;hp=919a80cb322e6f57dfa2be0a3bb727251bcd7e0e;hpb=c45aa055c32b488fc3fd73c760df372b09acf69a;p=powerpc.git diff --git a/init/do_mounts_initrd.c b/init/do_mounts_initrd.c index 919a80cb32..fd4fc12d26 100644 --- a/init/do_mounts_initrd.c +++ b/init/do_mounts_initrd.c @@ -6,6 +6,7 @@ #include #include #include +#include #include "do_mounts.h" @@ -54,12 +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)) + if (pid > 0) + while (pid != sys_wait4(-1, NULL, 0, NULL)) { + try_to_freeze(); yield(); - } + } /* move initrd to rootfs' /old */ sys_fchdir(old_fd);