anatol/booster

Kernel panic after updating to linux 5.10.2

Closed this issue · 7 comments

libcg commented

I'm getting a kernel panic right at boot because PID 1 panics:

panic: open /usr/lib/modules/5.9.14-arch1-1/booster.alias: no such file or directory

goroutine 1 [running]:
main.main()
        init/main.go:785 + 0xd0

I'm using booster-git freshly installed from AUR. Here's my config file:

universal: false
modules: i915

And boot entry:

title	arch
linux	/vmlinuz-linux
initrd	/intel-ucode.img
initrd	/booster-linux.img
options	root=/dev/sda2 rw

When installing the linux package from [testing], booster is invoked like:

booster -force -output /boot/booster-linux.img -kernelVersion 5.10.2-arch1-1

Any idea what's wrong? It worked fine with linux 5.9.

could you please show me output of lsinitcpio /boot/booster-linux.img?

booster -force -output /boot/booster-linux.img -kernelVersion 5.10.2-arch1-1

This looks fine. It builts kernel for the (current) 5.10.2-arch1-1.

panic: open /usr/lib/modules/5.9.14-arch1-1/booster.alias: no such file or directory

But this line says you are trying to use that image for kernel 5.9.14-arch1-1. Hmm.. Do you have multiple kernels in your boot configs?

PS wrt your config:

universal: false

false is the default value, so you do not need to set it.

modules: i915

is this module for graphics? Is there a reason you want to load it in the initramfs? The initramfs' goal is to mount the root filesystem and all the graphics/extra perepherials should be really configured by the main init system (systemd+udev).

I just pushed a commit that provides a clear error message in case of the kernel version mismatch.

If you rebuild the booster image with the target linux kernel then the panic you see should go away.

libcg commented

I just noticed that the problem goes away when the mkinitcpio package is installed during kernel update.

After digging further, it looks like the initramfs image was generated correctly, however vmlinuz was NOT correctly updated in the absence of mkinitcpio. So the 5.10.2 package would be installed, but vmlinuz would be stuck on 5.9, causing the version mismatch.

booster-git needs to be updated to account for this.

Heh, mkinicpio copies files to /boot indeed. I guess it is time for me to start using booster without mkinitcpio installed.

The fix for this issue is on the way.

Your issue should be fixed now. Please try it and let me know if you see any problems with it.

libcg commented

Yes, it works fine now, thanks for fixing this so quickly. It's a nice project, saves me a bunch of time during kernel updates, although I'm waiting for linux-lts to support zstd before I can fully transition.

To answer your previous question, I added i915 to the modules for early KMS as described here. After testing without, it doesn't make much difference on my laptop so I took it out.

although I'm waiting for linux-lts to support zstd before I can fully transition.

Adding gz compression (used by LTS) is something I have in my TODO list. Filed a ticked #10 to track this activity.