From: raid5atemyhomework via Guix-patches via <guix-patches@gnu.org> To: 45722@debbugs.gnu.org Subject: [bug#45722] [PATCH] gnu: kernel-module-loader does not require file-systems Date: Fri, 08 Jan 2021 02:12:49 +0000 Message-ID: <BRJQ1iDMuVglCqRb1sGZLwYQq_89pM_EAU90i6_Q7mtbu-F8n0JV1bn4g90twbRWnMzS-tCi0C2lBlT53OR6FnG-4hW6j_2Ix3TInBbyNdw=@protonmail.com> (raw) In https://issues.guix.gnu.org/45692#5 Danny brings up that the `kernel-module-loader-shepherd-service` might not need to depend on `file-systems`. So: * `kernel-module-loader-shepherd-service` uses the `/proc` filesystem. * However, this filesystem is mounted in `initrd` before handing over to the real root (in `gnu/build/linux-boot.scm`'s `mount-essential-file-systems`, which is called in `boot-system` very early. * Before handing over to the real root, the mounts are moved in `move-essential-file-systems`, which is called by the `switch-root` procedure that is called by `boot-system` after mounting the root filesystem. * The `/proc/sys/kernel/modprobe` file contains a reference to a `/gnu/store` path to a `modprobe` binary. * Shepherd starts with the root file system already mounted (by the `initrd` `boot-system` procedure), so the full `/gnu/store` should be accessible as soon as Shepherd starts. I've tested this as follows: * Created a QEMU VM image that pointlessly loads "btrfs" (which is not loaded by default) by `(simple-service 'load-btrfs kernel-module-loader-service-type '("btrfs"))` and confirmed it boots to desktop and `lsmod` lists `btrfs`. * Ran tests "loadable-kernel-modules-0", "loadable-kernel-modules-1", and "loadable-kernel-module-2" and confirmed they pass. In theory this could break a system, if an existing kernel module reads from some file (which Linux kernel modules are discouraged from doing) at loadtime *and* the system administrator put that file in a non-root filesystem (which if it's a "proper" module it should be in either `/etc` or `/var`, the former of which is, on Guix System, created by Guix on the root filesystem, and the latter of which should generally be on the root filesystem as well). So I think the risk of this breaking *some* system is fairly low. Please review. From d028dac0efaf6ab3d8edafc2e68c0d2ef692bab7 Mon Sep 17 00:00:00 2001 From: raid5atemyhomework <raid5atemyhomework@protonmail.com> Date: Fri, 8 Jan 2021 09:41:25 +0800 Subject: [PATCH] gnu: kernel-module-loader does not require file-systems * gnu/services/linux.scm (kernel-module-loader-shepherd-service): Remove requirement of file-systems. --- gnu/services/linux.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/services/linux.scm b/gnu/services/linux.scm index 1046a7e0c2..340b330030 100644 --- a/gnu/services/linux.scm +++ b/gnu/services/linux.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -150,7 +151,7 @@ representation." (shepherd-service (documentation "Load kernel modules.") (provision '(kernel-module-loader)) - (requirement '(file-systems)) + (requirement '()) (one-shot? #t) (modules `((srfi srfi-1) (srfi srfi-34) -- 2.30.0
next reply other threads:[~2021-01-08 2:14 UTC|newest] Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-01-08 2:12 raid5atemyhomework via Guix-patches via [this message] 2021-02-08 2:55 ` Danny Milosavljevic
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 List information: https://guix.gnu.org/ * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to='BRJQ1iDMuVglCqRb1sGZLwYQq_89pM_EAU90i6_Q7mtbu-F8n0JV1bn4g90twbRWnMzS-tCi0C2lBlT53OR6FnG-4hW6j_2Ix3TInBbyNdw=@protonmail.com' \ --to=guix-patches@gnu.org \ --cc=45722@debbugs.gnu.org \ --cc=raid5atemyhomework@protonmail.com \ /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
unofficial mirror of guix-patches@gnu.org This inbox may be cloned and mirrored by anyone: git clone --mirror https://yhetil.org/guix-patches/1 guix-patches/git/1.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 guix-patches guix-patches/ https://yhetil.org/guix-patches \ guix-patches@gnu.org public-inbox-index guix-patches Example config snippet for mirrors. Newsgroup available over NNTP: nntp://news.yhetil.org/yhetil.gnu.guix.patches AGPL code for this site: git clone http://ou63pmih66umazou.onion/public-inbox.git