usb/185628: usbd_req_re_enumerate set address failed USB_ERR_STALLED for Seagate USB drives between r259425 and r260321

Alex Goncharov alex_goncharov_usa at yahoo.com
Sun Jan 12 06:01:09 UTC 2014


,-- On Fri, 1/10/14, Hans Petter Selasky <hps at bitfrost.no> wrote:
,-- On 01/10/14 12:49, Alex Goncharov  wrote:
>> Maybe; but think about the fact correlations: the fact of the two
>> system's upgrade, two identical Seagate units, and  other HDDs being
>> non-stalled.
> 
> If you are running EHCI, there has been no changes in the USB stack,

Apparently, there have been; this is what causes the bogus error:

------------------------------------------------------------------------
r259454 | hselasky | 2013-12-16 03:51:58 -0500 (Mon, 16 Dec 2013) | 11 lines

MFC r244503 and r246565:

Make sure all USB drivers allocate buffer memory
through the USB API and/or busdma.

The following assumptions have been made:
umass - buffers passed from CAM/SCSI layer are OK
network - mbufs are OK.

Some other nits while at it.
------------------------------------------------------------------------

I am attaching the code difference for the two relevant files

----------------------------------------
M       sys/dev/usb/storage/ustorage_fs.c
M       sys/dev/usb/usb_msctest.c
----------------------------------------

in this change set, skipping the irrelevant 'sys/dev/usb/wlan' ones.

Can this be fixed reasonably soon, please? (I miss my HDDs :)

-- Alex
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sys-dev-usb-2013-12-16-2013-12-17.diff
Type: text/x-patch
Size: 20208 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-usb/attachments/20140111/c242b69c/attachment.bin>


More information about the freebsd-usb mailing list