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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 12 May 2010, James Bottomley wrote:

> > This sounds like it is a bug in the SCSI midlayer, not in usb-storage.  
> 
> I don't think so ... we'll return sense if sense is present (i.e. the
> device returned CHECK CONDITION).

> Sense data is never returned in the absence of CHECK CONDITION.  This is
> what SAT says has to happen if you set CK_COND in ATA(12/16):
> 
>         The CK_COND (Check Condition) bit may be used to request the
>         SATL to
>         return a copy of ATA register information in the sense data upon
>         command completion. If the CK_COND bit is set to one the SATL
>         shall
>         return a status of CHECK CONDITION when the ATA command
>         completes,
>         even if the command completes successfully, and return the ATA
>         Normal Output fields (see ATA8-ACS) in the sense data using the
>         ATA Return descriptor (see 12.2.6). If the CK_COND bit is set to
>         zero, then the SATL shall terminate the command with CHECK
>         CONDITION status only if an error occurs in processing the
>         command. See clause 11 for a description of ATA error
>         conditions.

That's right.  Since the command in question did have CK_COND set, the 
device should have returned CHECK CONDITION status instead of GOOD 
status.

Therefore this indicates a bug in the device, not in the kernel.  
hdparm could work around it here by issuing an explicit REQUEST SENSE
command, but in general it will cause trouble.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux