From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux ppc; en-US; rv:1.6) Gecko/20040312 Epiphany/1.1.12 Description of problem: Rc.sysinit should try to remove controller first in case initrd inserted it without all the USB drivers available (cause hotplut to re-run with all drivers available). Version-Release number of selected component (if applicable): initscripts-7.57-1 How reproducible: Always Steps to Reproduce: 1. Find a system with a USB mouse. Create an initrd that loads ohci-hcd (or similar) module but does not contain the mousedev kernel module or hotplug because these are not needed to boot. 2. Boot the system. 3. Notice that the initrd installs the ohci-hcd module but hotplug and the mousedev module do not exist. At this point the USB mouse does not work. 4. Notice that once the root disk is set up and rc.sysinit is executed by init, the ohci-hcd module is already loaded. Hotplug and the mousedev module are now available. However, rc.sysinit does not generate hotplug events by inserting the ohci-hcd module as it has already been installed by the initrd. Actual Results: The mousedev module is not automatically installed. It must be loaded by hand. Expected Results: The mousedev module (and all other required USB modules) should be loaded by the hotplug system. The actions of the initrd should have no affect on this. Additional info:
Created attachment 100797 [details] Causes rc.sysinit to rmmod USB controller module before loading it This patch implements one possible solution to this problem. By attempting to remove the USB controller module before (re-)inserting it, rc.sysinit ensures that the module will be inserted with the hotplug system and all USB modules present. As a result, the appropriate hotplug events will occur.
This shouldn't be needed, as mousedev and keybdev are built in.
In future releases, the udev startup should handle this.