* [make-initrd] [PATCH v1 25/41] fork pipeline: bootchained modified
@ 2021-09-24 15:58 Leonid Krivoshein
0 siblings, 0 replies; only message in thread
From: Leonid Krivoshein @ 2021-09-24 15:58 UTC (permalink / raw)
To: make-initrd
---
.../bootchain-core/data/sbin/bootchained | 41 +++++++++++++------
1 file changed, 29 insertions(+), 12 deletions(-)
diff --git a/make-initrd/features/bootchain-core/data/sbin/bootchained
b/make-initrd/features/bootchain-core/data/sbin/bootchained
index 369938a..7a1843e 100755
--- a/make-initrd/features/bootchain-core/data/sbin/bootchained
+++ b/make-initrd/features/bootchain-core/data/sbin/bootchained
@@ -1,38 +1,55 @@
#!/bin/bash -efu
-. shell-error
-. shell-signal
+. bootchain-sh-functions
-message_time=1
pidfile="/var/run/$PROG.pid"
-logfile="/var/log/$PROG.log"
+
exit_handler()
{
local rc="$?"
trap - EXIT
rm -f -- "$pidfile"
+ wait
exit $rc
}
+debug()
+{
+ [ -z "$BC_DEBUG" ] ||
+ message "$*"
+}
+
+
+# Entry point
[ ! -f "$pidfile" ] ||
fatal "already running"
-
set_cleanup_handler exit_handler
echo "$$" >"$pidfile"
-. pipeline-sh-functions
-
-
-[ "${RDLOG-}" != 'console' ] ||
- logfile=/dev/console
+if [ "${RDLOG-}" = console ]; then
+ BC_LOGFILE=/dev/console
+elif [ -z "${NOTTYS-}" ] &&
+ [ -n "$BC_LOG_VT" ] &&
+ [ ! -c "$BC_LOGFILE" ] &&
+ command -v openvt >/dev/null
+then
+ touch -- "$BC_LOGFILE"
+ [ -e "/dev/tty$BC_LOG_VT" ] ||
+ mknod "/dev/tty$BC_LOG_VT" c 4 "$BC_LOG_VT"
+ openvt -f -w -c$BC_LOG_VT -- /sbin/bootchain-logvt &
+fi
exec >"$BC_LOGFILE" 2>&1
message "Starting server [$(initrd_version)]..."
+debug "Booting with /proc/cmdline:"
+fdump /proc/cmdline
run mkdir -p -- "$mntdir" "$BC_PASSED"
-mountpoint -q "$mntdir" ||
- mount -t tmpfs tmpfs "$mntdir" ||:
+mountpoint -q -- "$mntdir" ||
+ run mount -t tmpfs tmpfs "$mntdir" ||:
+
+export chainsteps="${BOOTCHAIN-}"
bootchain-loop
--
2.21.0
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-09-24 15:58 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-24 15:58 [make-initrd] [PATCH v1 25/41] fork pipeline: bootchained modified Leonid Krivoshein
Make-initrd development discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \
make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com
public-inbox-index make-initrd
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.make-initrd
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git