Bug 120911

Summary: usb-controller fails to load for kernels after about release 290
Product: [Fedora] Fedora Reporter: Bob Arendt <rda>
Component: initscriptsAssignee: Bill Nottingham <notting>
Status: CLOSED RAWHIDE QA Contact: Brock Organ <borgan>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: rvokal
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-04-16 07:50:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Bob Arendt 2004-04-15 05:35:56 UTC
This appears to be the same problem described by Ralf Ertzinger
in Bug 120626, but not necessarily the same problem as the original
poster.

Problem:
I can't access USB devices after boot with the latest 2.6.5-1.319smp
kernel (and a of couple earlier versions).

Solution/workaround:
It appears that problem is near line 197 in /etc/rc.d/rc.sysinit:
-----------------------
196 if ! strstr "$cmdline" nousb && ! strstr "$cmdline" nomodules ; then
197   if ! LC_ALL=C fgrep -q "usb" /proc/devices 2>/dev/null ; then
198     aliases=`/sbin/modprobe -c | awk '/^alias usb-controller/ {
print $3
198  }'`
199     if [ -n "$aliases" -a "$aliases" != "off" ]; then
200       modprobe usbcore
201       for alias in $aliases ; do 
202         [ "$alias" = "off" ] && continue
203         action $"Initializing USB controller ($alias): " modprobe
$alias
204       done
 .. and so on ..
-----------------------

Line 197 is checking if usb is loaded.  It appears that usbcore is now
built into the kernel (for keyboards & such?), so the test succeeds.
**BUT** this bypasses the step where the usb-controller alias is
checked and loaded, so module uhci-hcd (in my case) is never loaded.
jpilot, usbfs, and all the other usb stuff fails to function.

This section of rc.sysinit should probably check that the usb
device exists, skip the "modprobe usbcore", and procede to
load the aliases.

My quick (ugly) hack to rc.sysinit is to comment out
lines 197, 200, and 207

Comment 1 Bill Nottingham 2004-04-16 07:50:24 UTC
Fixed in 7.50-1