control: tags -1 +patch
[ Sorry for late response ] [2017-03-30 12:36] Harald Dunkel <harald.dun...@aixigo.de> > PS: Attached you can find a suggested fix. > > part 2 text/x-patch 334 > diff --git a/init.d/mountkernfs.sh b/init.d/mountkernfs.sh > index e95cac3..56df7f9 100755 > --- a/init.d/mountkernfs.sh > +++ b/init.d/mountkernfs.sh > @@ -60,6 +60,7 @@ case "$1" in > mount_filesystems mount_noupdate > ;; > start) > + modprobe configfs || echo ignored > mount_filesystems mount_noupdate > ;; > restart|reload|force-reload) This patch loads `configfs' module, unconditionally. I find it unfortunate. I'd prefer to mount `configfs' after `kmod', if 'configfs' was loaded by /etc/init.d/kmod; something like following. Opinions? From 66fc843dc2c852fc47fe9cf1b671cf55d37ea62f Mon Sep 17 00:00:00 2001 From: Dmitry Bogatov <kact...@debian.org> Date: Thu, 25 Jul 2019 06:28:29 +0000 Subject: [PATCH] Attempt to mount /sys/kernel/config after `kmod' Currently, /etc/init.d/mountkernfs attempts to mount `configfs' before apporiate kernel module could be loaded by `kmod' script. As such, `configfs' is only mounted on systems where kernel module is loaded by initramfs. With this change `configfs' mount is tried in separate script after `kmod'. Closes: #840356 --- debian/initscripts.conffiles | 1 + debian/initscripts.postinst | 2 +- debian/initscripts.postrm | 2 +- .../src/initscripts/etc/init.d/mount-configfs | 34 +++++++++++++++++++ .../src/initscripts/etc/init.d/mountkernfs.sh | 4 --- 5 files changed, 37 insertions(+), 6 deletions(-) create mode 100644 debian/src/initscripts/etc/init.d/mount-configfs diff --git a/debian/initscripts.conffiles b/debian/initscripts.conffiles index 381e9f66..6d3fa7ec 100644 --- a/debian/initscripts.conffiles +++ b/debian/initscripts.conffiles @@ -22,6 +22,7 @@ /etc/init.d/umountnfs.sh /etc/init.d/umountroot /etc/init.d/urandom +/etc/init.d/mount-configfs /etc/default/devpts /etc/default/halt /etc/default/rcS diff --git a/debian/initscripts.postinst b/debian/initscripts.postinst index 82ab6a71..b1e3e6c2 100755 --- a/debian/initscripts.postinst +++ b/debian/initscripts.postinst @@ -45,7 +45,7 @@ make_rc_local_conffile umask 022 -INITSCRIPTS="mountkernfs.sh brightness hostname.sh mountdevsubfs.sh checkroot.sh \ +INITSCRIPTS="mountkernfs.sh mount-configfs brightness hostname.sh mountdevsubfs.sh checkroot.sh \ checkroot-bootclean.sh checkfs.sh mountall.sh mountall-bootclean.sh \ mountnfs.sh mountnfs-bootclean.sh bootmisc.sh urandom halt reboot \ umountroot umountfs umountnfs.sh sendsigs killprocs single motd \ diff --git a/debian/initscripts.postrm b/debian/initscripts.postrm index 6847f9ff..5e232568 100755 --- a/debian/initscripts.postrm +++ b/debian/initscripts.postrm @@ -5,7 +5,7 @@ set -e -INITSCRIPTS="mountkernfs.sh brightness hostname.sh mountdevsubfs.sh checkroot.sh \ +INITSCRIPTS="mountkernfs.sh mount-configfs brightness hostname.sh mountdevsubfs.sh checkroot.sh \ checkroot-bootclean.sh checkfs.sh mountall.sh mountall-bootclean.sh \ mountnfs.sh mountnfs-bootclean.sh bootmisc.sh urandom halt reboot \ umountroot umountfs umountnfs.sh sendsigs killprocs single motd \ diff --git a/debian/src/initscripts/etc/init.d/mount-configfs b/debian/src/initscripts/etc/init.d/mount-configfs new file mode 100644 index 00000000..6cfd16bf --- /dev/null +++ b/debian/src/initscripts/etc/init.d/mount-configfs @@ -0,0 +1,34 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: mount-configfs +# Required-Start: mountkernfs +# Required-Stop: +# Should-Start: kmod +# Default-Start: S +# Default-Stop: +# Short-Description: Mount configfs kernel virtual file system. +# Description: Mount configfs kernel virtual file system, +# if "configfs" module is loaded. +### END INIT INFO +set -eu + +export PATH=/bin:/usr/bin + +case ${1:-missing} in +(start|restart|force-reload) + readonly mountpoint='/sys/kernel/config' + # This directory exists only if "configfs" module was loaded by "kmod" + # script. + test -d "${mountpoint}" || exit 0 + ! findmnt "${mountpoint}" >/dev/null || exit 0 + + mount none -t configfs "${mountpoint}" + ;; +(stop) + # No-op + ;; +(*) + echo "Usage: mount-configfs [start|stop]" >&2 + exit 3 + ;; +esac diff --git a/debian/src/initscripts/etc/init.d/mountkernfs.sh b/debian/src/initscripts/etc/init.d/mountkernfs.sh index e95cac3a..146581a6 100755 --- a/debian/src/initscripts/etc/init.d/mountkernfs.sh +++ b/debian/src/initscripts/etc/init.d/mountkernfs.sh @@ -48,10 +48,6 @@ mount_filesystems () { domount "$MNTMODE" pstore "" /sys/fs/pstore pstore "" fi - if [ -d /sys/kernel/config ] - then - domount "$MNTMODE" configfs "" /sys/kernel/config configfs "" - fi } case "$1" in -- Note, that I send and fetch email in batch, once in a few days. Please, mention in body of your reply when you add or remove recepients.