Bug 378651 - mkinitrd puts firmware blobs in /lib/firmware instead of /firmware
Summary: mkinitrd puts firmware blobs in /lib/firmware instead of /firmware
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: mkinitrd
Version: 8
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Peter Jones
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 329511 (view as bug list)
Depends On:
Blocks: 380641
TreeView+ depends on / blocked
 
Reported: 2007-11-12 19:56 UTC by Patrick C. F. Ernzer
Modified: 2008-07-14 20:30 UTC (History)
4 users (show)

Fixed In Version: 9
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-07-14 20:30:22 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Patrick C. F. Ernzer 2007-11-12 19:56:44 UTC
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):
mkinitrd-6.0.19-4.fc8

How reproducible:
always

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 15:59:51 UTC
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 17:55:21 UTC
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 19:14:22 UTC
Peter, any chance you could elaborate on the "simple code bug" you referenced in
comment#2?

Comment 5 Johannes Walch 2008-01-03 16:24:27 UTC
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
please?

*** 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-17 00:56:08 UTC
*** Bug 329511 has been marked as a duplicate of this bug. ***

Comment 7 Mike Snitzer 2008-01-18 19:39:58 UTC
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 (5.1.19.6-19).

I'd really like to see this resolved in >= RHEL5U2...

Comment 8 Jon Stanley 2008-01-22 02:33:02 UTC
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.