usb/142225: [patch] Patch to add Quirk for Western Digital Mybook
Thomas Ward
thomasmward at fastmail.fm
Sat Jan 2 03:40:02 UTC 2010
>Number: 142225
>Category: usb
>Synopsis: [patch] Patch to add Quirk for Western Digital Mybook
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-usb
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sat Jan 02 03:40:02 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator: Thomas Ward
>Release: 8-Stable
>Organization:
>Environment:
FreeBSD daemollo 8.0-STABLE FreeBSD 8.0-STABLE #0: Fri Jan 1 20:04:41 EST 2010 thomas at daemollo:/usr/obj/usr/src/sys/USB amd64
>Description:
My western digital mybook external usb drive with idVendor=0x1058 and idProduct=0x0901 did work when a zpool was added to the drive due to it not having a synchronize cache. Adding the quirk 0x4000, UQ_MSC_NO_SYNC_CACHE, to usb_quirk.c and recompiling the kernel fixes the issue and ZFS works flawlessly. I've attached a patch that adds the quirk.
>How-To-Repeat:
Create a zpool on Western Digital Mybook external harddrive.
>Fix:
Apply patch to add UQ_MSC_NO_SYNC_CACHE quirk and recompile kernel.
Patch attached with submission follows:
Index: sys/dev/usb/quirk/usb_quirk.c
===================================================================
--- sys/dev/usb/quirk/usb_quirk.c (revision 201317)
+++ sys/dev/usb/quirk/usb_quirk.c (working copy)
@@ -413,7 +413,8 @@ static struct usb_quirk_entry usb_quirks
UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ,
UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE),
USB_QUIRK(WESTERN, MYBOOK, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB,
- UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY_EVPD),
+ UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY_EVPD,
+ UQ_MSC_NO_SYNC_CACHE),
USB_QUIRK(WESTERN, MYPASSWORD, 0x0000, 0xffff, UQ_MSC_FORCE_SHORT_INQ),
USB_QUIRK(WINMAXGROUP, FLASH64MC, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB,
UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY),
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-usb
mailing list