Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Warning! ehci_hcd should always be loaded before uhci_hcd

267 views
Skip to first unread message

Bit Twister

unread,
May 5, 2010, 2:38:45 AM5/5/10
to
dmesg has Warning! ehci_hcd should always be loaded before uhci_hcd

which results in interrupts are disabled.

Does anyone have a suggestion on how I can get ehci_hdc loaded before
ohci_hcd ?

Snippet from dmesg:

sr0: scsi3-mmc drive: 48x/48x writer dvd-ram cd/rw xa/form2 cdda tray
Uniform CD-ROM driver Revision: 3.20
sr 3:0:0:0: Attached scsi CD-ROM sr0
sr1: scsi3-mmc drive: 4x/40x cd/rw xa/form2 cdda tray
sr 3:0:1:0: Attached scsi CD-ROM sr1
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
ohci_hcd 0000:00:13.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
ohci_hcd 0000:00:13.0: OHCI Host Controller
ohci_hcd 0000:00:13.0: new USB bus registered, assigned bus number 1
ohci_hcd 0000:00:13.0: irq 19, io mem 0xfe02e000
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
Warning! ehci_hcd should always be loaded before uhci_hcd and ohci_hcd, not after
input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input2
ACPI: Power Button [PWRB]
input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input3
ACPI: Power Button [PWRF]
usb usb1: New USB device found, idVendor=1d6b, idProduct=0001
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: OHCI Host Controller
usb usb1: Manufacturer: Linux 2.6.33.3-desktop-1mnb ohci_hcd
usb usb1: SerialNumber: 0000:00:13.0
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 4 ports detected
ehci_hcd 0000:00:13.2: PCI INT A -> GSI 19 (level, low) -> IRQ 19
ehci_hcd 0000:00:13.2: EHCI Host Controller
ehci_hcd 0000:00:13.2: new USB bus registered, assigned bus number 2
ehci_hcd 0000:00:13.2: irq 19, io mem 0xfe02c000
ehci_hcd 0000:00:13.2: USB 2.0 started, EHCI 1.00
usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: EHCI Host Controller
usb usb2: Manufacturer: Linux 2.6.33.3-desktop-1mnb ehci_hcd
usb usb2: SerialNumber: 0000:00:13.2
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 8 ports detected
ohci_hcd 0000:00:13.1: PCI INT A -> GSI 19 (level, low) -> IRQ 19
ohci_hcd 0000:00:13.1: OHCI Host Controller
ohci_hcd 0000:00:13.1: new USB bus registered, assigned bus number 3
ohci_hcd 0000:00:13.1: irq 19, io mem 0xfe02d000

irq 19: nobody cared (try booting with the "irqpoll" option)
Pid: 195, comm: modprobe Not tainted 2.6.33.3-desktop-1mnb #1
Call Trace:
[<c0428277>] ? printk+0x1d/0x26
[<c01903dc>] __report_bad_irq+0x2c/0x90
<snip>

[<c017a6f1>] sys_init_module+0xb1/0x220
[<c01f40b2>] ? sys_read+0x42/0x70
[<c0103bdf>] sysenter_do_call+0x12/0x28
handlers:
[<f84014a0>] (usb_hcd_irq+0x0/0x80 [usbcore])
[<f84014a0>] (usb_hcd_irq+0x0/0x80 [usbcore])
[<f84014a0>] (usb_hcd_irq+0x0/0x80 [usbcore])
Disabling IRQ #19

Benny Nielsen

unread,
May 5, 2010, 10:55:12 AM5/5/10
to
Bit Twister wrote:

> dmesg has Warning! ehci_hcd should always be loaded before uhci_hcd
>
> which results in interrupts are disabled.
>

snip...

Have a look in /etc/modprobe.conf

Bit Twister

unread,
May 5, 2010, 11:38:23 AM5/5/10
to

Looked good to me, but dmesg shows otherwise.


$ cat /etc/modprobe.conf
install scsi_hostadapter /sbin/modprobe pata_atiixp; /sbin/modprobe sata_sil; /sbin/modprobe sbp2; /bin/true
install usb-interface /sbin/modprobe ehci_hcd; /sbin/modprobe ohci_hcd; /bin/true
options snd slots=snd_atiixp,snd_hda_intel
options ipv6 disable=1

Benny Nielsen

unread,
May 5, 2010, 12:12:53 PM5/5/10
to
Bit Twister wrote:

Yah right I changed to:

install scsi_hostadapter /sbin/modprobe pata_sis; /bin/true
install usb-interface /sbin/modprobe ehci_hcd; /bin/true
install usb-interface /sbin/modprobe ohci_hcd; /bin/true
alias sound-slot-0 snd_emu10k1

and got same dmesg warning.
There is a bug report on this: https://qa.mandriva.com/show_bug.cgi?id=46969

Bit Twister

unread,
May 5, 2010, 12:23:27 PM5/5/10
to

Yes, I had read about that before posting. I was hoping for an easy
configuration file change.

Bit Twister

unread,
May 5, 2010, 1:21:28 PM5/5/10
to
On Wed, 5 May 2010 06:38:45 +0000 (UTC), Bit Twister wrote:
> dmesg has Warning! ehci_hcd should always be loaded before uhci_hcd
>
> which results in interrupts are disabled.
>
> Does anyone have a suggestion on how I can get ehci_hdc loaded before
> ohci_hcd ?

Solution to force ehci_hcd loading before my ohci_hcd module,
create /etc/modprobe.preload.d/usb-load-ehci-first with

install ohci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe --ignore-install ohci_hcd $CMDLINE_OPTS


Sadly, still get stack trace, Disabled IRQ 19 and interrupts switched to
polling mode. :-(

Current modprobe setup:

# cat /etc/modprobe.preload.d/usb-load-ehci-first
install ohci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe --ignore-install ohci_hcd $CMDLINE_OPTS

# cat /etc/modprobe.conf


install scsi_hostadapter /sbin/modprobe pata_atiixp; /sbin/modprobe sata_sil; /sbin/modprobe sbp2; /bin/true

install usb-interface /sbin/modprobe ehci_hcd; /bin/true
install usb-interface /sbin/modprobe ohci_hcd; /bin/true

Doug Laidlaw

unread,
May 5, 2010, 12:27:39 PM5/5/10
to

From Googling, you aren't the only one having p[roblems with this, but
no real answers, e.g.:

http://www.mail-archive.com/linux-u...@lists.sourceforge.net/msg16742.html

Sorry, but it is way over my head.

Doug.

Bit Twister

unread,
May 5, 2010, 2:13:32 PM5/5/10
to
On Thu, 6 May 2010 02:27:39 +1000, Doug Laidlaw wrote:
>
> From Googling, you aren't the only one having problems with this, but

Yes, I was impressed with all the hits I saw going back several
years. :(

David W. Hodgins

unread,
May 5, 2010, 2:54:57 PM5/5/10
to
On Wed, 05 May 2010 13:21:28 -0400, Bit Twister <BitTw...@mouse-potato.com> wrote:

> Solution to force ehci_hcd loading before my ohci_hcd module,

After you make the changes to get ehci to load first, the initrd
has to be rebuilt ...

lsinitrd /boot/initrd-2.6.31.13-desktop-1mnb.img |grep hci
-rw-r--r-- 1 root root 17492 Apr 27 21:22 lib/modules/2.6.31.13-desktop-1mnb/uhci-hcd.ko.gz
-rw-r--r-- 1 root root 19764 Apr 27 21:22 lib/modules/2.6.31.13-desktop-1mnb/ohci-hcd.ko.gz
-rw-r--r-- 1 root root 30237 Apr 27 21:22 lib/modules/2.6.31.13-desktop-1mnb/ehci-hcd.ko.gz
echo "Loading ehci-hcd module"
modprobe -q ehci-hcd
echo "Loading ohci-hcd module"
modprobe -q ohci-hcd
echo "Loading uhci-hcd module"
modprobe -q uhci-hcd

Regards, Dave Hodgins

--
Change nomail.afraid.org to ody.ca to reply by email.
(nomail.afraid.org has been set up specifically for
use in usenet. Feel free to use it yourself.)

Bit Twister

unread,
May 5, 2010, 3:27:38 PM5/5/10
to
On Wed, 05 May 2010 14:54:57 -0400, David W. Hodgins wrote:
> On Wed, 05 May 2010 13:21:28 -0400, Bit Twister <BitTw...@mouse-potato.com> wrote:
>
>> Solution to force ehci_hcd loading before my ohci_hcd module,
>
> After you make the changes to get ehci to load first, the initrd
> has to be rebuilt ...

Pardon my ignorance, but I thought the modprobe directories/files were
to load items not in the image.

Bit Twister

unread,
May 5, 2010, 3:31:52 PM5/5/10
to
On Wed, 05 May 2010 14:54:57 -0400, David W. Hodgins wrote:
>
> After you make the changes to get ehci to load first, the initrd
> has to be rebuilt ...

No help there.

# rm initrd-2.6.33.3-desktop-1mnb.img
rm: remove regular file `initrd-2.6.33.3-desktop-1mnb.img'? y

# mkinitrd /boot/initrd-2.6.33.3-desktop-1mnb.img 2.6.33.3-desktop-1mnb

# lsinitrd /boot/initrd-$(uname -r).img | grep hci
-rw-r--r-- 1 root root 18256 May 4 16:53 lib/modules/2.6.33.3-desktop-1mnb/ohci1394.ko.gz
init
echo "Loading ohci1394 module"
modprobe -q ohci1394

# uname -r
2.6.33.3-desktop-1mnb

David W. Hodgins

unread,
May 5, 2010, 4:27:01 PM5/5/10
to
On Wed, 05 May 2010 15:27:38 -0400, Bit Twister <BitTw...@mouse-potato.com> wrote:

> Pardon my ignorance, but I thought the modprobe directories/files were
> to load items not in the image.

That's true, however with Mandriva, the usb modules will normally
be put in the initrd, and loaded based on the order in the
config files when the initrd was created.

Changing the config files after the initrd is created doesn't change
the order of the loading in the initrd init script.

When the real init program tries to load them based on what is in
the config files, it'll find they are already loaded (by the initrd
init script), and will just ignore the config file entries.

Try running ...
lsinitrd /boot/initrd-2.6.31.13-desktop-1mnb.img|grep hci
to confirm if the initrd init script is loading them, and in what
order.

To update the initrd, after changing the order in the config files, ...
mkinitrd -f /boot/initrd-2.6.31.13-desktop-1mnb.img 2.6.31.13-desktop-1mnb

Confirm the order has been changed using the lsinitrd command.

Bit Twister

unread,
May 5, 2010, 4:47:00 PM5/5/10
to
On Wed, 05 May 2010 16:27:01 -0400, David W. Hodgins wrote:
> On Wed, 05 May 2010 15:27:38 -0400, Bit Twister <BitTw...@mouse-potato.com> wrote:
>
>> Pardon my ignorance, but I thought the modprobe directories/files were
>> to load items not in the image.
>
> That's true, however with Mandriva, the usb modules will normally
> be put in the initrd, and loaded based on the order in the
> config files when the initrd was created.
>
> Changing the config files after the initrd is created doesn't change
> the order of the loading in the initrd init script.
>
> When the real init program tries to load them based on what is in
> the config files, it'll find they are already loaded (by the initrd
> init script), and will just ignore the config file entries.
>
> Try running ...
> lsinitrd /boot/initrd-2.6.31.13-desktop-1mnb.img|grep hci
> to confirm if the initrd init script is loading them, and in what
> order.
>
> To update the initrd, after changing the order in the config files, ...
> mkinitrd -f /boot/initrd-2.6.31.13-desktop-1mnb.img 2.6.31.13-desktop-1mnb
>
> Confirm the order has been changed using the lsinitrd command.

Not on 2010.1 beta 2 :

# /sbin/lsinitrd /boot/initrd-$(uname -r).img |grep hci


-rw-r--r-- 1 root root 18256 May 4 16:53 lib/modules/2.6.33.3-desktop-1mnb/ohci1394.ko.gz
init
echo "Loading ohci1394 module"
modprobe -q ohci1394

# mkinitrd -f /boot/initrd-$(uname -r).img $(uname -r)

# /sbin/lsinitrd /boot/initrd-$(uname -r).img |grep hci

0 new messages