wbsd.ko hangs amd64 kernel due to wrong DMA memory allocation

Bug #75084 reported by hm
4
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Won't Fix
Undecided
Unassigned
linux-source-2.6.17 (Ubuntu)
Won't Fix
Medium
Kyle McMartin
linux-source-2.6.20 (Ubuntu)
Fix Released
Medium
Ben Collins

Bug Description

Binary package hint: linux-image-2.6.17-10-generic

system: a laptop with an amd64 CPU (Turion 64 MT-40) and a wbsd-compartible SD-card reader (W83L518D)

OS: Ubuntu 6.10 server x86_64

kernel: linux-image-2.6.17-10-generic_2.6.17-10.33_amd64.deb

wbsd SD-card reader driver (CONFIG_MMC_WBSD) has some severe problems with DMA memory allocation on amd64 platform. If the machine has a wbsd-compartible SD-card reader, the module loads automaticaly and causes kernel (linux-image-2.6.17-10-generic_2.6.17-10.33_amd64.deb) to oops and in many cases hangs the machine. This is due to the fact that the original author wrote the driver for ia32 and still didn't port it to amd64. Here is the link http://lkml.org/lkml/2005/9/25/95 where he aknowledges it. Also, see a relevant part of my dmesg in the attachment.

While it is desirable that the default kernel includes as many hardware drivers as possible, it is also important that the default kernel boots at all on any machine ;).

The solution is: exclude wbsd.ko (CONFIG_MMC_WBSD) from any linux-image*_amd64 kernel.

Tags: cft-2.6.27
Revision history for this message
hm (colimit) wrote :
description: updated
hm (colimit)
description: updated
Changed in linux-source-2.6.17:
assignee: nobody → kyle
importance: Undecided → Medium
status: Unconfirmed → Confirmed
Revision history for this message
Kyle McMartin (kyle) wrote :

It will be disabled for the next security upload. In the mean time you can blacklist it in /etc/modprobe.d/blacklist. If you can find the time, can you please test feisty?

Revision history for this message
Kyle McMartin (kyle) wrote :

A thought, can you try the edgy kernel with "iommu=off" on the kernel command line?

Changed in linux-source-2.6.17:
status: Confirmed → Needs Info
Revision history for this message
hm (colimit) wrote :

let me clarify the situation: I, personaly, don't need help. I compile my own kernels, and I use the default kernel only once, on the first boot. But if somebody installs ubuntu with the default kernel, it will not boot, it will just permanently hang. You cannot put wbsd.ko into /etc/modprobe.d/blacklist, or just delete it from /lib/modules, because the machine will not boot! And one has to have some knowledge to be able to track the problem down to wbsd.ko, and either use a live CD to tweak /etc/modprobe.d/blacklist or /lib/modules/*, or, as you say, feed "iommu=off" to the kernel at the boot time (not sure it will work). An average user simply doesn't have that knowledge.

the default kernel has to boot out of the box, with no tweaks.

Revision history for this message
Kyle McMartin (kyle) wrote :

The only reason we're not sure it will work, is you ignoring my request to test it. If you COULD test it, then we could put a permanent fix into place. You seem to be the only person who has reported a bug about this, so without your help, it's just going to get ignored since I don't have a machine which has this hardware combination.

Revision history for this message
hm (colimit) wrote :

Hm.. I didn't see any "I request you to test it" !?

anyway, I cannot test it on edgy kernel, but with my own kernel "iommu=off" doesn't work (see attached dmesg). I guess the reason why no ubuntu user ever reported this bug is because the linux literacy level of an average user of this distro is not very high (and this is a good thing, it means you attract new followers from the "dark side"). People just give up when the system they just installed refuses to boot no metter what.

A more appropriate thing for me would be to submit this bug to kernel.org, but since after a few years since it was first reported on the net it is still not fixed, and based on my own experience of bug-reporting to kernel.org, their back-log time is not even 2 months like here, but tends to infinity.

It is up to you to fix a bug in the kernel (turn off CONFIG_MMC_WBSD). You are not doing me a favour. I already did the hardest part -- diagnosed the problem.

Revision history for this message
Kyle McMartin (kyle) wrote :

Agreed. Sorry if I sounded accusative, I didn't mean it this way at all. I fully agree that this needs to be dealt with promptly and properly, I'll work on trying to track down either a fix, or just disable the driver for feisty if it doesn't seem likely we'll be able to fix it. (I've already been in contact with the author.)

Revision history for this message
hm (colimit) wrote :

If you will be able to persuade Pierre Ossman to learn some AMD64 IOMMU, it would be the best. So far, it seams that wbsd is the only SD-card reader driver which made it into the kernel (I know of O2Micro driver from musclecard, but it has even more problems).

Changed in linux-source-2.6.20:
assignee: nobody → kyle
importance: Undecided → Medium
status: Unconfirmed → Needs Info
Revision history for this message
Ben Collins (ben-collins) wrote :

I believe this may be fixes with the latest mmc stuff in current feisty. If not, please set back to Confirmed.

Changed in linux-source-2.6.20:
assignee: kyle → ben-collins
status: Needs Info → Fix Released
Revision history for this message
hm (colimit) wrote :

What exactly are those latest changes?
The latest Feisty 7.04-AMD64-server with kernel linux-image-2.6.20-14-generic_2.6.20-14.22_amd64.deb still hangs (with the same oops). See attached boot-message log.

Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

The 18 month support period for Edgy Eft 6.10 has reached it's end of life. As a result, we are closing the linux-source-2.6.17 Edgy Eft kernel task. However, Hardy Heron 8.04 was recently released. It would be helpful if you could test the new release and verify if this is still an issue - http://www.ubuntu.com/getubuntu/download . If the issue still exists, please update this report by changing the Status of the "linux" task from "Incomplete" to "New". We appreciate your patience and understanding as we make this transition. Thanks!

Changed in linux-source-2.6.17:
status: Incomplete → Won't Fix
Changed in linux:
status: New → Incomplete
Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

The Ubuntu Kernel Team is planning to move to the 2.6.27 kernel for the upcoming Intrepid Ibex 8.10 release. As a result, the kernel team would appreciate it if you could please test this newer 2.6.27 Ubuntu kernel. There are one of two ways you should be able to test:

1) If you are comfortable installing packages on your own, the linux-image-2.6.27-* package is currently available for you to install and test.

--or--

2) The upcoming Alpha5 for Intrepid Ibex 8.10 will contain this newer 2.6.27 Ubuntu kernel. Alpha5 is set to be released Thursday Sept 4. Please watch http://www.ubuntu.com/testing for Alpha5 to be announced. You should then be able to test via a LiveCD.

Please let us know immediately if this newer 2.6.27 kernel resolves the bug reported here or if the issue remains. More importantly, please open a new bug report for each new bug/regression introduced by the 2.6.27 kernel and tag the bug report with 'linux-2.6.27'. Also, please specifically note if the issue does or does not appear in the 2.6.26 kernel. Thanks again, we really appreicate your help and feedback.

Revision history for this message
Markus Korn (thekorn) wrote :

Unfortunately this bug report is being closed because we received no response to the last inquiry for information. However, the Intrepid Ibex 8.10 Beta release was most recently announced - http://www.ubuntu.com/testing/intrepid/beta . If you are able to confirm this is still an issue with this most recent release please feel free to reopen this report. To reopen the bug report you can click on the current status, under the Status column, and change the Status back to "New".

Thanks,
Markus

Changed in linux:
status: Incomplete → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.