Date: Tue, 27 Dec 2011 15:15:24 +0100 From: =?UTF-8?B?0JzQvtC80YfQuNC7INCY0LLQsNC90L7Qsg==?= <momchil@xaxo.eu> To: Hans Petter Selasky <hselasky@c2i.net> Cc: freebsd-usb@freebsd.org, Momchil Ivanov <momchil@xaxo.eu> Subject: Re: USB problems with 8.2 Message-ID: <86hb0mw16r.wl%momchil@xaxo.eu> In-Reply-To: <201112271259.07632.hselasky@c2i.net> References: <86ipl3dl5q.wl%momchil@xaxo.eu> <201112271036.24758.hselasky@c2i.net> <86hb0mdyea.wl%momchil@xaxo.eu> <201112271259.07632.hselasky@c2i.net>
next in thread | previous in thread | raw e-mail | index | archive | help
At Tue, 27 Dec 2011 12:59:07 +0100,
Hans Petter Selasky wrote:
>
> On Tuesday 27 December 2011 12:53:01 Momchil Ivanov wrote:
> > At Tue, 27 Dec 2011 10:36:24 +0100,
> >
> > Hans Petter Selasky wrote:
> > > Have you tried to use the no-synchronize cache quirk for your drive?
> >
> > how do I use that?
> >
> > > Are you using 8-stable?
> >
> > yes, with sources from about FreeBSD 8.2-STABLE #0: Sat Oct 22 16:07:57
> > CEST 2011.
>
> Try to update as of today.
>
> See "usbconfig -h | grep quirk"
>
> --HPS
I have updated as of today about FreeBSD 8.2-STABLE #1: Tue Dec 27 14:15:28 CET 2011.
here is the relevant output of "lsusb -v" considering the usb drive:
Bus /dev/usb Device /dev/ugen6.2: ID 04fc:0c25 Sunplus Technology Co., Ltd SATALink SPIF225A
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x04fc Sunplus Technology Co., Ltd
idProduct 0x0c25 SATALink SPIF225A
bcdDevice 1.03
iManufacturer 2 Sunplus Technology Inc.
iProduct 3 USB to Serial-ATA bridge
iSerial 1 Hitachi HT080320BB0F00WDHXNL9A
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 4 Bulk Only Configuration
bmAttributes 0xc0
Self Powered
MaxPower 2mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk (Zip)
iInterface 5 Bulk Only Interface
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
can't get debug descriptor: Input/output error
Device Status: 0x0001
Self Powered
I did the following then:
t61# usbconfig -d ugen6.2 dump_device_quirks | grep -i cache
VID=0x058f PID=0x6387 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x1005 PID=0xb113 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x04b4 PID=0x6830 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x04cb PID=0x0100 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x05e3 PID=0x0702 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x152d PID=0x2338 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x04cf PID=0x8818 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x07c4 PID=0x0400 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x067b PID=0x2506 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x14cd PID=0x6600 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x071b PID=0x3203 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x040d PID=0x6204 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x1058 PID=0x0901 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x0492 PID=0x0140 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x058f PID=0x0000 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x090c PID=0x0000 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x0bda PID=0x0000 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x13fd PID=0x0000 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
t61# usbconfig -d ugen6.2 add_quirk UQ_MSC_NO_SYNC_CACHE
t61# usbconfig -d ugen6.2 dump_device_quirks | grep -i cache
VID=0x058f PID=0x6387 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x1005 PID=0xb113 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x04b4 PID=0x6830 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x04cb PID=0x0100 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x05e3 PID=0x0702 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x152d PID=0x2338 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x04cf PID=0x8818 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x07c4 PID=0x0400 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x067b PID=0x2506 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x14cd PID=0x6600 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x071b PID=0x3203 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x040d PID=0x6204 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x1058 PID=0x0901 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x0492 PID=0x0140 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x058f PID=0x0000 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x090c PID=0x0000 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x0bda PID=0x0000 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x13fd PID=0x0000 REVLO=0x0000 REVHI=0xffff QUIRK=UQ_MSC_NO_SYNC_CACHE
VID=0x04fc PID=0x0c25 REVLO=0x0103 REVHI=0x0103 QUIRK=UQ_MSC_NO_SYNC_CACHE
the add_quirk seems to do something since VID=0x04fc appeared at the bottom of the list. But the USB drive stalls again for some seconds after rtorrent hashing about 800MB: the LED on the drive stops blinking, the drive stops making any seek noises, there is no CPU activity and all attempts to "cd" into a directory on the drive get blocked until the device comes back again. As rtorrent continues the hashing after about 4GB of data, the stalls seem to appear more often - every 100-200 MB.
Is there something else I might try?
Note: I was compiling some 100-200 ports last night on the very same drive and that kind of "low speed" load does not seem to make it stall.
Thanks,
Momchil
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86hb0mw16r.wl%momchil>
