Messages in this thread | | | From | Denis Vlasenko <> | Subject | Re: [PATCH] Console: fall back to /dev/null when no console is availlable | Date | Wed, 6 Oct 2004 00:58:57 +0300 |
| |
> More computing sins are committed in the name of efficiency (without > necessarily achieving it) than for any other single reason - including > blind stupidity. > -- W. A. Wulf > > Some userspace applications rely on the assumption that fd's 0, 1 and > 2 are always open and function as raw stdin, stdout and stderr, > respectively. > > With no console registered, init get's called without those fd's > already open. Arguably, init should know better, handle that case and > fix things before forking other processed. But what about > init=/bin/bash? Ok, bash could be fixed as well, as could... > > Instead, this patch opens /dev/null when /dev/console doesn't work. > It swallows all output and doesn't give much input, but programs can > handle that just fine. > > Signed-off-by: Jцrn Engel <joern@wohnheim.fh-wedel.de> > --- > > main.c | 5 ++++- > 1 files changed, 4 insertions(+), 1 deletion(-) > > --- linux-2.6.8cow/init/main.c~console 2004-10-05 20:46:40.000000000 +0200 > +++ linux-2.6.8cow/init/main.c 2004-10-05 20:46:08.000000000 +0200 > @@ -695,8 +695,11 @@ > system_state = SYSTEM_RUNNING; > numa_default_policy(); > > - if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) > + if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) { > printk("Warning: unable to open an initial console.\n"); > + if (open("/dev/null", O_RDWR, 0) == 0) > + printk(" Falling back to /dev/null.\n"); > + }
What will happen if /dev is totally empty? -- vda
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |