Usually I don't reply to my own posts, but since several people on this
list indicated they had similar problems in private e-mails, I'm posting
a solution here.

Problem: 
Starting with 2.4.3, bash won't accept any input when started by init in
single-user mode on serial console.

Fix:
It appears that 2.4.3 introduced some more strict term sanity checks in
char/serial.c. It broke many userland programs, busybox and sysvinit are
among them (as I found on kernel mailing list). Below is the patch for
sysvinit that fixes that problem:

-- sysvinit-2.78/src/init.c.CREAD      Mon Jun 18 20:37:26 2001
+++ sysvinit-2.78/src/init.c    Mon Jun 18 20:38:33 2001
@@ -684,7 +684,7 @@
                (void) tcgetattr(fd, &tty);
 
                tty.c_cflag &= CBAUD|CBAUDEX|CSIZE|CSTOPB|PARENB|PARODD;
-               tty.c_cflag |= HUPCL|CLOCAL;
+               tty.c_cflag |= CREAD|HUPCL|CLOCAL;
 
                tty.c_cc[VINTR]  = 3;   /* ctrl('c') */
                tty.c_cc[VQUIT]  = 28;  /* ctrl('\\') */



Hope it helped somebody,
Haim Gelfenbeyn.


================================================================To unsubscribe, send 
mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to