Re: [PATCH] unbreak all modern Seagate ATA pass-through for SMART

Alan Stern
2021-04-25T02:31:35Z

On Sat, Apr 24, 2021 at 10:03:16PM +0200, Rene Rebe wrote:
> Hi there,
>
> for some time I already wondered why my external USB Seagate Seven
> drive does not report any SMART status. Only recently did I take a
> look and it turns out ATA pass-through was explicitly disabed for all
> Seagate drives with 7fee72 "uas: Always apply US_FL_NO_ATA_1X quirk to

The kernel now uses >= 12-digit SHA1 values. 7fee72 is ambiguous.

> Seagate devices" in 2017. Apparently some early ones where buggy, ...
>
> However, fast forward a couple of years and this is no longer true,
> this Segate Seven even is already from 2016, and apparently first
> available in 2015. I suggest removing this rather drastic global
> measure, and instead only add very old broken ones with individual
> quirks, should any of them still be alive ;-)
>
> Signed-off-by: René Rebe <rene@exactcode.com>
>
> --- linux-5.11/drivers/usb/storage/uas-detect.h.backup 2021-03-05 11:36:00.517423726 +0100
> +++ linux-5.11/drivers/usb/storage/uas-detect.h 2021-03-05 11:36:16.373424544 +0100
> @@ -113,8 +113,4 @@
> }
>
> - /* All Seagate disk enclosures have broken ATA pass-through support */
> - if (le16_to_cpu(udev->descriptor.idVendor) == 0x0bc2)
> - flags |= US_FL_NO_ATA_1X;
> -
> usb_stor_adjust_quirks(udev, &flags);

I don't want to do this unless you can suggest an approach that won't
suddenly break all those old buggy drives. Just because they are now
five years old or more doesn't mean they are no longer in use.

Alan Stern

PS: As a matter of good form, you should have CC'ed the person whose
commit you are proposing to revert.