PATCH to support dotted base directory names

Rick Hohensee (humbubba@smarty.smart.net)
Fri, 9 Jul 1999 05:56:50 -0400 (EDT)


This is against 2.3.10, although I don't think anything here has changed
in quite some time.

I've been using a non-standard filename hierarchy for some few weeks now.
It's been less trouble than I expected. This is an easy win. I urge you to
take it. The fact that e.g. /bin/ is the same number of bytes as /.bi/
means that a simple ed script can convert a whole box to this system with
little bloodshed.

This is my first use of diff -u. I edited one line in the patch (a
comment) after the fact. The trailing } looks funny, but seems to be OK.

Rick Hohensee

--- linux/init/main.c Tue Jul 6 02:52:52 1999
+++ changes/init/main.c Fri Jul 9 04:07:41 1999
@@ -1379,12 +1379,13 @@

(void) dup(0);
(void) dup(0);
-
+
/*
- * We try each of these until one succeeds.
+ * We try starting a commandline arg, init, or then a shell.
+ * /.sbi/init and /.bi/bash are for symlinks to init or a shell
+ * in unix traditional dirnames, user-friendlified dirnames,
+ * and/or non-English dirnames.
*
- * The Bourne shell can be used instead of init if we are
- * trying to recover a really broken machine.
*/

if (execute_command)
@@ -1393,5 +1394,8 @@
execve("/etc/init",argv_init,envp_init);
execve("/bin/init",argv_init,envp_init);
execve("/bin/sh",argv_init,envp_init);
- panic("No init found. Try passing init= option to kernel.");
+ execve("/.sbi/init",argv_init,envp_init);
+ execve("/.bi/bash",argv_init,envp_init);
+ panic("No init or shell found. Try passing init=</path/to/command>"
+ " to the kernel with your bootloader.");
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/