mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Jörn Engel" <joern@wohnheim.fh-wedel.de>
To: Greg KH <greg@kroah.com>
Cc: Andrew Morton <akpm@osdl.org>, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] Console: fall back to /dev/null when no console is availlable
Date: Wed, 6 Oct 2004 21:23:35 +0200	[thread overview]
Message-ID: <20041006192335.GH10153@wohnheim.fh-wedel.de> (raw)
In-Reply-To: <20041006181958.GB27300@kroah.com>

On Wed, 6 October 2004 11:19:58 -0700, Greg KH wrote:
> On Wed, Oct 06, 2004 at 08:04:21PM +0200, J?rn Engel wrote:
> > On Wed, 6 October 2004 10:38:23 -0700, Greg KH wrote:
> > > 
> > > Your printk() calls need the proper KERN_* level.
> > 
> > As does the original one.  Which one would you like for both?
> 
> KERN_WARNING perhaps?

As in the patch below?

> > > usually do not have a /dev/null this early in the boot process).  Does
> > > this mean we should add a /dev/null to the initramfs image, like the
> > > /dev/console node we currently have there?
> > 
> > Yes, that would fix the case.  Is this a problem?
> 
> I don't have a problem with doing that.

Then please do so. :)

Jörn

-- 
Premature optimization is the root of all evil.
-- Donald Knuth

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 |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)


--- 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-06 21:14:43.000000000 +0200
@@ -695,8 +695,13 @@
 	system_state = SYSTEM_RUNNING;
 	numa_default_policy();
 
-	if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
-		printk("Warning: unable to open an initial console.\n");
+	if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) {
+		printk(KERN_WARNING
+			"Warning: unable to open an initial console.\n");
+		if (sys_open("/dev/null", O_RDWR, 0) == 0)
+			printk(KERN_WARNING
+				"         Falling back to /dev/null.\n");
+	}
 
 	(void) sys_dup(0);
 	(void) sys_dup(0);

  reply	other threads:[~2004-10-06 19:25 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-05 18:52 Jörn Engel
2004-10-05 20:27 ` Russell King
2004-10-05 21:06   ` Greg KH
2004-10-05 21:13     ` Russell King
2004-10-06 15:00       ` Alan Cox
2004-10-06 17:41         ` Greg KH
2004-10-06 18:01           ` Jörn Engel
2004-10-06 18:18             ` Greg KH
2004-10-06 19:20               ` Jörn Engel
2004-10-06 18:26             ` Chris Wright
2004-10-06 18:16           ` Andries Brouwer
2004-10-06 19:18           ` Alan Cox
2004-10-06 20:54             ` Greg KH
2004-10-06 20:29               ` Alan Cox
2004-10-06 21:45                 ` Russell King
2004-10-07  5:51                 ` Valdis.Kletnieks
2004-10-08  2:15                   ` Herbert Xu
2004-10-06 20:01           ` Russell King
2004-10-05 22:36   ` Andries Brouwer
2004-10-06  6:43     ` Russell King
2004-10-07 14:41   ` Jan-Benedict Glaw
2004-10-05 21:58 ` Denis Vlasenko
2004-10-06  4:34   ` Willy Tarreau
2004-10-06  8:43     ` Geert Uytterhoeven
2004-10-06 12:15       ` Jörn Engel
2004-10-06 13:07         ` Geert Uytterhoeven
2004-10-06 13:33           ` Jörn Engel
2004-10-06 13:55             ` Geert Uytterhoeven
2004-10-06 14:12               ` Jörn Engel
2004-10-06 14:23                 ` Geert Uytterhoeven
2004-10-06 15:28                   ` Jörn Engel
2004-10-06 15:36                     ` Geert Uytterhoeven
2004-10-06 15:51                       ` Jörn Engel
2004-10-05 23:30 ` Andrew Morton
2004-10-06 12:16   ` Jörn Engel
2004-10-06 17:38 ` Greg KH
2004-10-06 18:04   ` Jörn Engel
2004-10-06 18:19     ` Greg KH
2004-10-06 19:23       ` Jörn Engel [this message]
2004-10-06 21:22         ` Thayne Harbaugh
2004-10-07  8:18           ` Geert Uytterhoeven
2004-10-07  9:07             ` Russell King
2004-10-07  9:46               ` Geert Uytterhoeven
2004-10-06 18:37 ` Gianni Tedesco
2004-10-06 19:08   ` Jörn Engel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20041006192335.GH10153@wohnheim.fh-wedel.de \
    --to=joern@wohnheim.fh-wedel.de \
    --cc=akpm@osdl.org \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®