From: Leonid Krivoshein <klark.devel@gmail.com> To: make-initrd@lists.altlinux.org Subject: [make-initrd] [PATCH v1 25/41] fork pipeline: bootchained modified Date: Fri, 24 Sep 2021 18:58:05 +0300 Message-ID: <56f95272-9b57-57e4-7162-16652b00f182@gmail.com> (raw) --- .../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
reply other threads:[~2021-09-24 15:58 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=56f95272-9b57-57e4-7162-16652b00f182@gmail.com \ --to=klark.devel@gmail.com \ --cc=make-initrd@lists.altlinux.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
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