Unsolved

This post is more than 5 years old

10 Posts

614729

October 19th, 2006 14:00

Linux USB Problems on Dimension E521 AMD 64 X2

Hi,

Anyone else try running Linux (in my case Ubuntu 6.06) on the E521 with the AMD 64 X2 processor? I am having a problem when using xorg where my USB devices, more often my mouse, but my keyboard has had the problem as well stops working. It is almost like the interrupts start getting masked, but it isn't that. Because when the mouse stops working I am usually able to still use the keyboard.

It happens after a while, and usually in times of heavy use. I guess really instead of heavy I would say normal. But it has never happened that it will be working and then I let it lay idle for a while and then reach for it again and it be frozen.

This started happening under the amd64 version of Ubuntu but I have tried several different versions by now and the problem continues to happen.

As far as troubleshooting it has been a real pain. There is never a message in the kernel log or shown by running dmesg. Actually once or twice I have seen the irq status -71 received, but I am pretty sure that is not the cause, becuase it has only happened about twice out of maybe 40 occurances. And there is no message in the Xorg log either.

I have tried the default amd64-generic kernel the latest amd64-generic, the latest amd64-k8 kernel (I think 2.6.15-27.48) I have tried running the i386 uniprocessor kernel and the latest k7-smp kernel. All of them have the same problem.

In an effort to get to the bottom of it I have re-compiled the kernel according to the directions here: http://doc.gwos.org/index.php/Kernel_Compilation_Dapper and turned on debugfs and collected data, but there doesn't seem to be anything of interest. It seems I get hundreds of thousands of lines of -115 status (Which I believe is the controller just telling the device that yeah, I hear ya and I am going to do something EINPROGRESS) and then nothing. The mouse appears to continue to function at least the circuit which senses movement and turns the LED into bright mode. And under Windows I have had no problems at all.

The only solution that always works is to disconnect the USB cable and then reconnect it, which grabs a new device file /dev/input/event7 and probably does some other magic registers with the USB controller, and a bunch of other stuff and then the mouse starts working again.

The only other consistent problem I have noted is the IOAPIC stuff complains about a bug, and sometimes it won't boot and panics, other times it figures out a way to get by and does so. Because of this I have tried booting with noapic and other than changing the way /proc/interrupts looks there seems to be no change in the problem. Eventually under usage the mouse stops responding entirely. Even looking at cat /dev/input/mice there is nothing getting there.

I have upgraded the BIOS to 1.0.3 that had no effect. And also turned off the Cool and Quiet support in the bios.

Any thoughts, recommendations of how to proceed, or any other suggestions are appreciated.

Thank you,
Kevin

7 Posts

November 15th, 2006 21:00

I have a pci usb card:



CPU0 CPU1
0: 345494625 4076181 XT-PIC timer
6: 0 5 IO-APIC-edge floppy
8: 0 1 IO-APIC-edge rtc
9: 0 0 IO-APIC-level acpi
50: 11237138 13 IO-APIC-level ehci_hcd:usb5, eth0
58: 4723259 4785449 IO-APIC-level libata
66: 0 0 IO-APIC-level libata
74: 9130616 9331866 IO-APIC-level nvidia
209: 7735613 7850321 IO-APIC-level ohci_hcd:usb1, HDA Intel
217: 40967 42068 IO-APIC-level ohci_hcd:usb2
225: 1018139 1063606 IO-APIC-level ohci_hcd:usb3
233: 0 2 IO-APIC-level ehci_hcd:usb4
NMI: 0 0
LOC: 349565830 349565831
ERR: 1
MIS: 0

3 Posts

November 15th, 2006 21:00

We got six C521 for one of our labs with intention to run Debian Linux.
After installation of Debian 4.0 (etch), I started getting similar problems with
USB mouse and keyboard.

It seems the reason for the problem is that two device modules, ethernet and USB, share the same IRQ.
In /proc/interrupts, you can see that both ohci-hcd:usb2 and eth0 getting onto IRQ 5.
I was trying to reload b44 module (for eth0) by using modprobe, insmod, and modifying the kernel boot options
to force b44 onto the different unused IRQ, for example, 3.
It didn't work and the network module always was getting IRQ 5.
I wonder if it is hardcoded in the bios.

Someone mentioned that there is a work-around by using a pci add-on USB card. Could you please post your
/proc/interrupts. Thanks.

5 Posts

November 16th, 2006 13:00

Look at this. I think we should all do the same. The guy got his money back for uninstalling Windows XP on his DELL:
 
 

16 Posts

November 16th, 2006 14:00

TIME. I'll go talk to some lawyers and see if we have hope. I'm tried of Dell and other companies tricking their customers. I actually did ask a Dell support person before purchasing this system whether it runs ok with a stock RHEL4 install (2.6.9-34.ELsmp x86_64) kernel and was given a positive/affirmative answer.

I also did try using the 2.6.18.1 vanilla sources (only changing it to compile specifically for AMD64/Opteron and not EM64T). Then you have to use acpi=off otherwise it will hang but it boots otherwise. Then of course the mouse/keyboard problems remain.

16 Posts

November 16th, 2006 15:00

HAH! Dell blocks the words http://www.google.com/search?hl=en&q=define%20class%20action%20lawsuit&btnG=Google+Search from being posted.

3 Posts

November 16th, 2006 15:00

If you see two or more devices sitting on the same IRQ in /proc/interrupts, you may expect problems when they both start functioning.
In case of single core AMD64, for example, we get both 'ohci-hcd' (USB device) and eth0 (onboard network card) sitting
on IRQ 5.

I have disabled the onboard network interface in BIOS and installed a PCI one. Now the devices are sitting on two different
IRQs, 5 and 7. The problem with USB keyboard/mouse is gone now.
Similarly, an add-on pci USB card or USB hub allow putting the mouse or keyboard on the separate IRQ.

I wish Dell made the IRQs for the USB ports and/or NIC configurable in the BIOS.

16 Posts

November 16th, 2006 16:00

ok! now we're getting somewhere. I put a new NIC in, disabled the onboard NIC, but I'm still getting an IRQ conflict and mouse freezes:

% cat /proc/interrupts
CPU0 CPU1
5: 31556 899 IO-APIC-level ehci_hcd:usb1, eth0
15: 7709 10468 IO-APIC-level ohci_hcd:usb2

Also i'm running an x86_64 kernel 2.6.14.7 under RHEL4 with acpi=off iommu=soft swiotlb=65535 (otherwise it hangs on boot). It uses the same configuration options as the default 2.6.9-34ELsmp kernel except with the CPU type set to AMD64/opteron. Is there someway to force the kernel to use a different IRQ for a certain device?

16 Posts

November 16th, 2006 17:00

i just realized that the friggin system doesn't have have a PS/2 port for testing non-USB mouse!

16 Posts

November 16th, 2006 17:00

Neither the b44 (for the broadcom device built into the dell) modules nor the e100 module necessary for loading the NIC (I put into the box) have irq options. I tried using the ether=someIrq,eth0 kernel option for irq's that were not taken under /proc/interrupts. Depending on the value of "someIrq" sometimes it hung on boot, sometimes the video was noisy, sometimes it worked the same was as before (i.e. frozen mouse after a few minutes). In all cases the /proc/interrupts did not change and eth0 is always stuck along with the ehci_hcd

5: 1856 890 IO-APIC-level ehci_hcd:usb1, eth0
15: 0 53 IO-APIC-level ohci_hcd:usb2

However none of this makes sense because the mouse uses ohci_hcd. You can confirm this by unplugging and plugging the mouse in and then checking dmesg in a terminal, ohci_hcd will register an event, not ehci_hcd.

38 Posts

November 16th, 2006 23:00

This issue has been raised at bugzilla.kernel.org (bug 7397).
Some are reporting that kernel 2.6.18.2 is working.

16 Posts

November 17th, 2006 02:00

I'll try it tomorrow but I don't think that kernel will work especially because:

1) I tried 2.6.18.1 already a few weeks ago and it didn't work. Looking at the changelog for 2.6.18.2 here: http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.18.2 there is no change in any of the drivers related to this problem.

2) http://ubuntuforums.org/showthread.php?s=a29671c8a16161b3faed78e370f822fd&t=279626&page=6 one person reports 2.6.18.2 and another reports 2.6.18.1 doesn't work. One person said he tested 2.6.19-rc3 but was using a usb hub.

The only intelligent response I've received from this forum is about the possible IRQ conflict, but as I've mentioned I can't force them on my system.

* http://www.dell.com/content/topics/segtopic.aspx/e510_nseries?c=us&cs=19&l=en&s=dhs * Ohh the lies the lies! Did Dell even try a single install of Linux on this system themselves? They should send every customer who purchased this a free PCI USB card.

3 Posts

November 17th, 2006 11:00

My conclusion about solving the problem by assigning different IRQs was premature as it only delayed the occurence of the freeze up in my case - I'm sorry for the confusion.

You can make the USB module to jump onto the different IRQ by eliminating active devices in the system, for example, by removing all PCI add-on cards and setting 'Rear Dual USB1' to off in the bios. The mouse and keyboard are connected to the rear top USB pair.
After reboot, the onboard NIC, as usually, gets onto IRQ 5 and ohci_hcd onto IRQ 7.

According to 'modinfo', ohci_hcd is a USB-1.1 driver and ehci_hcd is USB-2.0. I wonder why would the
keyboard and mouse need to use the different modules? They are both slow enough in I/O for using USB-2.0.

BTW, I don't seem to find a good video module either - 'vesa' is away too slow, 'nv' is too fuzzy. I haven't compiled the native 'nvidia' yet. I wonder what do the people use?

14 Posts

November 17th, 2006 11:00

I followed the instructions here for a fedora core 6 system.

http://www.phoronix.com/redblog/?p=blog&i=NTU1MA

1 Rookie

 • 

20 Posts

November 17th, 2006 12:00

> 1) I tried 2.6.18.1 already a few weeks ago and it didn't work.
> Looking at the changelog for 2.6.18.2 here: http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.18.2
> there is no change in any of the drivers related to this problem.

Well, *I* have tried 2.6.18.2 and it DOES (seem to) work. Have not had a single mouse lockup while using it. As for the changelog, please, look again:

> The diffstat and short summary of the fixes are below.
> .........
> drivers/usb/core/devio.c | 26 ++-
> drivers/usb/core/notify.c | 3
> drivers/usb/core/usb.h | 1

Have not read those files, but they *might* have something to do, bearing in mind that 2.6.18.2 works way better than 2.6.18.1

> The only intelligent response I've received from this forum is about the possible IRQ conflict,
> but as I've mentioned I can't force them on my system.

Don't bother. I haven't taken the trouble to manually reassign interrupts: deactivating the network in the BIOS is enough to show that nothing changes. With the network chip deactivated the mouse and keyboard appear locked and unlockable the moment Edgy boots, just as with the network chip active.

> Did Dell even try a single install of Linux on this system themselves?

The only possibility to save their presumed good faith is that they only tried with the mouse and keyboard plugged into the ports in an Dell Ultrasharp monitor. It does not save their presumed technical competence or quality assurance, though.

38 Posts

November 17th, 2006 12:00

I am having very different behavior. I am running FC6 with
kernel 2.6.18-1.2849. I have read that this is a slightly
modified 2.6.18.2. However, if I boot w/ no args I get one
processor core running, no mouse problems. If I boot with
acpi=off (and tried iommu=soft and swiotlb=65535 also) my
machine will not boot. It locks up after displaying
"NET: Registered (can't remember rest of line)".
No Events found!

Top