linux-boot: Don't ignore flags when mounting root file system.

* gnu/build/linux-boot.scm (mount-root-file-system): Add the 'flags' keyword
  argument and use it when mounting the root file system.
  (boot-system): Pass the root file system flags to 'mount-root-file-system'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Guillaume Le Vaillant 2019-12-02 21:15:50 +01:00 committed by Ludovic Courtès
parent 336afa17e3
commit 55e21617d6
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -358,10 +358,10 @@ (define (pidof program)
(filter-map string->number (scandir "/proc")))))
(define* (mount-root-file-system root type
#:key volatile-root? options)
"Mount the root file system of type TYPE at device ROOT. If VOLATILE-ROOT?
is true, mount ROOT read-only and make it an overlay with a writable tmpfs
using the kernel built-in overlayfs. OPTIONS indicates the options to use
#:key volatile-root? (flags 0) options)
"Mount the root file system of type TYPE at device ROOT. If VOLATILE-ROOT? is
true, mount ROOT read-only and make it an overlay with a writable tmpfs using
the kernel built-in overlayfs. FLAGS and OPTIONS indicates the options to use
to mount ROOT."
(if volatile-root?
@ -384,7 +384,7 @@ (define* (mount-root-file-system root type
"lowerdir=/real-root,upperdir=/rw-root/upper,workdir=/rw-root/work"))
(begin
(check-file-system root type)
(mount root "/root" type 0 options)))
(mount root "/root" type flags options)))
;; Make sure /root/etc/mtab is a symlink to /proc/self/mounts.
(false-if-exception
@ -474,6 +474,13 @@ (define root-fs-type
mounts)
"ext4"))
(define root-fs-flags
(mount-flags->bit-mask (or (any (lambda (fs)
(and (root-mount-point? fs)
(file-system-flags fs)))
mounts)
'())))
(define root-fs-options
(any (lambda (fs)
(and (root-mount-point? fs)
@ -533,6 +540,7 @@ (define root-fs-options
(mount-root-file-system (canonicalize-device-spec root)
root-fs-type
#:volatile-root? volatile-root?
#:flags root-fs-flags
#:options root-fs-options))
(mount "none" "/root" "tmpfs"))