From: Sarah Sharp <sarah.a.sharp@linux.intel.com>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: Jonas Schwertfeger <jschwertfeger@gmail.com>,
Dinh.Nguyen@freescale.com, Mark Lord <mlord@pobox.com>,
Sergei Shtylyov <sshtylyov@mvista.com>,
James Bottomley <James.Bottomley@suse.de>,
Kay Sievers <kay.sievers@vrfy.org>,
David Zeuthen <david@fubar.dk>,
linux-hotplug@vger.kernel.org, linux-usb@vger.kernel.org,
USB Storage List <usb-storage@lists.one-eyed-alien.net>,
Matthew Dharm <mdharm-usb@one-eyed-alien.net>,
linux-scsi@vger.kernel.org,
Lennart Poettering <lennart@poettering.net>,
Douglas Gilbert <dgilbert@interlog.com>
Subject: Re: System hangs when using USB 3.0 HD with on Ubuntu
Date: Mon, 19 Apr 2010 21:15:39 +0000 [thread overview]
Message-ID: <20100419211539.GB4245@xanatos> (raw)
In-Reply-To: <Pine.LNX.4.44L0.1004161517260.1923-100000@iolanthe.rowland.org>
Updated bug description below.
On Fri, Apr 16, 2010 at 03:25:42PM -0400, Alan Stern wrote:
> On Fri, 16 Apr 2010, Sarah Sharp wrote:
>
> > In the meantime, can everyone confirm my summary of the behavior of the
> > Buffalo device (not the Genesys chip)?
> >
> >
> >
> >
> > There seems to be an issue with how the Buffalo USB3 hard drive handles
> > the SCSI ATA pass through commands. We found this issue when the Linux
> > userspace program hdparm, using the Ubuntu Linux distribution. The
> > device responds correctly to an IDENTIFY DEVICE via the ATA_12 tunnel,
> > but it stalls when it's sent an IDENTIFY DEVICE via the ATA_16 tunnel.
>
> "Stalls" isn't the right word. It responds with "Phase Error" in
> bCSWStatus. Less precisely but more succinctly, it returns a Phase
> Error.
>
> > The command before the ATA_16 IDENTIFY DEVICE was a SET FEATURES via the
> > ATA_16 tunnel, and it was responded to properly, so we think it should
> > support the ATA_16 commands.
> >
> > This problem makes the device unusable under the Linux 2.6.31 and 2.6.32
>
> Only when running USB 3. The devices work okay with USB 2.
>
> > kernels, as they don't support configured device reset after an endpoint
> > stall. The device works on later kernels (2.6.33 and 2.6.34) with that
> > support.
> >
> >
> > Details
> > -------
> >
> > The hdparm program issues the following commands, and gets the following
> > responses:
> >
> > command contents: a1 08 2e 00 01 00 00 00 00 ec 00 00
> > Bulk Command S 0x43425355 T 0x2d L 512 F 128 Trg 0 LUN 0 CL 12
> > Bulk Status S 0x53425355 T 0x2d R 0 Stat 0x0
> > scsi cmd done, result=0x0
> > (This is an IDENTIFY DEVICE via the ATA_12 tunnel)
> >
> > command contents: 85 06 20 00 05 00 fe 00 00 00 00 00 00 40 ef 00
> > Bulk Command S 0x43425355 T 0x2e L 0 F 0 Trg 0 LUN 0 CL 16
> > Bulk Command S 0x43425355 T 0x2f L 512 F 128 Trg 0 LUN 0 CL 16
>
> This "T 0x2f" line doesn't belong here (it appears below). Copy &
> Paste error?
>
> > Bulk Status S 0x53425355 T 0x2e R 0 Stat 0x0
> > scsi cmd done, result=0x0
> > (This is a SET FEATURES via the ATA_16 tunnel)
> >
> > command contents: 85 08 2e 00 00 00 00 00 00 00 00 00 00 40 ec 00
> > Bulk Command S 0x43425355 T 0x2f L 512 F 128 Trg 0 LUN 0 CL 16
> > Bulk Status S 0x53425355 T 0x2f R 512 Stat 0x2
>
> And this "Bulk Status" line doesn't belong here. Again, it appears
> below.
>
> > Status code -32; transferred 0/512
> > clearing endpoint halt for pipe 0xc0008280
> > Bulk status result = 0
> > Bulk Status S 0x53425355 T 0x2f R 512 Stat 0x2
> > -- transport indicates error, resetting
> > (This is an IDENTIFY DEVICE via the ATA_16 tunnel)
> >
> > The full log is here:
> > http://minilop.net/~sarah/buffalo-hd-ata-16-issue.log
> >
> > The drive stalls on the last command, which is a valid ATA command. Can
>
> It returns an error on the last command. (It also stalls, but that's
> okay -- stalling an endpoint during a command is normal and it should
> work fine with USB 3.)
>
> > you confirm if your device supports the SCSI ATA pass through
> > specification?
> >
> > http://www.t10.org/cgi-bin/ac.pl?t=f&f=sat2r09.pdf
>
> That link doesn't work. The standard is not freely available.
>
> Alan Stern
>
Updated description
-------------------
Summary:
The Buffalo USB3 hard drive fails to mount after being sent an ATA_16
IDENTIFY command. It does not fail when the device is connected via a
USB 2.0 cable and the same command is sent.
Details:
There seems to be an issue with how the Buffalo USB3 hard drive handles
the SCSI ATA pass through commands. We found this issue with the Linux
userspace program hdparm, using the Ubuntu Linux Karmic distribution.
The device responds correctly to an IDENTIFY DEVICE via the ATA_12
tunnel, but it responds with a Phase Error when it's sent an IDENTIFY
DEVICE via the ATA_16 tunnel, and then stalls.
The hdparm program thinks the Phase Error is an invalid response:
sudo hdparm --verbose /dev/sdb
/dev/sdb:
outgoing cdb: 85 08 2e 00 00 00 00 00 00 00 00 00 00 40 ec 00
SG_IO: ATA_16 status=0x0, host_status=0x7, driver_status=0x0
SG_IO: bad response (not CHECK_CONDITION)
outgoing cdb: 85 08 2e 00 00 00 00 00 00 00 00 00 00 40 a1 00
SG_IO: ATA_16 status=0x0, host_status=0x7, driver_status=0x0
SG_IO: bad response (not CHECK_CONDITION)
HDIO_DRIVE_CMD(identify) failed: Invalid exchange
readonly = 0 (off)
readahead = 256 (on)
geometry = 36365/64/32, sectors = 0, start = 0
Stalling on the ATA_16 IDENTIFY device is fine, but the invalid response
is not.
The hard drive does not seem to work after this command is sent, and
cannot be mounted. If we inhibit udev from running hdparm (by stopping
the udev daemon) then the drive can be mounted successfully.
If the drive is plugged in via a USB 2.0 cable, then the drive works
correctly, even though it gets issued the same commands.
The command before the ATA_16 IDENTIFY DEVICE was a SET FEATURES via the
ATA_16 tunnel, and it was responded to properly, so we think it should
support the ATA_16 commands.
The full kernel log is here:
http://minilop.net/~sarah/buffalo-hd-ata-16-issue.log
The ATA_12 IDENTIFY command starts at line 8816. (It says the command
is a BLANK command, but it's incorrectly identified that command.)
Sarah Sharp
next prev parent reply other threads:[~2010-04-19 21:15 UTC|newest]
Thread overview: 107+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.44L0.1003261705340.23253-100000@netrider.rowland.org>
[not found] ` <4BAD275A.7050903@interlog.com>
[not found] ` <59ca64281003300044g53ae5170xaf198bf99964fc36@mail.gmail.com>
2010-03-31 11:39 ` System hangs when using USB 3.0 HD with on Ubuntu Jonas Schwertfeger
2010-03-31 14:56 ` Alan Stern
2010-03-31 15:20 ` David Zeuthen
2010-03-31 16:12 ` Douglas Gilbert
2010-03-31 16:36 ` Alan Stern
2010-04-01 13:32 ` Jonas Schwertfeger
2010-04-01 13:42 ` Kay Sievers
2010-04-01 13:55 ` Jonas Schwertfeger
[not found] ` <r2k59ca64281004010655z93fedfa8rdeb447d82a848d9f-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-04-01 14:05 ` Kay Sievers
2010-04-02 12:40 ` Jonas Schwertfeger
[not found] ` <m2l59ca64281004020540z7e502130g22dfc035f1ceda6a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-04-02 13:09 ` Jonas Schwertfeger
[not found] ` <t2t59ca64281004020609sa0f67f0dj5c127e3f0b2e4db2-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-04-02 14:12 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1004021010130.1615-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-02 14:41 ` James Bottomley
[not found] ` <1270219267.2899.73.camel-0iu6Cu4xQGLYCGPCin2YbQ@public.gmane.org>
2010-04-02 14:57 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1004021052040.1615-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-02 15:19 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1004021114160.1615-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-02 15:50 ` Sergei Shtylyov
2010-04-02 15:59 ` James Bottomley
2010-04-07 18:08 ` Mark Lord
2010-04-07 18:29 ` James Bottomley
2010-04-07 19:18 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1004071516260.5760-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-07 22:49 ` Mark Lord
2010-04-08 5:06 ` Jonas Schwertfeger
2010-04-02 16:21 ` Douglas Gilbert
2010-04-02 16:39 ` Douglas Gilbert
[not found] ` <4BB61DAF.7090709-qazKcTl6WRFWk0Htik3J/w@public.gmane.org>
2010-04-02 21:24 ` Mark Lord
2010-04-03 6:21 ` Jonas Schwertfeger
[not found] ` <4BB73EB3.3040308@pobox.com>
2010-04-03 15:40 ` Jonas Schwertfeger
2010-04-03 16:42 ` Alan Stern
2010-04-03 17:06 ` Jonas Schwertfeger
2010-04-03 20:58 ` Alan Stern
2010-04-04 1:29 ` Mark Lord
[not found] ` <Pine.LNX.4.44L0.1004031648230.21507-100000-pYrvlCTfrz9XsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-06 6:43 ` Jonas Schwertfeger
[not found] ` <4BBAD7FF.5000605-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-04-06 14:49 ` Alan Stern
2010-04-06 14:56 ` Jonas Schwertfeger
[not found] ` <Pine.LNX.4.44L0.1004061048590.1722-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-07 6:27 ` Jonas Schwertfeger
[not found] ` <4BBC25C9.5030201-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-04-07 14:36 ` Alan Stern
2010-04-07 14:42 ` Jonas Schwertfeger
2010-04-07 14:51 ` Jerone Young
2010-04-07 15:03 ` Alan Stern
2010-04-07 15:10 ` Jonas Schwertfeger
2010-04-09 15:38 ` Alan Stern
2010-04-09 16:39 ` Douglas Gilbert
[not found] ` <4BBF582F.4040707-qazKcTl6WRFWk0Htik3J/w@public.gmane.org>
2010-04-09 17:14 ` Sarah Sharp
2010-04-09 18:00 ` Jonas Schwertfeger
2010-04-09 19:25 ` Alan Stern
2010-04-09 21:54 ` Sarah Sharp
2010-04-12 7:48 ` Jonas Schwertfeger
2010-04-16 18:20 ` Sarah Sharp
2010-04-16 19:25 ` Alan Stern
2010-04-19 21:15 ` Sarah Sharp [this message]
2010-04-20 0:25 ` Mark Lord
2010-04-20 4:31 ` Mark Lord
2010-04-20 15:39 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1004201045180.1837-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-20 17:37 ` Sarah Sharp
2010-04-20 19:48 ` Alan Stern
[not found] ` <4BCF0605.7080508@pobox.com>
[not found] ` <4BCF4120.4060806@pobox.com>
2010-04-21 18:27 ` Jonas Schwertfeger
2010-04-21 19:07 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1004211506040.1422-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-21 19:24 ` Mark Lord
2010-04-26 16:27 ` Sarah Sharp
2010-04-29 8:44 ` Jonas Schwertfeger
2010-04-29 12:56 ` Mark Lord
2010-04-29 15:45 ` Alan Stern
2010-05-07 10:42 ` Jonas Schwertfeger
[not found] ` <4BE3EE87.6020505-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-05-07 15:03 ` Alan Stern
2010-05-11 6:54 ` Jonas Schwertfeger
2010-05-11 14:44 ` Alan Stern
2010-05-12 12:56 ` Mark Lord
2010-05-12 14:23 ` Douglas Gilbert
2010-05-12 14:37 ` Mark Lord
2010-05-12 14:45 ` Mark Lord
2010-05-12 15:09 ` Alan Stern
2010-05-12 15:39 ` James Bottomley
2010-05-12 18:48 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1005121444450.1353-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-05-13 3:12 ` Mark Lord
2010-05-13 18:42 ` Alan Stern
2010-04-21 12:31 ` Luben Tuikov
2010-04-21 14:31 ` Alan Stern
2010-04-21 12:47 ` Luben Tuikov
2010-04-21 13:52 ` Mark Lord
2010-04-21 14:04 ` James Bottomley
2010-04-21 14:08 ` Mark Lord
2010-04-21 14:15 ` James Bottomley
2010-04-21 14:13 ` Mark Lord
2010-04-21 14:22 ` James Bottomley
[not found] ` <1271859728.2893.72.camel-0iu6Cu4xQGLYCGPCin2YbQ@public.gmane.org>
2010-04-21 14:53 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1004211032460.1728-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2010-04-21 23:29 ` Stefan Richter
2010-04-20 17:48 ` Douglas Gilbert
2010-04-16 21:31 ` James Bottomley
2010-04-16 23:56 ` Douglas Gilbert
2010-04-19 15:04 ` Jonas Schwertfeger
2010-04-19 16:02 ` Alan Stern
2010-04-19 20:45 ` Sarah Sharp
2010-04-02 17:36 ` Sarah Sharp
2010-03-31 16:37 ` David Zeuthen
[not found] ` <1270053444.16657.17.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2010-03-31 16:58 ` Lennart Poettering
2010-03-31 17:03 ` Lennart Poettering
[not found] ` <20100331165807.GA20547-kS5D54t9nk0aINubkmmoJbNAH6kLmebB@public.gmane.org>
2010-03-31 17:17 ` David Zeuthen
2010-03-31 17:06 ` David Zeuthen
[not found] ` <1270049200.2302.320.camel@laptop>
2010-03-31 15:37 ` Jonas Schwertfeger
2010-04-21 14:58 ` Luben Tuikov
2010-04-21 15:09 ` Luben Tuikov
2010-04-21 16:09 ` Alan Stern
2010-04-21 16:18 ` Martin K. Petersen
2010-04-21 17:41 ` Sarah Sharp
2010-04-21 18:08 ` Alan Stern
2010-04-22 0:08 ` Luben Tuikov
2010-04-22 14:52 ` Alan Stern
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100419211539.GB4245@xanatos \
--to=sarah.a.sharp@linux.intel.com \
--cc=Dinh.Nguyen@freescale.com \
--cc=James.Bottomley@suse.de \
--cc=david@fubar.dk \
--cc=dgilbert@interlog.com \
--cc=jschwertfeger@gmail.com \
--cc=kay.sievers@vrfy.org \
--cc=lennart@poettering.net \
--cc=linux-hotplug@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mdharm-usb@one-eyed-alien.net \
--cc=mlord@pobox.com \
--cc=sshtylyov@mvista.com \
--cc=stern@rowland.harvard.edu \
--cc=usb-storage@lists.one-eyed-alien.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).