- attaching my mp3-player(brand and so on see dmesg output at the bottom) to my usb-port does result in dmesg-errors - mounting it goes well - writing to it goes well until sync or umount gets executed ... then there are dozens of errors about i/o error. - there is some affection on the mp3-player's flash, but only garbage or empty files Most recent kernel where this bug did not occur: 2.4 (i tested it once with an old kernel that dusted away on my /boot and all was going well (could read from it and write an whole album to it ..) Distribution: gentoo Hardware Environment: 16:41:51 dmk@zel:~$ lspci 0000:00:00.0 Host bridge: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02) 0000:00:00.1 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02) 0000:00:00.3 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02) 0000:00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02) 0000:00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02) 0000:00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 03) 0000:00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 03) 0000:00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 03) 0000:00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 03) 0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 83) 0000:00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge (rev 03) 0000:00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03) 0000:00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 03) 0000:00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03) 0000:00:1f.6 Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03) 0000:01:0a.0 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus Controller (rev 20) 0000:01:0a.1 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus Controller (rev 20) 0000:01:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) 0000:01:0d.0 Network controller: Intel Corporation PRO/Wireless LAN 2100 3B Mini PCI Adapter (rev 04) Software Environment: Problem Description: dmesg-output on attaching the mp3-player to the usb-bus usb 2-1: new full speed USB device using uhci_hcd and address 2 scsi0 : SCSI emulation for USB Mass Storage devices usb-storage: device found at 2 usb-storage: waiting for device to settle before scanning Vendor: TrekStor Model: i.Beat Joy 2.0 Rev: 1.00 Type: Direct-Access ANSI SCSI revision: 00 SCSI device sda: 1007264 512-byte hdwr sectors (516 MB) sda: Write Protect is off sda: Mode Sense: 00 c0 00 00 sda: assuming drive cache: write through ioctl_internal_command: <0 0 0 0> return code = 8000002 : Current: sense key=0x0 ASC=0x0 ASCQ=0x0 Info fld=0x0 SCSI device sda: 1007264 512-byte hdwr sectors (516 MB) sda: Write Protect is off sda: Mode Sense: 00 c0 00 00 sda: assuming drive cache: write through sda: sda1 ioctl_internal_command: <0 0 0 0> return code = 8000002 : Current: sense key=0x0 ASC=0x0 ASCQ=0x0 Info fld=0x0 Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0 Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 0 usb-storage: device scan complete ioctl_internal_command: <0 0 0 0> return code = 8000002 : Current: sense key=0x0 ASC=0x0 ASCQ=0x0 Info fld=0x0 SCSI error : <0 0 0 0> return code = 0x10070000 end_request: I/O error, dev sda, sector 43 Buffer I/O error on device sda1, logical block 8 ioctl_internal_command: <0 0 0 0> return code = 8000002 : Current: sense key=0x0 ASC=0x0 ASCQ=0x0 Info fld=0x0 SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 1210 SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 1211 SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 1212 SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 1213 SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 1214 SCSI error : <0 0 0 0> return code = 0x10000 and end_request: I/O error, dev sda, sector 1215 SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 1216 SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 1217 SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 1218 SCSI error : <1 0 0 0> return code = 0x10070000 end_request: I/O error, dev sdb, sector 390580 printk: 74 messages suppressed. Buffer I/O error on device sdb1, logical block 390545 SCSI error : <1 0 0 0> return code = 0x10070000 end_request: I/O error, dev sdb, sector 390581 SCSI error : <1 0 0 0> return code = 0x10070000 end_request: I/O error, dev sdb, sector 390582 (thats the same device only attached at another time while /dev/sda was not free) Steps to reproduce: plug the player in, mount it and write or read to/from it. (or try...)
by the way, i just remembered, that on my pals windows-machine the stick was said to "be on a usb-1.0 port, and that it could pe more performant on a high-speed port" or how they name it at microsoft, besides that he was sticking at an usb-2.0 highspeed port (seen it myself with an usb-disk) ... so perhaps there is some issue with the usb-2.0 and usb-1.0 thing..
Can you try 2.6.13 or 2.6.13.1 to see if that solve the problem?
ok, sorry that i didnt had it verified right on but the bug is also present in 2.6.13.1 with no change at all
We need to get more information. Try turning on the USB Mass Storage verbose debugging option in the kernel configuration (CONFIG_USB_STORAGE_DEBUG). Then attach the dmesg log showing all the debugging messages for when you try to do I/O to the device.
Created attachment 6271 [details] dmesg after boot - _BEFORE_ plugging in the device dont know if it is interesting
Created attachment 6272 [details] relevant debug info (i hope) here is what i did: - 0th booted kernel 2.6.13.3 (dmesg_boot) - 1st plugged the device in (dmesg_plug) - 2nd mounted the device (dmesg_mount) - 3rd cp'ed a file from the device to my hd (dmesg_cp, shell_cp) - 4th umounted the device (dmesg_umount) - 5th unplugged the device (dmesg_unplug) after each step i dumped the dmesg via dmesg -c > filename also in the archive is lscpi -v, lsusb -v and the relevant part of the system log if you need more info or me doing smth plz just say it, i'll glad to help and i do appreciate your efforts.
Unfortunately those logs don't help enough. It looks like you turned on USB verbose debugging (CONFIG_USB_DEBUG) and not USB Mass Storage verbose debugging (CONFIG_USB_STORAGE_DEBUG). The mass-storage debugging is what we need.
Created attachment 6279 [details] with usb-storage verbose debug enabled
The log shows that your device has a common bug: It sends invalid Residue values. I can create a kernel patch to take care of it, but first I need one more piece of information. With the player plugged in, please send a copy of /proc/bus/usb/devices.
Created attachment 6281 [details] /proc/bus/usb/devices with mp3-player pluged in proc/bus/usb/devices with mp3player plugged in
Created attachment 6282 [details] /proc/bus/usb/devices with mp3-player pluged in proc/bus/usb/devices with mp3player plugged in
Created attachment 6283 [details] Add unusual_devs entry for the TrekStor i.Beat mp3 player I think this patch will fix your problem. If it doesn't, provide another dmesg log for when you plug in the player.
the patch fixes the problem. thank you do you know why it did go with 2.4 kernel?
Okay, I'll submit this change for inclusion in the kernel. Your player worked under 2.4 because the 2.4 driver doesn't check the Residue value sent by the device. This ended up causing a problem because some devices give no indication that an operation has failed, except that the Residue is non-zero. But always checking the Residue leads to the opposite problem, as you saw -- many devices report garbage values for the Residue.
it seems that the patch is not yet applied to the kernel... is 4 month normal for such a small fix???
I don't know what you mean. The patch is already in 2.6.15. Well, not exactly the patch I sent you, but an equivalent one submitted back in September by Stefan Werner. See http://marc.theaimsgroup.com/?l=linux-usb-devel&m=112733253530235&w=2
Hi! Ok, I'm sorry! That's my fault. I greped the source for the wrong keyword :| thx! greets, Florian