Comment 31 for bug 213439

Revision history for this message
In , Pete (pete-redhat-bugs) wrote :

I reproduced the problem locally and the following is happening:

- At kernel init time, static libusual is probed and it registers a driver
- When USB HCDs are loaded, khubd probes USB buses; this does kevent_add(ADD)
  and loops matching drivers, then calling driver's probe routines
- The libusual is probed and correctly refuses the probe, so the result is
  indistinguishable from not having a driver in the initrd
- When udev starts, it does not force any kind of re-probing of any buses.
  Instead, it fetches events which kevent_add posted, then runs
   modprobe usb:vXXXXpYYYY.....
  The alias resolves to libusual
- The modprobe fails to load anything, because libusual is static

So, I did not think this through well enough. I expected the replay to
load correct drivers, which it attempts to do, but fails.

I was wrong in the comment #7, the workaround is to include usb-storage
with the following
 cd /boot
 mv initrd-2.6.18-1.2693.fc6.img initrd-2.6.18-1.2693.fc6.img.save
 mkinitrd --with=usb-storage initrd-2.6.18-1.2693.fc6.img 2.6.18-1.2693.fc6
(with the appropriate kernel version used accordingly)