Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 2 Jan 2010 18:00:48 +0100
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        freebsd-usb@freebsd.org
Cc:        Thomas Ward <thomasmward@fastmail.fm>, freebsd-gnats-submit@freebsd.org
Subject:   Re: usb/142225: [patch] Patch to add Quirk for Western Digital Mybook
Message-ID:  <201001021800.49498.hselasky@c2i.net>
In-Reply-To: <201001020333.o023Xx5A098387@www.freebsd.org>
References:  <201001020333.o023Xx5A098387@www.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Saturday 02 January 2010 04:33:59 Thomas Ward wrote:
> >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@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:

Committed to USB P4, See change #172479.

--HPS




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001021800.49498.hselasky>