]> git.ipfire.org Git - thirdparty/dracut-ng.git/commitdiff
fix(dmsquash-live): load kernel module before mount
authorJo Zzsi <jozzsicsataban@gmail.com>
Sat, 7 Feb 2026 14:21:47 +0000 (09:21 -0500)
committerBenjamin Drung <bdrung@ubuntu.com>
Thu, 30 Apr 2026 12:12:06 +0000 (14:12 +0200)
The mount call may require the kernel module for the filesystem
type to be loaded in order to succeed.

Follow the already established sequence of calls for mounting.

```
det_img_fs
load_fstype
mount
```

modules.d/70dmsquash-live/dmsquash-live-root.sh

index d41f242d7285398655e1ec1078f123b6f6ac78d4..cf816738700220aa102f65595aed8229babb521c 100755 (executable)
@@ -341,6 +341,8 @@ if [ -e "$SQUASHED" ]; then
     SQUASHED_LOOPDEV=$(losetup -f)
     losetup -r "$SQUASHED_LOOPDEV" "$SQUASHED"
     mkdir -m 0755 -p /run/initramfs/squashfs
+    fstype=$(det_img_fs "$SQUASHED_LOOPDEV")
+    load_fstype "$fstype"
     mount -n -o ro "$SQUASHED_LOOPDEV" /run/initramfs/squashfs
 
     if [ -d /run/initramfs/squashfs/LiveOS ]; then
@@ -426,6 +428,8 @@ if [ -n "$overlayfs" ]; then
         if [ "$FSIMG" = "$SQUASHED" ]; then
             mount --bind /run/initramfs/squashfs /run/rootfsbase
         else
+            fstype=$(det_img_fs "$FSIMG")
+            load_fstype "$fstype"
             mount -r "$FSIMG" /run/rootfsbase
         fi
     else