Bug ID 1093213
Summary dracut: module firmware semantic gap
Classification openSUSE
Product openSUSE Tumbleweed
Version Current
Hardware Other
OS Other
Status NEW
Severity Enhancement
Priority P5 - None
Component Basesystem
Assignee bnc-team-screening@forge.provo.novell.com
Reporter lurodriguez@suse.com
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

The MODULE_FIRMWARE() macro extends the modinfo for a module to add required
firmware. This is used by dract on /usr/lib/dracut/dracut-init.sh to iterate
over modules and for modules which it detects are installed on initramfs, it
only complains if the firmware is not present on /lib/firmware.

for _fw in $(modinfo -k $kernel -F firmware $1 2>/dev/null); do

This is also the mechanism currently upstream on dracut. However
MODULE_FIRMWARE() is not used for certain firmware files where the driver
constructs the name at runtime dynamically. This could mean a failure for
drivers which miss their firmware and don't have a reprobe trigger of some
sort.

Many modules may simply fail if the firmware is not loaded early, as they have
no reprobe. Unloading and loading can help but that is in no way user friendly.

Its unclear exactly which modules this could fail for at this point as there is
no way to check for this.

This semantic gap was brought up recently in light of IMA's future possible use
for relying on the modinfo set by MODULE_FIRMWARE() also for building the new
future IMA firmware signing policies [0].

[0] http://lkml.kernel.org/r/20180514192853.GM27853@wotan.suse.de


You are receiving this mail because: