Explorar o código

make sure that /linuxrc has std{in,out,err}

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Al Viro %!s(int64=13) %!d(string=hai) anos
pai
achega
43b1682024
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      init/do_mounts_initrd.c

+ 4 - 0
init/do_mounts_initrd.c

@@ -36,6 +36,10 @@ __setup("noinitrd", no_initrd);
 static int init_linuxrc(struct subprocess_info *info, struct cred *new)
 {
 	sys_unshare(CLONE_FS | CLONE_FILES);
+	/* stdin/stdout/stderr for /linuxrc */
+	sys_open("/dev/console", O_RDWR, 0);
+	sys_dup(0);
+	sys_dup(0);
 	/* move initrd over / and chdir/chroot in initrd root */
 	sys_chdir("/root");
 	sys_mount(".", "/", NULL, MS_MOVE, NULL);