usb/149934: Transcend JetFlash V85 poor performance
Hans Petter Selasky
hselasky at c2i.net
Tue Aug 24 15:20:03 UTC 2010
The following reply was made to PR usb/149934; it has been noted by GNATS.
From: Hans Petter Selasky <hselasky at c2i.net>
To: freebsd-usb at freebsd.org
Cc: Volodymyr Kostyrko <c.kworr at gmail.com>,
freebsd-gnats-submit at freebsd.org
Subject: Re: usb/149934: Transcend JetFlash V85 poor performance
Date: Tue, 24 Aug 2010 17:11:59 +0200
On Tuesday 24 August 2010 13:39:30 Volodymyr Kostyrko wrote:
> >Number: 149934
> >Category: usb
> >Synopsis: Transcend JetFlash V85 poor performance
> >Confidential: no
> >Severity: non-critical
> >Priority: low
> >Responsible: freebsd-usb
> >State: open
> >Quarter:
> >Keywords:
> >Date-Required:
> >Class: change-request
> >Submitter-Id: current-users
> >Arrival-Date: Tue Aug 24 11:40:02 UTC 2010
> >Closed-Date:
> >Last-Modified:
> >Originator: Volodymyr Kostyrko
> >Release: RELENG_8
> >Organization:
>
> >Environment:
> FreeBSD limbo.lan 8.1-STABLE FreeBSD 8.1-STABLE #0 r211717M: Tue Aug 24
> 12:56:24 EEST 2010 arcade at limbo.lan:/usr/obj/usr/src/sys/MINIMAL_8
> i386
>
> >Description:
> When attaching device kernel reports this:
>
> Aug 21 22:46:15 limbo root: Unknown USB device: vendor 0x058f product
> 0x6387 bus uhub3 Aug 21 22:46:15 limbo kernel: umass1: <JetFlash Mass
> Storage Device, class 0/0, rev 2.00/1.00, addr 3> on usbus3 Aug 21
> 22:46:15 limbo kernel: umass1: SCSI over Bulk-Only; quirks = 0x0100 Aug
> 21 22:46:16 limbo kernel: umass1:2:1:-1: Attached to scbus2
> Aug 21 22:46:16 limbo kernel: (probe0:umass-sim1:1:0:0): TEST UNIT READY.
> CDB: 0 0 0 0 0 0 Aug 21 22:46:16 limbo kernel: (probe0:umass-sim1:1:0:0):
> CAM status: SCSI Status Error Aug 21 22:46:16 limbo kernel:
> (probe0:umass-sim1:1:0:0): SCSI status: Check Condition Aug 21 22:46:16
> limbo kernel: (probe0:umass-sim1:1:0:0): SCSI sense: UNIT ATTENTION
> asc:28,0 (Not ready to ready change, medium may have changed) Aug 21
> 22:46:16 limbo kernel: da4 at umass-sim1 bus 1 scbus2 target 0 lun 0 Aug
> 21 22:46:16 limbo kernel: da4: <JetFlash TS4GJFV85 8.07> Removable Direct
> Access SCSI-2 device Aug 21 22:46:16 limbo kernel: da4: 40.000MB/s
> transfers
> Aug 21 22:46:16 limbo kernel: da4: 3900MB (7987200 512 byte sectors: 255H
> 63S/T 497C) Aug 21 22:46:24 limbo kernel: (da4:umass-sim1:1:0:0):
> SYNCHRONIZE CACHE(10). CDB: 35 0 0 0 0 0 0 0 0 0 Aug 21 22:46:24 limbo
> kernel: (da4:umass-sim1:1:0:0): CAM status: SCSI Status Error Aug 21
> 22:46:24 limbo kernel: (da4:umass-sim1:1:0:0): SCSI status: Check
> Condition Aug 21 22:46:24 limbo kernel: (da4:umass-sim1:1:0:0): SCSI
> sense: ILLEGAL REQUEST asc:26,0 (Invalid field in parameter list)
>
> After that any time SYNCHRONIZE CACHE command is issued writing to device
> stops for some time and kernel reports bad command.
>
> >How-To-Repeat:
> Attaching the device and trying to work with it should suffice.
>
> >Fix:
> Apply the following patch.
>
> Patch attached with submission follows:
>
> Index: sys/dev/usb/quirk/usb_quirk.c
> ===================================================================
> --- sys/dev/usb/quirk/usb_quirk.c (revision 211717)
> +++ sys/dev/usb/quirk/usb_quirk.c (working copy)
> @@ -159,6 +159,9 @@
> USB_QUIRK(ALCOR, AU6390, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE),
> USB_QUIRK(ALCOR, UMCR_9361, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB,
> UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN),
> + USB_QUIRK(ALCOR, TRANSCEND, 0x0100, 0x0100, UQ_MSC_FORCE_WIRE_BBB,
> + UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_SYNC_CACHE,
> + UQ_MSC_NO_TEST_UNIT_READY),
> USB_QUIRK(ALCOR, TRANSCEND, 0x0142, 0x0142, UQ_MSC_FORCE_WIRE_BBB,
> UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_SYNC_CACHE),
> USB_QUIRK(ALCOR, TRANSCEND, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB,
>
> >Release-Note:
> >Audit-Trail:
>
> >Unformatted:
Can you test this patch instead:
--- sys/dev/usb/quirk/usb_quirk.c 2010-08-10 16:03:19.000000000 0000
+++ sys/dev/usb/quirk/usb_quirk.c 2010-08-10 16:03:19.000000000 0000
@@ -160,10 +160,8 @@
USB_QUIRK(ALCOR, AU6390, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE),
USB_QUIRK(ALCOR, UMCR_9361, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB,
UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN),
- USB_QUIRK(ALCOR, TRANSCEND, 0x0142, 0x0142, UQ_MSC_FORCE_WIRE_BBB,
- UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN,
UQ_MSC_NO_SYNC_CACHE),
- USB_QUIRK(ALCOR, TRANSCEND, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB,
- UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN),
+ USB_QUIRK(ALCOR, TRANSCEND, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN,
+ UQ_MSC_NO_SYNC_CACHE),
USB_QUIRK(APACER, HT202, 0x0000, 0xffff, UQ_MSC_NO_TEST_UNIT_READY,
UQ_MSC_NO_SYNC_CACHE),
USB_QUIRK(ASAHIOPTICAL, OPTIO230, 0x0000, 0xffff,
UQ_MSC_FORCE_WIRE_BBB,
Please also dump device and configuration descriptor using usbconfig.
--HPS
More information about the freebsd-usb
mailing list