This really is unfortunate, but the way you've tried to fix wouldn't
work in general:

- Not all drivers log in the same way (at least in the upstream kernel)
- Those messages may have been expired from the kernel message buffer
   when mkinitramfs runs
- The firmware files requested by a driver can change between kernel
   versions

That's what I was asking advice. I feel really uncomfortable about parsing kernel logs for deducing the next boot. I know that there are some many ways to make it wrong :)

To solve this we would need kernel drivers to specify a mapping between
device IDs and firmware files.
Yes, I hope this perfect world could exist. But I guess this mapping exists somewhere in the driver to load the corresponding firmware. Or the firmware has something like this in its headers.
One thing we could perhaps do in initramfs-tools is to add a
configuration variable that lets you override which firmware files get
included (like MODULES=list, but for firmware).  Would that work for
you?

That would be great. Since I can build my own list myself (based on kernel logs ;) ), and only where it matters. In case of AMD GPU, the list is huge. In case of i915, this is nearly useless, except to win at most 2MB.

Thanks for your quick answer and helpful proposition!

Adrien

Reply via email to