From owner-freebsd-bugs Thu Dec 19 17:40: 7 2002 Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9AB8B37B405 for ; Thu, 19 Dec 2002 17:40:04 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC9AD43EDC for ; Thu, 19 Dec 2002 17:40:03 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.6/8.12.6) with ESMTP id gBK1e3x3050435 for ; Thu, 19 Dec 2002 17:40:03 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.6/8.12.6/Submit) id gBK1e3JL050434; Thu, 19 Dec 2002 17:40:03 -0800 (PST) Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 305E137B401; Thu, 19 Dec 2002 17:36:58 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3A0E343EDA; Thu, 19 Dec 2002 17:36:57 -0800 (PST) (envelope-from dillon@FreeBSD.org) Received: from freefall.freebsd.org (dillon@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.6/8.12.6) with ESMTP id gBK1avx3050284; Thu, 19 Dec 2002 17:36:57 -0800 (PST) (envelope-from dillon@freefall.freebsd.org) Received: (from dillon@localhost) by freefall.freebsd.org (8.12.6/8.12.6/Submit) id gBK1avlO050283; Thu, 19 Dec 2002 17:36:57 -0800 (PST) Message-Id: <200212200136.gBK1avlO050283@freefall.freebsd.org> Date: Thu, 19 Dec 2002 17:36:57 -0800 (PST) From: Matt Dillon Reply-To: Matt Dillon To: FreeBSD-gnats-submit@FreeBSD.org Cc: njl@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: kern/46386: QUIRK: Sony USB Storage Media USM128 Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org >Number: 46386 >Category: kern >Synopsis: QUIRK: Sony USB Storage Media USM128 >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Dec 19 17:40:03 PST 2002 >Closed-Date: >Last-Modified: >Originator: Matt Dillon >Release: FreeBSD 4.7-STABLE i386 / FreeBSD-current >Organization: >Environment: All FreeBSD systems >Description: mobile# camcontrol inquiry da8 pass0: Removable Direct Access SCSI-0 device pass0: Serial Number u pass0: 650KB/s transfers mobile# usbdevs -v Controller /dev/usb0: addr 1: self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00 port 1 powered port 2 addr 2: power 94 mA, config 1, USB Storage Media(0x0010), Sony(0x08ec), rev 2.00 Manufacturer is Sony (but probably OEMs from MSYSTEMS), model USM128. I've done considerable work testing the need for the quirk entry, I'm not going to include it all here. The quirk entry is only wildcarded for the rev. The first to items are exact. The 6->10 hack code in umass does not seem to be sufficient so the quirk contains both DA_Q_NO_SYNC_CACHE and DA_Q_NO_6_BYTE. Both 6-byte c ommands and any attempt to synchronizing the cache locks up the unit. >How-To-Repeat: Plug in one of these devices :-) >Fix: Quirk entry patch as shown below, in combination with additional fixes to USB not included. Index: sys/cam/scsi/scsi_da.c =================================================================== RCS file: /home/ncvs/src/sys/cam/scsi/scsi_da.c,v retrieving revision 1.118 diff -u -r1.118 scsi_da.c --- sys/cam/scsi/scsi_da.c 18 Dec 2002 21:47:52 -0000 1.118 +++ sys/cam/scsi/scsi_da.c 19 Dec 2002 21:56:31 -0000 @@ -271,6 +271,16 @@ }, { /* + * Sony Key-Storage media fails in terrible ways without + * both quirks. The auto 6->10 code doesn't do the job. + * (note: The Sony diskkey is actually the MSYSTEMS + * disk-on-key device). + */ + {T_DIRECT, SIP_MEDIA_REMOVABLE, "Sony", "Storage Media", "*"}, + /*quirks*/ DA_Q_NO_6_BYTE|DA_Q_NO_SYNC_CACHE + }, + { + /* * Sony DSC cameras (DSC-S30, DSC-S50, DSC-S70) */ {T_DIRECT, SIP_MEDIA_REMOVABLE, "Sony", "Sony DSC", "*"}, >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message