#991417 simple-cdd generated iso: No kernel modules were found

#991417#5
Date:
2021-07-23 01:23:16 UTC
From:
To:
Boot method: "simple-cdd --qemu-only"
Image version: 5.10.0-7-amd64
Date: 2021-07-22

Machine: qemu kvm, on top of bullseye amd64
Processor: QEMU Virtual CPU version 2.5+ (over i7-6920HQ physical)
Memory: 4G in QEMU (64G physical)

I've been using simple-cdd running on my bullseye host to generate a custom iso (also bullseye).  My simple-cdd config had been working fine until a couple days ago.  Now I am getting an error early in debian-installer when I boot from the generated ISO:

"No kernel modules were found. This probably is due to a mismatch between the kernel used by this version of the installer and the kernel version available in the archive."

I find that simple-cdd is generating the iso with the following kernel:
Linux ... 5.10.0-7-amd64 #1 SMP Debian 5.10.40.1 (2021-05-28) x86_64 GNU Linux

However the host system (recently apt upgraded) has the following kernel:
Linux ... 5.10.0-8-amd64 #1 SMP Debian 5.10.46.2 (2021-07-20) x86_64 GNU Linux
(note the date on the kernel is only 2 days prior from when I ran into this issue)

I am not specifying mirror/codename nor mirror/suite in the preseed that simple-cdd is using.  My understanding is this allows debian-installer to install whatever version ends up in the generated iso's initrd.  I also tried again with these values enabled and set to "bullseye" however the problem remained.

Searching for this error I find that other people that have had the same issue in the past.  In past bug reports this seems to have been fixed somewhere in the distro, so I'm reporting it here.

Since this problem seems to come back every now and again, I'd also like to know if there is a workaround that people can put into their simple-cdd config to allow things to keep working when the kernels occasionally get out of sync like this.  If that's possible, it might be good to mention that workaround here, for future searchers.

Thanks!

#991417#10
Date:
2021-07-23 05:35:10 UTC
From:
To:
Hi Mike,

Mike Depot <mdepot@comcast.net> (2021-07-22):

This might be best filed against simple-cdd but anyway…

Yes, the ABI of the linux kernel was bumped.

I would hope it should be possible to point simple-cdd (and debian-cd)
at the daily builds (which have the required change), but a quick grep
around in the simple-cdd code source and Git repository didn't help me
get the “how” part.

Alternatively, wait for the RC3, which should happen in the next few
days (maybe one week or two, depending on what happens within Debian).


Cheers,

#991417#15
Date:
2021-07-23 08:23:29 UTC
From:
To:
Hi Mike!

This happens when the kernel ABI version that debian-installer booted into does not match the kernel
ABI version of the debian-installer module udebs on the installation medium.

I assume that simple-cdd is just re-using the d-i images which contain a certain kernel version while
retrieving the d-i module udebs from the archives which then can lead to the version mismatch in
case the kernel is updated in the archives.

Thus, the bug lies in simple-cdd which should pick the d-i images and the d-i module udebs from Debian
testing or stable where such a mismatch cannot occur. Alternatively, it could also rebuild debian-installer
itself to make sure the d-i images use the kernel ABI version that matches the one of the d-i module
udebs.

Adrian

#991417#20
Date:
2021-07-25 19:08:54 UTC
From:
To:
This is more likely a bug with how artifacts are being published when the
kernel ABI is bumped during RCs, as the same thing happened during buster
until it was released...

Both of these links have OLD artifacts and the installer will not work,
thus PXE boots are broken all the same:
http://ftp.debian.org/debian/dists/testing/main/installer-amd64/current/images/netboot/debian-installer/amd64/
http://ftp.debian.org/debian/dists/buster/main/installer-amd64/current/images/netboot/debian-installer/amd64/