Skip to main content
Topic: Full disk encryption LUKS2(Argon2) + LVM + Booster initrd: Unable to mount rootf (Read 460 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Full disk encryption LUKS2(Argon2) + LVM + Booster initrd: Unable to mount rootf

Hi, I've been trying to install artix on LVM on top of LUKS2. Bootloader is patched GRUB that supports Argon2 (AUR package).

nvme9n1 layout:
>EFI
>LUKS2
>>LVM
>>>root_1
>>>boot
>>>...

/etc/booster.yaml:
enable_lvm: true
EOF

/etc/default/grub contains:
✅ GRUB_CMDLINE_LINUX_DEFAULT="rd.luks.uuid=<UUID  of luks partition> loglevel=3 quiet"
✅ GRUB_ENABLE_CYPTODISK=y


GRUB successfully unlocks and finds /boot partition, but booster initrd doesn't unlock luks and kernel panics:
kernel panic

lvm2 package is installed
any help appreciated


Re: Full disk encryption LUKS2(Argon2) + LVM + Booster initrd: Unable to mount rootf

Reply #1
Code: [Select]
Panic Report
Arch: x86_64
Version: 6.16.4-artix1-1
[    0.402984] rtc_cmos 00:05: alarms up to one month, y3k, 242 bytes nvram
[    0.403224] intel_pstate: Intel P-state driver initializing
[    0.403668] intel_pstate: Disabling energy efficiency optimization
[    0.403669] intel_pstate: HWP enabled
[    0.403871] simple-framebuffer simple-framebuffer.0: [drm] Registered 1 planes with drm panic
[    0.403873] [drm] Initialized simpledrm 1.0.0 for simple-framebuffer.0 on minor 0
[    0.405362] fbcon: Deferring console take-over
[    0.405365] simple-framebuffer simple-framebuffer.0: [drm] fb0: simpledrmdrmfb frame buffer device
[    0.405433] hid: raw HID events driver (C) Jiri Kosina
[    0.405454] usbcore: registered new interface driver usbhid
[    0.405455] usbhid: USB HID core driver
[    0.405501] drop_monitor: Initializing network drop monitor service
[    0.405583] NET: Registered PF_INET6 protocol family
[    0.406236] Segment Routing with IPv6
[    0.406237] RPL Segment Routing with IPv6
[    0.406243] In-situ OAM (IOAM) with IPv6
[    0.406259] NET: Registered PF_PACKET protocol family
[    0.406623] ENERGY_PERF_BIAS: Set to 'normal', was 'performance'
[    0.406718] microcode: Current revision: 0x000000b4
[    0.406869] IPI shorthand broadcast: enabled
[    0.408773] sched_clock: Marking stable (405000835, 3467234)->(411824257, -3356188)
[    0.409034] registered taskstats version 1
[    0.409479] Loading compiled-in X.509 certificates
[    0.411777] Loaded X.509 cert 'Build time autogenerated kernel key: 9a1ff93e6601f273ba311a9e6081f8508afd0a30'
[    0.413939] zswap: loaded using pool zstd/zsmalloc
[    0.414000] Demotion targets for Node 0: null
[    0.414168] Key type .fscrypt registered
[    0.414169] Key type fscrypt-provisioning registered
[    0.414758] Btrfs loaded, zoned=yes, fsverity=yes
[    0.414785] Key type big_key registered
[    0.415636] integrity: Loading X.509 certificate: UEFI:db
[    0.415674] integrity: Loaded X.509 cert 'Microsoft Corporation UEFI CA 2011: 13adbf4309bd82709c8cd54f316ed522988a1bd4'
[    0.415675] integrity: Loading X.509 certificate: UEFI:db
[    0.415685] integrity: Loaded X.509 cert 'Microsoft Windows Production PCA 2011: a92902398e16c49778cd90f99e4f9ae17c55af53'
[    0.417047] PM:   Magic number: 9:16:830
[    0.418281] RAS: Correctable Errors collector initialized.
[    0.422418] clk: Disabling unused clocks
[    0.422420] PM: genpd: Disabling unused power domains
[    0.639585] usb 1-3: new full-speed USB device number 2 using xhci_hcd
[    0.701558] ata4: SATA link down (SStatus 4 SControl 300)
[    0.701595] ata1: SATA link down (SStatus 4 SControl 300)
[    0.701633] ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[    0.701666] ata3: SATA link down (SStatus 4 SControl 300)
[    0.702615] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.SAT0.PRT1._GTF.DSSP], AE_NOT_FOUND (20250404/psargs-332)
[    0.702645] ACPI Error: Aborting method \_SB.PCI0.SAT0.PRT1._GTF due to previous error (AE_NOT_FOUND) (20250404/psparse-529)
[    0.702877] ata2.00: ATA-8: TOSHIBA HDWD110, MS2OA8R0, max UDMA/133
[    0.703294] ata2.00: 1953525168 sectors, multi 16: LBA48 NCQ (depth 32), AA
[    0.704267] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.SAT0.PRT1._GTF.DSSP], AE_NOT_FOUND (20250404/psargs-332)
[    0.704294] ACPI Error: Aborting method \_SB.PCI0.SAT0.PRT1._GTF due to previous error (AE_NOT_FOUND) (20250404/psparse-529)
[    0.704634] ata2.00: configured for UDMA/133
[    0.705227] scsi 1:0:0:0: Direct-Access     ATA      TOSHIBA HDWD110  A8R0 PQ: 0 ANSI: 5
[    0.706052] sd 1:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB)
[    0.706063] sd 1:0:0:0: [sda] 4096-byte physical blocks
[    0.706087] sd 1:0:0:0: [sda] Write Protect is off
[    0.706094] sd 1:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    0.706127] sd 1:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    0.706184] sd 1:0:0:0: [sda] Preferred minimum I/O size 4096 bytes
[    0.766920] usb 1-3: New USB device found, idVendor=046d, idProduct=c542, bcdDevice= 3.02
[    0.766934] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    0.766942] usb 1-3: Product: Wireless Receiver
[    0.766948] usb 1-3: Manufacturer: Logitech
[    0.769335]  sda: sda2 < sda5 sda6 >
[    0.770053] sd 1:0:0:0: [sda] Attached SCSI disk
[    0.770556] /dev/root: Can't open blockdev
[    0.770590] VFS: Cannot open root device "UUID=b8efe319-db7d-4232-b0b9-e61a2d243a51" or unknown-block(0,0): error -6
[    0.770598] Please append a correct "root=" boot option; here are the available partitions:
[    0.770606] 0800       976762584 sda
[    0.770612]  driver: sd
[    0.770618]   0802               1 sda2
[    0.770624]
[    0.770629]   0805       439836672 sda5 b869d6ab-05
[    0.770633]
[    0.770638]   0806       536921088 sda6 b869d6ab-06
[    0.770642]
[    0.770647] List of all bdev filesystems:
[    0.770650]  ext3
[    0.770653]  ext2
[    0.770657]  ext4
[    0.770659]  fuseblk
[    0.770663]  btrfs
[    0.770666]
[    0.770671] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    0.770687] fbcon: Taking over console
[    0.770709] CPU: 4 UID: 0 PID: 1 Comm: swapper/0 Tainted: G S                  6.16.4-artix1-1 #1 PREEMPT(full)  7949add403c977009d2ae12cdbd3e168e4ac6941
[    0.770739] Tainted: [S]=CPU_OUT_OF_SPEC
[    0.770748] Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./H310CM-HDV/M.2, BIOS P4.20 05/14/2019
[    0.770765] Call Trace:
[    0.770774]  <TASK>
[    0.770783]  dump_stack_lvl+0x5d/0x80
[    0.770807]  panic+0x119/0x2de
[    0.770829]  mount_root_generic+0x1cf/0x270
[    0.770852]  prepare_namespace+0x1dc/0x230
[    0.770867]  kernel_init_freeable+0x26a/0x2a0
[    0.770888]  ? __pfx_kernel_init+0x10/0x10
[    0.770904]  kernel_init+0x1a/0x140
[    0.770916]  ret_from_fork+0x197/0x1d0
[    0.770930]  ? __pfx_kernel_init+0x10/0x10
[    0.770943]  ret_from_fork_asm+0x1a/0x30
[    0.770963]  </TASK>
[    0.771072] Kernel Offset: 0x31400000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff

Re: Full disk encryption LUKS2(Argon2) + LVM + Booster initrd: Unable to mount rootf

Reply #2
Hi. Are you sure you set everything up correctly? I installed it according to this note and everything works as it should.

Re: Full disk encryption LUKS2(Argon2) + LVM + Booster initrd: Unable to mount rootf

Reply #3
yeah, the only difference is that i use booster instead of mkinitcpio. Never had this issue, i think it's because i didn't had argon2. Maybe booster doesn't support it, but i couldn't find any informtion

Re: Full disk encryption LUKS2(Argon2) + LVM + Booster initrd: Unable to mount rootf

Reply #4
Can you temporarily replace booster with mkinitcpio and test this assumption? Additionally, could you show the output of blkid and the contents of /etc/default/grub?

UPDATE:

Also, I noticed that you didn't provide the UUID for root as it is done on the documentation page:
Code: [Select]
title Linux with Booster
linux /vmlinuz-linux
initrd /booster-linux.img
options rd.luks.uuid=e122d09e-87a9-4b35-83f7-2592ef40cefa root=UUID=08684949-bcbb-47bb-1c17-089aaa59e17e rw
PS. This is for systemd-boot, but pay attention to the line with root=UUID=08684949-bcbb-47bb-1c17-089aaa59e17e.

Re: Full disk encryption LUKS2(Argon2) + LVM + Booster initrd: Unable to mount rootf

Reply #5
Sorry for late response

Indeed, mkinitcpio successfully loaded system. But there something i found: in /boot/grub/grub.cfg there was not initrd. I think the issue was that grub-mkconfig wasn't configured to work with booster.

P.S. i will send /etc/default/grub later, if you interested, or to help people with same issue

Re: Full disk encryption LUKS2(Argon2) + LVM + Booster initrd: Unable to mount rootf

Reply #6
Booster uses the same kernel parameters as systemd does, so instead of this:

Code: [Select]
cryptdevice=UUID="partition_uuid":root:allow-discards,no-read-workqueue,no-write-workqueue

For booster one needs:

Code: [Select]
rd.luks.options=discard,no-read-workqueue,no-write-workqueue rd.luks.name="partition_uuid"=root

However notice, that to truly integrate booster with grub, some additional changes are required, see this artix mailing list thread and also this booster issue.  Towards the last comments you can see the actual fixes required, and the one from "@borislavba" actually almost nailed it down.