Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#21258 - [kernel26] PCMCIA D-Link (O2-Micro) USB 2.0 adapter - drives not mounting - mount freezes
Attached to Project:
Arch Linux
Opened by David Bluecame (david.bluecame) - Thursday, 14 October 2010, 20:29 GMT
Last edited by Tobias Powalowski (tpowa) - Friday, 15 October 2010, 06:59 GMT
Opened by David Bluecame (david.bluecame) - Thursday, 14 October 2010, 20:29 GMT
Last edited by Tobias Powalowski (tpowa) - Friday, 15 October 2010, 06:59 GMT
|
DetailsNOTE: as this is a kernel bug, I have already filed this bug to the official kernel bugzilla at:
https://bugzilla.kernel.org/show_bug.cgi?id=20382 The following is an extract of the information I have sent there. I have a laptop with USB1 only ports, so I installed a D-link PCMCIA adapter with 2xUSB2.0 ports. Everything went well until kernel 2.6.31 inclusive. When I upgraded to 2.6.32, after the upgrade I could not mount any USB2.0 drive via the PCMCIA adapter. Mount operation froze and I could not even kill the mount process. The problem happens with any USB2.0 drive, from 1.5TB external hard drive to simple USB2.0 flash drives. Upgrading to newer versions has not helped. I tried from 2.6.32.24 to 2.6.35.7 with no success, so I tried to discover what happened. After a lot of investigation, I found the problem in the drivers/pcmcia/o2micro.h file. That file was modified from version 2.6.31 to 2.6.32, adding the device number 6933 to the list of "old bridges" which should have read prefetch and write bursting disabled: (from o2micro.h) /* * older bridges have problems with both read prefetch and write * bursting depending on the combination of the chipset, bridge * and the cardbus card. so disable them to be on the safe side. */ case PCI_DEVICE_ID_O2_6729: case PCI_DEVICE_ID_O2_6730: case PCI_DEVICE_ID_O2_6812: case PCI_DEVICE_ID_O2_6832: case PCI_DEVICE_ID_O2_6836: This caused the problem ---> case PCI_DEVICE_ID_O2_6933: Precisely, my device is the 6933 and it began to give me trouble when that line was added. If I remove that line and recompile the kernel, everything goes well |
This task depends upon
kernel /boot/vmlinuz26 root=/dev/sda1 ro yenta_socket.o2_speedup=on
This solves the problem for me (at last!). However I also told them that it would be nice if they just added a warning when disabling the read prefetch/write burst in the o2 chips, so in dmesg you can see something like "read prefetch/write burst disabled - if you have problems mounting USB2.0 drives, re-enable it using yenta_socket option o2_speedup=on". Probably that will help people to solve this problem if it happens to them.
For me, this bug is solved and can be closed unless you want to keep it open.
Thank you and best regards! David.