Bug 378651 - mkinitrd puts firmware blobs in /lib/firmware instead of /firmware
mkinitrd puts firmware blobs in /lib/firmware instead of /firmware
Product: Fedora
Classification: Fedora
Component: mkinitrd (Show other bugs)
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Peter Jones
Fedora Extras Quality Assurance
: 329511 (view as bug list)
Depends On:
Blocks: 380641
  Show dependency treegraph
Reported: 2007-11-12 14:56 EST by Patrick C. F. Ernzer
Modified: 2008-07-14 16:30 EDT (History)
4 users (show)

See Also:
Fixed In Version: 9
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-07-14 16:30:22 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Patrick C. F. Ernzer 2007-11-12 14:56:44 EST
Description of problem:
when one installs a system that has it's disk attached via QLA HBA, and the
ql??xx-firmware rpm is installed, mkinitrd will put the firmware blob under
/lib/firmware on the initrd. It would seem that the system expects the blobs top
be under /firmware though.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. have a system where / is on a disk attached through QLA HBA
2. install as per Bug #377921
3. reboot after install
Actual results:
system does not come up. qla2xxx kernel module complains about not finding firmware

Expected results:
mkinitrd puts firmware in corrcet place on initial ramdisk

Additional info:
checking out the initrd as described at
http://kbase.redhat.com/faq/FAQ_85_4791.shtm you will see that mkinitrd (and
also anaconda during installation) puts the firmware blobs in /lib/firmware. The
working initrd attached to bug #377921 has the blobs in /firmware, so one would
presume the bug lies with mkinitrd.
Comment 2 Peter Jones 2007-11-13 10:59:51 EST
The directory is actually not the problem; the initrd created by mkinitrd is
supposed to mimic the installed system here.  The problem is a simple code bug :/

Test packages are at http://pjones.fedorapeople.org/mkinitrd/ .
Comment 3 Patrick C. F. Ernzer 2007-11-13 12:55:21 EST
in response to Comment #2
yupp, works like a charm with the packages from that repo (did a local mirror
here as my machine cannot access ouside) and of course the fix from Bug 377921
to be able to install at all.

Installation was done via kickstart and I added a repo line for my mirror
Comment 4 Mike Snitzer 2007-12-11 14:14:22 EST
Peter, any chance you could elaborate on the "simple code bug" you referenced in
Comment 5 Johannes Walch 2008-01-03 11:24:27 EST
Here is what Peter changed in the code as far as I can see. It worked well for
me, even when back-porting to FC7. Can this be included in the regular updates

*** hotplug.c.uevent-done       2007-09-27 19:26:43.000000000 +0200
--- hotplug.c   2008-01-03 12:25:27.000000000 +0100
*** 440,446 ****
      char *token;
      char *action = NULL, *subsystem = NULL, *seqnum = NULL;
      long cur;
!     int done;

      action = envz_get(ue->envz, ue->envz_len, "ACTION");
      subsystem = envz_get(ue->envz, ue->envz_len, "SUBSYSTEM");
--- 440,446 ----
      char *token;
      char *action = NULL, *subsystem = NULL, *seqnum = NULL;
      long cur;
!     int done = 0;

      action = envz_get(ue->envz, ue->envz_len, "ACTION");
      subsystem = envz_get(ue->envz, ue->envz_len, "SUBSYSTEM");
Comment 6 Jon Stanley 2008-01-16 19:56:08 EST
*** Bug 329511 has been marked as a duplicate of this bug. ***
Comment 7 Mike Snitzer 2008-01-18 14:39:58 EST
Given this is also on issue on RHEL5U1, should I open a new bug relative to it?

comment#5's suggested patch to nash/hotplug.c resolves the problem on RHEL5U1's
mkinitrd (

I'd really like to see this resolved in >= RHEL5U2...
Comment 8 Jon Stanley 2008-01-21 21:33:02 EST
Yes, please open a new bug/support case so that the proper RHEL folks can take a
look at this.

Note You need to log in before you can comment on or make changes to this bug.