Re: System hangs when using USB 3.0 HD with on Ubuntu

Alan Stern
2010-04-21T18:08:32Z

On Wed, 21 Apr 2010, Sarah Sharp wrote:

> > Doug posted to the T10 list and here's what Jim Hatfield from Seagate
> > responded:
> >
> > For ATA (SATA or PATA), the Count field should NEVER be zero,
> > because neither interface supports zero-length data transfer for
> > any protocol (dma, pio, etc).
> >
> > In ATA, 'N/A' is defined the way it is because there are some
> > ancient implementations for which there are vendor specific
> > differences.
>
> So, if Jim is correct, then this may not be a bug in the Buffalo device?
> Or is the phase error in the status of the CSW still an incorrect
> response after a stall on what the device thinks is an invalid command?

Sarah, _please_ forget about the stall! It's just not relevant.

Yes, a phase error is an incorrect response to an invalid command. A
correct response would be to return Check Condition status together
with sense data indicating: ILLEGAL REQUEST, Invalid field in CDB.

It's possible the bridge chip might not realize the command is invalid
and would try to carry it out. If it did so and encountered some kind
of unrecoverable internal error as a result, then a phase error would
be the correct response.

Alan Stern