All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Pass init argument(s) to real init
@ 2010-01-30 14:57 Andrey Borzenkov
       [not found] ` <201001301757.49473.arvidjaar-JGs/UdohzUI@public.gmane.org>
  0 siblings, 1 reply; 3+ messages in thread
From: Andrey Borzenkov @ 2010-01-30 14:57 UTC (permalink / raw)
  To: initramfs-u79uwXL29TY76Z2rM5mHXA


[-- Attachment #1.1: Type: Text/Plain, Size: 183 bytes --]

I was rather surprised why all my attempts to enter single user were not 
successful :) Simple patch to collect and pass to real init what _looks_ 
like init arguments.

-andrey

[-- Attachment #1.2: initargs --]
[-- Type: message/rfc822, Size: 1312 bytes --]

From: Andrey Borzenkov <arvidjaar-JGs/UdohzUI@public.gmane.org>
Subject: [PATCH] Pass init argument(s) to real init

Common wisdom to enter single user on Linux is to edit command
line and add "single". This was not possible because switch_root
was always called with empty init arguments. Collect them from
command line and pass to real init when switching root.

Signed-off-by: Andrey Borzenkov <arvidjaar-JGs/UdohzUI@public.gmane.org>

---

 modules.d/99base/init |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)


diff --git a/modules.d/99base/init b/modules.d/99base/init
index ab033a7..e5158f8 100755
--- a/modules.d/99base/init
+++ b/modules.d/99base/init
@@ -259,10 +259,10 @@ done
 
 initargs=""
 
+read CLINE </proc/cmdline
 if getarg init= >/dev/null ; then
     ignoreargs="console BOOT_IMAGE"
     # only pass arguments after init= to the init
-    read CLINE </proc/cmdline
     CLINE=${CLINE#*init=}
     set $CLINE
     shift
@@ -273,6 +273,16 @@ if getarg init= >/dev/null ; then
         initargs="$initargs $x"
     done
     unset CLINE
+else
+    set $CLINE
+    shift
+    for x in "$@"; do
+        case "$x" in
+            [0-9]|s|S|single|emergency|auto )
+                initargs="$initargs $x"
+            ;;
+        esac
+    done
 fi
 
 # Debug: Copy state

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-03-04 13:07 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-30 14:57 [PATCH] Pass init argument(s) to real init Andrey Borzenkov
     [not found] ` <201001301757.49473.arvidjaar-JGs/UdohzUI@public.gmane.org>
2010-03-01 18:12   ` Andrey Borzenkov
     [not found]     ` <201003012112.58174.arvidjaar-JGs/UdohzUI@public.gmane.org>
2010-03-04 13:07       ` Harald Hoyer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.