diff mbox series

usb-storage: Ignore UAS for LaCie Rugged FW USB3

Message ID 20240209151121.1004985-1-tasos@tasossah.com (mailing list archive)
State New
Headers show
Series usb-storage: Ignore UAS for LaCie Rugged FW USB3 | expand

Commit Message

Tasos Sahanidis Feb. 9, 2024, 3:11 p.m. UTC
This external HDD fails when plugged in to a USB 3 port. Ignoring UAS and
falling back to mass storage resolves this issue.

[   56.338088] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW USB3   1081 PQ: 0 ANSI: 4
[   56.339162] sd 4:0:0:0: Attached scsi generic sg2 type 0
[   56.343484] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: (500 GB/466 GiB)
[   56.343600] sd 4:0:0:0: [sdc] Write Protect is off
[   56.343604] sd 4:0:0:0: [sdc] Mode Sense: 47 00 10 08
[   87.365885] sd 4:0:0:0: tag#26 uas_eh_abort_handler 0 uas-tag 1 inflight: IN
[   87.365897] sd 4:0:0:0: tag#26 CDB: Mode Sense(6) 1a 00 08 00 04 00
[   87.381852] scsi host4: uas_eh_device_reset_handler start
[   87.514256] usb 3-1: reset SuperSpeed USB device number 2 using xhci_hcd
[   87.538153] usb 3-1: LPM exit latency is zeroed, disabling LPM.
[   87.539720] scsi host4: uas_eh_device_reset_handler success
[  118.102578] scsi host4: uas_eh_device_reset_handler start
[  118.102733] sd 4:0:0:0: tag#26 uas_zap_pending 0 uas-tag 1 inflight:
[  118.102745] sd 4:0:0:0: tag#26 CDB: Mode Sense(6) 1a 00 08 00 04 00
[  118.231029] usb 3-1: reset SuperSpeed USB device number 2 using xhci_hcd

Signed-off-by: Tasos Sahanidis <tasos@tasossah.com>
---
 drivers/usb/storage/unusual_uas.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

Comments

Alan Stern Feb. 9, 2024, 3:31 p.m. UTC | #1
On Fri, Feb 09, 2024 at 05:11:21PM +0200, Tasos Sahanidis wrote:
> This external HDD fails when plugged in to a USB 3 port. Ignoring UAS and
> falling back to mass storage resolves this issue.

What happens when it is plugged into a USB-2 port?

> [   56.338088] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW USB3   1081 PQ: 0 ANSI: 4
> [   56.339162] sd 4:0:0:0: Attached scsi generic sg2 type 0
> [   56.343484] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: (500 GB/466 GiB)
> [   56.343600] sd 4:0:0:0: [sdc] Write Protect is off
> [   56.343604] sd 4:0:0:0: [sdc] Mode Sense: 47 00 10 08
> [   87.365885] sd 4:0:0:0: tag#26 uas_eh_abort_handler 0 uas-tag 1 inflight: IN
> [   87.365897] sd 4:0:0:0: tag#26 CDB: Mode Sense(6) 1a 00 08 00 04 00
> [   87.381852] scsi host4: uas_eh_device_reset_handler start
> [   87.514256] usb 3-1: reset SuperSpeed USB device number 2 using xhci_hcd
> [   87.538153] usb 3-1: LPM exit latency is zeroed, disabling LPM.
> [   87.539720] scsi host4: uas_eh_device_reset_handler success
> [  118.102578] scsi host4: uas_eh_device_reset_handler start
> [  118.102733] sd 4:0:0:0: tag#26 uas_zap_pending 0 uas-tag 1 inflight:
> [  118.102745] sd 4:0:0:0: tag#26 CDB: Mode Sense(6) 1a 00 08 00 04 00
> [  118.231029] usb 3-1: reset SuperSpeed USB device number 2 using xhci_hcd

Have you checked to see if any of the quirk flags can prevent this 
problem?  It looks like the only issue might be that one Mode Sense(6) 
command.

Falling back from uas to usb-storage could reduce the throughput 
considerably.  We would like to avoid doing this if possible.

Alan Stern

> Signed-off-by: Tasos Sahanidis <tasos@tasossah.com>
> ---
>  drivers/usb/storage/unusual_uas.h | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/drivers/usb/storage/unusual_uas.h b/drivers/usb/storage/unusual_uas.h
> index 1f8c9b16a0fb..b1d99c57cf8a 100644
> --- a/drivers/usb/storage/unusual_uas.h
> +++ b/drivers/usb/storage/unusual_uas.h
> @@ -45,6 +45,17 @@ UNUSUAL_DEV(0x059f, 0x105f, 0x0000, 0x9999,
>  		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
>  		US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME),
>  
> +/*
> + * Patch by Tasos Sahanidis <tasos@tasossah.com>
> + * UAS hangs during Mode Sense(6). The quirks for the similar "Rugged USB3-FW"
> + * disk (US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME) do not resolve the issue.
> + */
> +UNUSUAL_DEV(0x059f, 0x104b, 0x0000, 0x9999,
> +		"LaCie",
> +		"Rugged FW USB3",
> +		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
> +		US_FL_IGNORE_UAS),
> +
>  /* Reported-by: Julian Sikorski <belegdol@gmail.com> */
>  UNUSUAL_DEV(0x059f, 0x1061, 0x0000, 0x9999,
>  		"LaCie",
> -- 
> 2.25.1
> 
>
Tasos Sahanidis Feb. 10, 2024, 1:24 p.m. UTC | #2
On 2024-02-09 17:31, Alan Stern wrote:
> On Fri, Feb 09, 2024 at 05:11:21PM +0200, Tasos Sahanidis wrote:
>> This external HDD fails when plugged in to a USB 3 port. Ignoring UAS and
>> falling back to mass storage resolves this issue.
> 
> What happens when it is plugged into a USB-2 port?

It works without any quirks over USB 2.0 with uas, however asking for
cache data fails gracefully.

[  520.829840] scsi host4: uas
[  521.024643] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW USB3   1081 PQ: 0 ANSI: 4
[  521.026370] sd 4:0:0:0: Attached scsi generic sg2 type 0
[  521.030096] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: (500 GB/466 GiB)
[  521.030369] sd 4:0:0:0: [sdc] Write Protect is off
[  521.030373] sd 4:0:0:0: [sdc] Mode Sense: 47 00 10 08
[  521.030507] sd 4:0:0:0: [sdc] Asking for cache data failed
[  521.030512] sd 4:0:0:0: [sdc] Assuming drive cache: write through
[  521.065916]  sdc: sdc1
[  521.067783] sd 4:0:0:0: [sdc] Attached SCSI disk
[  521.699380] EXT4-fs (sdc1): recovery complete
[  521.699388] EXT4-fs (sdc1): mounted filesystem with ordered data mode. Opts: errors=remount-ro. Quota mode: none.

> Have you checked to see if any of the quirk flags can prevent this 
> problem?  It looks like the only issue might be that one Mode Sense(6) 
> command.

I have tried various combinations of all the available quirks and I
couldn't get it to not hang. Without any quirks it keeps retrying Mode
Sense(6) constantly.

I tested US_FL_ALWAYS_SYNC as it sets sdev->skip_ms_page_8 (both with
and without US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME), and it hung at an
ATA passthrough command; presumably the next step afterwards.

30 seconds and one USB reset later, the disk is recognised, but I
do not know if it is reliable.

[  329.161316] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW USB3   1081 PQ: 0 ANSI: 4
[  329.162228] sd 4:0:0:0: Attached scsi generic sg2 type 0
[  329.166650] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: (500 GB/466 GiB)
[  329.166654] sd 4:0:0:0: [sdc] Assuming Write Enabled
[  329.166655] sd 4:0:0:0: [sdc] Assuming drive cache: write back
[  329.197983]  sdc: sdc1
[  329.198521] sd 4:0:0:0: [sdc] Attached SCSI disk
[  359.553806] sd 4:0:0:0: [sdc] tag#3 uas_eh_abort_handler 0 uas-tag 1 inflight: IN
[  359.553816] sd 4:0:0:0: [sdc] tag#3 CDB: ATA command pass through(12)/Blank a1 08 2e 00 01 00 00 00 00 ec 00 00
[  359.573771] scsi host4: uas_eh_device_reset_handler start
[  359.702116] usb 3-1: reset SuperSpeed USB device number 3 using xhci_hcd
[  359.722068] usb 3-1: LPM exit latency is zeroed, disabling LPM.
[  359.724348] scsi host4: uas_eh_device_reset_handler success
[  360.582975] EXT4-fs (sdc1): recovery complete
[  360.633098] EXT4-fs (sdc1): mounted filesystem with ordered data mode. Opts: errors=remount-ro. Quota mode: none.

My assumption is that something goes wrong during init and that makes it
hang in general. Perhaps the Mode Sense(6) is broken in addition to
whatever else is misbehaving. I don't believe the XHCI controller is at
fault.

> Falling back from uas to usb-storage could reduce the throughput 
> considerably.  We would like to avoid doing this if possible.

Absolutely, but at the same time I am not sure how much it matters for
an old mechanical hard disk. Granted, someone can use the same enclosure
and install an SSD internally, so perhaps that makes it worth it.

Thanks

--
Tasos
Julian Sikorski Feb. 10, 2024, 2:21 p.m. UTC | #3
Am 10.02.24 um 14:24 schrieb Tasos Sahanidis:
> On 2024-02-09 17:31, Alan Stern wrote:
>> On Fri, Feb 09, 2024 at 05:11:21PM +0200, Tasos Sahanidis wrote:
>>> This external HDD fails when plugged in to a USB 3 port. Ignoring UAS and
>>> falling back to mass storage resolves this issue.
>>
>> What happens when it is plugged into a USB-2 port?
> 
> It works without any quirks over USB 2.0 with uas, however asking for
> cache data fails gracefully.
> 
> [  520.829840] scsi host4: uas
> [  521.024643] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW USB3   1081 PQ: 0 ANSI: 4
> [  521.026370] sd 4:0:0:0: Attached scsi generic sg2 type 0
> [  521.030096] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: (500 GB/466 GiB)
> [  521.030369] sd 4:0:0:0: [sdc] Write Protect is off
> [  521.030373] sd 4:0:0:0: [sdc] Mode Sense: 47 00 10 08
> [  521.030507] sd 4:0:0:0: [sdc] Asking for cache data failed
> [  521.030512] sd 4:0:0:0: [sdc] Assuming drive cache: write through
> [  521.065916]  sdc: sdc1
> [  521.067783] sd 4:0:0:0: [sdc] Attached SCSI disk
> [  521.699380] EXT4-fs (sdc1): recovery complete
> [  521.699388] EXT4-fs (sdc1): mounted filesystem with ordered data mode. Opts: errors=remount-ro. Quota mode: none.
> 
>> Have you checked to see if any of the quirk flags can prevent this
>> problem?  It looks like the only issue might be that one Mode Sense(6)
>> command.
> 
> I have tried various combinations of all the available quirks and I
> couldn't get it to not hang. Without any quirks it keeps retrying Mode
> Sense(6) constantly.
> 
> I tested US_FL_ALWAYS_SYNC as it sets sdev->skip_ms_page_8 (both with
> and without US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME), and it hung at an
> ATA passthrough command; presumably the next step afterwards.
> 
> 30 seconds and one USB reset later, the disk is recognised, but I
> do not know if it is reliable.
> 
> [  329.161316] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW USB3   1081 PQ: 0 ANSI: 4
> [  329.162228] sd 4:0:0:0: Attached scsi generic sg2 type 0
> [  329.166650] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: (500 GB/466 GiB)
> [  329.166654] sd 4:0:0:0: [sdc] Assuming Write Enabled
> [  329.166655] sd 4:0:0:0: [sdc] Assuming drive cache: write back
> [  329.197983]  sdc: sdc1
> [  329.198521] sd 4:0:0:0: [sdc] Attached SCSI disk
> [  359.553806] sd 4:0:0:0: [sdc] tag#3 uas_eh_abort_handler 0 uas-tag 1 inflight: IN
> [  359.553816] sd 4:0:0:0: [sdc] tag#3 CDB: ATA command pass through(12)/Blank a1 08 2e 00 01 00 00 00 00 ec 00 00
> [  359.573771] scsi host4: uas_eh_device_reset_handler start
> [  359.702116] usb 3-1: reset SuperSpeed USB device number 3 using xhci_hcd
> [  359.722068] usb 3-1: LPM exit latency is zeroed, disabling LPM.
> [  359.724348] scsi host4: uas_eh_device_reset_handler success
> [  360.582975] EXT4-fs (sdc1): recovery complete
> [  360.633098] EXT4-fs (sdc1): mounted filesystem with ordered data mode. Opts: errors=remount-ro. Quota mode: none.
> 
> My assumption is that something goes wrong during init and that makes it
> hang in general. Perhaps the Mode Sense(6) is broken in addition to
> whatever else is misbehaving. I don't believe the XHCI controller is at
> fault.
> 
>> Falling back from uas to usb-storage could reduce the throughput
>> considerably.  We would like to avoid doing this if possible.
> 
> Absolutely, but at the same time I am not sure how much it matters for
> an old mechanical hard disk. Granted, someone can use the same enclosure
> and install an SSD internally, so perhaps that makes it worth it.
> 
> Thanks
> 
> --
> Tasos
> 
> 
> 
This seems to be similar to the issue I am facing with a similar LaCie 
Rugged USB3-FW 059f:1061. Initially we patched it to IGNORE_UAS but it 
then turned out to be working with US_FL_NO_REPORT_OPCODES and 
US_FL_NO_SAME. This was back in September 2021. In August 2023 I 
reported a similar issue as you, I am still seeing it in 6.7.3. The good 
news is that after initial problems it seems to be working fine once the 
USB connection is established.

Feb 10 15:02:35 kernel: usb 4-2: new SuperSpeed USB device number 3 
using xhci_hcd
Feb 10 15:02:35 kernel: usb 4-2: New USB device found, idVendor=059f, 
idProduct=1061, bcdDevice= 0.01
Feb 10 15:02:35 kernel: usb 4-2: New USB device strings: Mfr=2, 
Product=3, SerialNumber=1
Feb 10 15:02:35 kernel: usb 4-2: Product: Rugged USB3-FW
Feb 10 15:02:35 kernel: usb 4-2: Manufacturer: LaCie
Feb 10 15:02:35 kernel: usb 4-2: SerialNumber: 00000000157f928920fa
Feb 10 15:02:35 kernel: scsi host2: uas
Feb 10 15:02:35 kernel: scsi 2:0:0:0: Direct-Access     LaCie    Rugged 
FW USB3   051E PQ: 0 ANSI: 6
Feb 10 15:02:35 kernel: sd 2:0:0:0: Attached scsi generic sg0 type 0
Feb 10 15:02:35 kernel: sd 2:0:0:0: [sda] 1953525168 512-byte logical 
blocks: (1.00 TB/932 GiB)
Feb 10 15:02:35 kernel: sd 2:0:0:0: [sda] Write Protect is off
Feb 10 15:02:35 kernel: sd 2:0:0:0: [sda] Mode Sense: 43 00 00 00
Feb 10 15:02:35 kernel: sd 2:0:0:0: [sda] Write cache: enabled, read 
cache: enabled, doesn't support DPO or FUA
Feb 10 15:02:35 kernel: sd 2:0:0:0: [sda] Preferred minimum I/O size 512 
bytes
Feb 10 15:02:35 kernel: sd 2:0:0:0: [sda] Optimal transfer size 33553920 
bytes
Feb 10 15:03:05 kernel: sd 2:0:0:0: [sda] tag#9 uas_eh_abort_handler 0 
uas-tag 1 inflight: IN
Feb 10 15:03:05 kernel: sd 2:0:0:0: [sda] tag#9 CDB: Inquiry 12 01 b9 00 
04 00
Feb 10 15:03:05 kernel: scsi host2: uas_eh_device_reset_handler start
Feb 10 15:03:05 kernel: usb 4-2: reset SuperSpeed USB device number 3 
using xhci_hcd
Feb 10 15:03:05 kernel: scsi host2: uas_eh_device_reset_handler success
Feb 10 15:03:35 kernel: scsi host2: uas_eh_device_reset_handler start
Feb 10 15:03:35 kernel: sd 2:0:0:0: [sda] tag#10 uas_zap_pending 0 
uas-tag 1 inflight:
Feb 10 15:03:35 kernel: sd 2:0:0:0: [sda] tag#10 CDB: Inquiry 12 01 b9 
00 04 00
Feb 10 15:03:35 kernel: usb 4-2: reset SuperSpeed USB device number 3 
using xhci_hcd
Feb 10 15:03:35 kernel: scsi host2: uas_eh_device_reset_handler success
Feb 10 15:04:06 kernel: scsi host2: uas_eh_device_reset_handler start
Feb 10 15:04:06 kernel: sd 2:0:0:0: [sda] tag#11 uas_zap_pending 0 
uas-tag 1 inflight:
Feb 10 15:04:06 kernel: sd 2:0:0:0: [sda] tag#11 CDB: Inquiry 12 01 b9 
00 04 00
Feb 10 15:04:06 kernel: usb 4-2: reset SuperSpeed USB device number 3 
using xhci_hcd
Feb 10 15:04:06 kernel: scsi host2: uas_eh_device_reset_handler success
Feb 10 15:04:36 kernel: scsi host2: uas_eh_device_reset_handler start
Feb 10 15:04:36 kernel: sd 2:0:0:0: [sda] tag#26 uas_zap_pending 0 
uas-tag 1 inflight:
Feb 10 15:04:36 kernel: sd 2:0:0:0: [sda] tag#26 CDB: Inquiry 12 01 b9 
00 04 00
Feb 10 15:04:36 kernel: usb 4-2: reset SuperSpeed USB device number 3 
using xhci_hcd
Feb 10 15:04:36 kernel: scsi host2: uas_eh_device_reset_handler success
Feb 10 15:04:36 kernel:  sda: sda1 sda2
Feb 10 15:04:36 kernel: sd 2:0:0:0: [sda] Attached SCSI disk
Julian Sikorski Feb. 10, 2024, 9:35 p.m. UTC | #4
Am 10.02.24 um 15:21 schrieb Julian Sikorski:
> Am 10.02.24 um 14:24 schrieb Tasos Sahanidis:
>> On 2024-02-09 17:31, Alan Stern wrote:
>>> On Fri, Feb 09, 2024 at 05:11:21PM +0200, Tasos Sahanidis wrote:
>>>> This external HDD fails when plugged in to a USB 3 port. Ignoring 
>>>> UAS and
>>>> falling back to mass storage resolves this issue.
>>>
>>> What happens when it is plugged into a USB-2 port?
>>
>> It works without any quirks over USB 2.0 with uas, however asking for
>> cache data fails gracefully.
>>
>> [  520.829840] scsi host4: uas
>> [  521.024643] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW 
>> USB3   1081 PQ: 0 ANSI: 4
>> [  521.026370] sd 4:0:0:0: Attached scsi generic sg2 type 0
>> [  521.030096] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: 
>> (500 GB/466 GiB)
>> [  521.030369] sd 4:0:0:0: [sdc] Write Protect is off
>> [  521.030373] sd 4:0:0:0: [sdc] Mode Sense: 47 00 10 08
>> [  521.030507] sd 4:0:0:0: [sdc] Asking for cache data failed
>> [  521.030512] sd 4:0:0:0: [sdc] Assuming drive cache: write through
>> [  521.065916]  sdc: sdc1
>> [  521.067783] sd 4:0:0:0: [sdc] Attached SCSI disk
>> [  521.699380] EXT4-fs (sdc1): recovery complete
>> [  521.699388] EXT4-fs (sdc1): mounted filesystem with ordered data 
>> mode. Opts: errors=remount-ro. Quota mode: none.
>>
>>> Have you checked to see if any of the quirk flags can prevent this
>>> problem?  It looks like the only issue might be that one Mode Sense(6)
>>> command.
>>
>> I have tried various combinations of all the available quirks and I
>> couldn't get it to not hang. Without any quirks it keeps retrying Mode
>> Sense(6) constantly.
>>
>> I tested US_FL_ALWAYS_SYNC as it sets sdev->skip_ms_page_8 (both with
>> and without US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME), and it hung at an
>> ATA passthrough command; presumably the next step afterwards.
>>
>> 30 seconds and one USB reset later, the disk is recognised, but I
>> do not know if it is reliable.
>>
>> [  329.161316] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW 
>> USB3   1081 PQ: 0 ANSI: 4
>> [  329.162228] sd 4:0:0:0: Attached scsi generic sg2 type 0
>> [  329.166650] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: 
>> (500 GB/466 GiB)
>> [  329.166654] sd 4:0:0:0: [sdc] Assuming Write Enabled
>> [  329.166655] sd 4:0:0:0: [sdc] Assuming drive cache: write back
>> [  329.197983]  sdc: sdc1
>> [  329.198521] sd 4:0:0:0: [sdc] Attached SCSI disk
>> [  359.553806] sd 4:0:0:0: [sdc] tag#3 uas_eh_abort_handler 0 uas-tag 
>> 1 inflight: IN
>> [  359.553816] sd 4:0:0:0: [sdc] tag#3 CDB: ATA command pass 
>> through(12)/Blank a1 08 2e 00 01 00 00 00 00 ec 00 00
>> [  359.573771] scsi host4: uas_eh_device_reset_handler start
>> [  359.702116] usb 3-1: reset SuperSpeed USB device number 3 using 
>> xhci_hcd
>> [  359.722068] usb 3-1: LPM exit latency is zeroed, disabling LPM.
>> [  359.724348] scsi host4: uas_eh_device_reset_handler success
>> [  360.582975] EXT4-fs (sdc1): recovery complete
>> [  360.633098] EXT4-fs (sdc1): mounted filesystem with ordered data 
>> mode. Opts: errors=remount-ro. Quota mode: none.
>>
>> My assumption is that something goes wrong during init and that makes it
>> hang in general. Perhaps the Mode Sense(6) is broken in addition to
>> whatever else is misbehaving. I don't believe the XHCI controller is at
>> fault.
>>
>>> Falling back from uas to usb-storage could reduce the throughput
>>> considerably.  We would like to avoid doing this if possible.
>>
>> Absolutely, but at the same time I am not sure how much it matters for
>> an old mechanical hard disk. Granted, someone can use the same enclosure
>> and install an SSD internally, so perhaps that makes it worth it.
>>
>> Thanks
>>
>> -- 
>> Tasos
>>
>>
>>
> This seems to be similar to the issue I am facing with a similar LaCie 
> Rugged USB3-FW 059f:1061. Initially we patched it to IGNORE_UAS but it 
> then turned out to be working with US_FL_NO_REPORT_OPCODES and 
> US_FL_NO_SAME. This was back in September 2021. In August 2023 I 
> reported a similar issue as you, I am still seeing it in 6.7.3. The good 
> news is that after initial problems it seems to be working fine once the 
> USB connection is established.

I have now narrowed it down to having broken between 5.18.19 and 5.19.4 
kernels. Tasos, if you are interested, you might want to check if you 
can get the drive working with US_FL_NO_REPORT_OPCODES and
US_FL_NO_SAME alone (fk) quirks alone on Fedora 36 live, which ships 
5.17.5 kernel. Exercise caution as it is an EOL system.
I will see if I can narrow down the regression further.

Best regards,
Julian
Julian Sikorski Feb. 10, 2024, 9:43 p.m. UTC | #5
Am 10.02.24 um 22:35 schrieb Julian Sikorski:
> Am 10.02.24 um 15:21 schrieb Julian Sikorski:
>> Am 10.02.24 um 14:24 schrieb Tasos Sahanidis:
>>> On 2024-02-09 17:31, Alan Stern wrote:
>>>> On Fri, Feb 09, 2024 at 05:11:21PM +0200, Tasos Sahanidis wrote:
>>>>> This external HDD fails when plugged in to a USB 3 port. Ignoring 
>>>>> UAS and
>>>>> falling back to mass storage resolves this issue.
>>>>
>>>> What happens when it is plugged into a USB-2 port?
>>>
>>> It works without any quirks over USB 2.0 with uas, however asking for
>>> cache data fails gracefully.
>>>
>>> [  520.829840] scsi host4: uas
>>> [  521.024643] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW 
>>> USB3   1081 PQ: 0 ANSI: 4
>>> [  521.026370] sd 4:0:0:0: Attached scsi generic sg2 type 0
>>> [  521.030096] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: 
>>> (500 GB/466 GiB)
>>> [  521.030369] sd 4:0:0:0: [sdc] Write Protect is off
>>> [  521.030373] sd 4:0:0:0: [sdc] Mode Sense: 47 00 10 08
>>> [  521.030507] sd 4:0:0:0: [sdc] Asking for cache data failed
>>> [  521.030512] sd 4:0:0:0: [sdc] Assuming drive cache: write through
>>> [  521.065916]  sdc: sdc1
>>> [  521.067783] sd 4:0:0:0: [sdc] Attached SCSI disk
>>> [  521.699380] EXT4-fs (sdc1): recovery complete
>>> [  521.699388] EXT4-fs (sdc1): mounted filesystem with ordered data 
>>> mode. Opts: errors=remount-ro. Quota mode: none.
>>>
>>>> Have you checked to see if any of the quirk flags can prevent this
>>>> problem?  It looks like the only issue might be that one Mode Sense(6)
>>>> command.
>>>
>>> I have tried various combinations of all the available quirks and I
>>> couldn't get it to not hang. Without any quirks it keeps retrying Mode
>>> Sense(6) constantly.
>>>
>>> I tested US_FL_ALWAYS_SYNC as it sets sdev->skip_ms_page_8 (both with
>>> and without US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME), and it hung at an
>>> ATA passthrough command; presumably the next step afterwards.
>>>
>>> 30 seconds and one USB reset later, the disk is recognised, but I
>>> do not know if it is reliable.
>>>
>>> [  329.161316] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW 
>>> USB3   1081 PQ: 0 ANSI: 4
>>> [  329.162228] sd 4:0:0:0: Attached scsi generic sg2 type 0
>>> [  329.166650] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: 
>>> (500 GB/466 GiB)
>>> [  329.166654] sd 4:0:0:0: [sdc] Assuming Write Enabled
>>> [  329.166655] sd 4:0:0:0: [sdc] Assuming drive cache: write back
>>> [  329.197983]  sdc: sdc1
>>> [  329.198521] sd 4:0:0:0: [sdc] Attached SCSI disk
>>> [  359.553806] sd 4:0:0:0: [sdc] tag#3 uas_eh_abort_handler 0 uas-tag 
>>> 1 inflight: IN
>>> [  359.553816] sd 4:0:0:0: [sdc] tag#3 CDB: ATA command pass 
>>> through(12)/Blank a1 08 2e 00 01 00 00 00 00 ec 00 00
>>> [  359.573771] scsi host4: uas_eh_device_reset_handler start
>>> [  359.702116] usb 3-1: reset SuperSpeed USB device number 3 using 
>>> xhci_hcd
>>> [  359.722068] usb 3-1: LPM exit latency is zeroed, disabling LPM.
>>> [  359.724348] scsi host4: uas_eh_device_reset_handler success
>>> [  360.582975] EXT4-fs (sdc1): recovery complete
>>> [  360.633098] EXT4-fs (sdc1): mounted filesystem with ordered data 
>>> mode. Opts: errors=remount-ro. Quota mode: none.
>>>
>>> My assumption is that something goes wrong during init and that makes it
>>> hang in general. Perhaps the Mode Sense(6) is broken in addition to
>>> whatever else is misbehaving. I don't believe the XHCI controller is at
>>> fault.
>>>
>>>> Falling back from uas to usb-storage could reduce the throughput
>>>> considerably.  We would like to avoid doing this if possible.
>>>
>>> Absolutely, but at the same time I am not sure how much it matters for
>>> an old mechanical hard disk. Granted, someone can use the same enclosure
>>> and install an SSD internally, so perhaps that makes it worth it.
>>>
>>> Thanks
>>>
>>> -- 
>>> Tasos
>>>
>>>
>>>
>> This seems to be similar to the issue I am facing with a similar LaCie 
>> Rugged USB3-FW 059f:1061. Initially we patched it to IGNORE_UAS but it 
>> then turned out to be working with US_FL_NO_REPORT_OPCODES and 
>> US_FL_NO_SAME. This was back in September 2021. In August 2023 I 
>> reported a similar issue as you, I am still seeing it in 6.7.3. The 
>> good news is that after initial problems it seems to be working fine 
>> once the USB connection is established.
> 
> I have now narrowed it down to having broken between 5.18.19 and 5.19.4 
> kernels. Tasos, if you are interested, you might want to check if you 
> can get the drive working with US_FL_NO_REPORT_OPCODES and
> US_FL_NO_SAME alone (fk) quirks alone on 36 live, which ships 
> 5.17.5 kernel. Exercise caution as it is an EOL system.
> I will see if I can narrow down the regression further.
> 
> Best regards,
> Julian
> 
Oddly enough, with 5.19.4 the device starts working after one reset 
instead of after four:

Feb 10 22:36:56 kernel: usb 2-4: new SuperSpeed USB device number 3 
using xhci_hcd
Feb 10 22:36:56 kernel: usb 2-4: New USB device found, idVendor=059f, 
idProduct=1061, bcdDevice= 0.01
Feb 10 22:36:56 kernel: usb 2-4: New USB device strings: Mfr=2, 
Product=3, SerialNumber=1
Feb 10 22:36:56 kernel: usb 2-4: Product: Rugged USB3-FW
Feb 10 22:36:56 kernel: usb 2-4: Manufacturer: LaCie
Feb 10 22:36:56 kernel: usb 2-4: SerialNumber: 00000000157f928920fa
Feb 10 22:36:56 kernel: scsi host6: uas
Feb 10 22:36:56 kernel: scsi 6:0:0:0: Direct-Access     LaCie    Rugged 
FW USB3   051E PQ: 0 ANSI: 6
Feb 10 22:36:56 kernel: sd 6:0:0:0: Attached scsi generic sg1 type 0
Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] 1953525168 512-byte logical 
blocks: (1.00 TB/932 GiB)
Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Write Protect is off
Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Mode Sense: 43 00 00 00
Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Write cache: enabled, read 
cache: enabled, doesn't support DPO or FUA
Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Preferred minimum I/O size 512 
bytes
Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Optimal transfer size 33553920 
bytes
Feb 10 22:37:26 kernel: sd 6:0:0:0: [sda] tag#23 uas_eh_abort_handler 0 
uas-tag 1 inflight: IN
Feb 10 22:37:26 kernel: sd 6:0:0:0: [sda] tag#23 CDB: Inquiry 12 01 b9 
00 04 00
Feb 10 22:37:26 kernel: scsi host6: uas_eh_device_reset_handler start
Feb 10 22:37:26 kernel: usb 2-4: reset SuperSpeed USB device number 3 
using xhci_hcd
Feb 10 22:37:26 kernel: scsi host6: uas_eh_device_reset_handler success
Feb 10 22:37:26 kernel:  sda: sda1 sda2
Feb 10 22:37:26 kernel: sd 6:0:0:0: [sda] Attached SCSI disk

Further bisecting is going to be difficult as there are no built kernels 
left. I will see if the time effort is manageable.

Best regards,
Julian
Julian Sikorski Feb. 13, 2024, 1:06 p.m. UTC | #6
Am 10.02.24 um 22:43 schrieb Julian Sikorski:
> Am 10.02.24 um 22:35 schrieb Julian Sikorski:
>> Am 10.02.24 um 15:21 schrieb Julian Sikorski:
>>> Am 10.02.24 um 14:24 schrieb Tasos Sahanidis:
>>>> On 2024-02-09 17:31, Alan Stern wrote:
>>>>> On Fri, Feb 09, 2024 at 05:11:21PM +0200, Tasos Sahanidis wrote:
>>>>>> This external HDD fails when plugged in to a USB 3 port. Ignoring 
>>>>>> UAS and
>>>>>> falling back to mass storage resolves this issue.
>>>>>
>>>>> What happens when it is plugged into a USB-2 port?
>>>>
>>>> It works without any quirks over USB 2.0 with uas, however asking for
>>>> cache data fails gracefully.
>>>>
>>>> [  520.829840] scsi host4: uas
>>>> [  521.024643] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW 
>>>> USB3   1081 PQ: 0 ANSI: 4
>>>> [  521.026370] sd 4:0:0:0: Attached scsi generic sg2 type 0
>>>> [  521.030096] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: 
>>>> (500 GB/466 GiB)
>>>> [  521.030369] sd 4:0:0:0: [sdc] Write Protect is off
>>>> [  521.030373] sd 4:0:0:0: [sdc] Mode Sense: 47 00 10 08
>>>> [  521.030507] sd 4:0:0:0: [sdc] Asking for cache data failed
>>>> [  521.030512] sd 4:0:0:0: [sdc] Assuming drive cache: write through
>>>> [  521.065916]  sdc: sdc1
>>>> [  521.067783] sd 4:0:0:0: [sdc] Attached SCSI disk
>>>> [  521.699380] EXT4-fs (sdc1): recovery complete
>>>> [  521.699388] EXT4-fs (sdc1): mounted filesystem with ordered data 
>>>> mode. Opts: errors=remount-ro. Quota mode: none.
>>>>
>>>>> Have you checked to see if any of the quirk flags can prevent this
>>>>> problem?  It looks like the only issue might be that one Mode Sense(6)
>>>>> command.
>>>>
>>>> I have tried various combinations of all the available quirks and I
>>>> couldn't get it to not hang. Without any quirks it keeps retrying Mode
>>>> Sense(6) constantly.
>>>>
>>>> I tested US_FL_ALWAYS_SYNC as it sets sdev->skip_ms_page_8 (both with
>>>> and without US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME), and it hung at an
>>>> ATA passthrough command; presumably the next step afterwards.
>>>>
>>>> 30 seconds and one USB reset later, the disk is recognised, but I
>>>> do not know if it is reliable.
>>>>
>>>> [  329.161316] scsi 4:0:0:0: Direct-Access     LaCie    Rugged FW 
>>>> USB3   1081 PQ: 0 ANSI: 4
>>>> [  329.162228] sd 4:0:0:0: Attached scsi generic sg2 type 0
>>>> [  329.166650] sd 4:0:0:0: [sdc] 976773153 512-byte logical blocks: 
>>>> (500 GB/466 GiB)
>>>> [  329.166654] sd 4:0:0:0: [sdc] Assuming Write Enabled
>>>> [  329.166655] sd 4:0:0:0: [sdc] Assuming drive cache: write back
>>>> [  329.197983]  sdc: sdc1
>>>> [  329.198521] sd 4:0:0:0: [sdc] Attached SCSI disk
>>>> [  359.553806] sd 4:0:0:0: [sdc] tag#3 uas_eh_abort_handler 0 
>>>> uas-tag 1 inflight: IN
>>>> [  359.553816] sd 4:0:0:0: [sdc] tag#3 CDB: ATA command pass 
>>>> through(12)/Blank a1 08 2e 00 01 00 00 00 00 ec 00 00
>>>> [  359.573771] scsi host4: uas_eh_device_reset_handler start
>>>> [  359.702116] usb 3-1: reset SuperSpeed USB device number 3 using 
>>>> xhci_hcd
>>>> [  359.722068] usb 3-1: LPM exit latency is zeroed, disabling LPM.
>>>> [  359.724348] scsi host4: uas_eh_device_reset_handler success
>>>> [  360.582975] EXT4-fs (sdc1): recovery complete
>>>> [  360.633098] EXT4-fs (sdc1): mounted filesystem with ordered data 
>>>> mode. Opts: errors=remount-ro. Quota mode: none.
>>>>
>>>> My assumption is that something goes wrong during init and that 
>>>> makes it
>>>> hang in general. Perhaps the Mode Sense(6) is broken in addition to
>>>> whatever else is misbehaving. I don't believe the XHCI controller is at
>>>> fault.
>>>>
>>>>> Falling back from uas to usb-storage could reduce the throughput
>>>>> considerably.  We would like to avoid doing this if possible.
>>>>
>>>> Absolutely, but at the same time I am not sure how much it matters for
>>>> an old mechanical hard disk. Granted, someone can use the same 
>>>> enclosure
>>>> and install an SSD internally, so perhaps that makes it worth it.
>>>>
>>>> Thanks
>>>>
>>>> -- 
>>>> Tasos
>>>>
>>>>
>>>>
>>> This seems to be similar to the issue I am facing with a similar 
>>> LaCie Rugged USB3-FW 059f:1061. Initially we patched it to IGNORE_UAS 
>>> but it then turned out to be working with US_FL_NO_REPORT_OPCODES and 
>>> US_FL_NO_SAME. This was back in September 2021. In August 2023 I 
>>> reported a similar issue as you, I am still seeing it in 6.7.3. The 
>>> good news is that after initial problems it seems to be working fine 
>>> once the USB connection is established.
>>
>> I have now narrowed it down to having broken between 5.18.19 and 
>> 5.19.4 kernels. Tasos, if you are interested, you might want to check 
>> if you can get the drive working with US_FL_NO_REPORT_OPCODES and
>> US_FL_NO_SAME alone (fk) quirks alone on 36 live, which ships 5.17.5 
>> kernel. Exercise caution as it is an EOL system.
>> I will see if I can narrow down the regression further.
>>
>> Best regards,
>> Julian
>>
> Oddly enough, with 5.19.4 the device starts working after one reset 
> instead of after four:
> 
> Feb 10 22:36:56 kernel: usb 2-4: new SuperSpeed USB device number 3 
> using xhci_hcd
> Feb 10 22:36:56 kernel: usb 2-4: New USB device found, idVendor=059f, 
> idProduct=1061, bcdDevice= 0.01
> Feb 10 22:36:56 kernel: usb 2-4: New USB device strings: Mfr=2, 
> Product=3, SerialNumber=1
> Feb 10 22:36:56 kernel: usb 2-4: Product: Rugged USB3-FW
> Feb 10 22:36:56 kernel: usb 2-4: Manufacturer: LaCie
> Feb 10 22:36:56 kernel: usb 2-4: SerialNumber: 00000000157f928920fa
> Feb 10 22:36:56 kernel: scsi host6: uas
> Feb 10 22:36:56 kernel: scsi 6:0:0:0: Direct-Access     LaCie    Rugged 
> FW USB3   051E PQ: 0 ANSI: 6
> Feb 10 22:36:56 kernel: sd 6:0:0:0: Attached scsi generic sg1 type 0
> Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] 1953525168 512-byte logical 
> blocks: (1.00 TB/932 GiB)
> Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Write Protect is off
> Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Mode Sense: 43 00 00 00
> Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Write cache: enabled, read 
> cache: enabled, doesn't support DPO or FUA
> Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Preferred minimum I/O size 512 
> bytes
> Feb 10 22:36:56 kernel: sd 6:0:0:0: [sda] Optimal transfer size 33553920 
> bytes
> Feb 10 22:37:26 kernel: sd 6:0:0:0: [sda] tag#23 uas_eh_abort_handler 0 
> uas-tag 1 inflight: IN
> Feb 10 22:37:26 kernel: sd 6:0:0:0: [sda] tag#23 CDB: Inquiry 12 01 b9 
> 00 04 00
> Feb 10 22:37:26 kernel: scsi host6: uas_eh_device_reset_handler start
> Feb 10 22:37:26 kernel: usb 2-4: reset SuperSpeed USB device number 3 
> using xhci_hcd
> Feb 10 22:37:26 kernel: scsi host6: uas_eh_device_reset_handler success
> Feb 10 22:37:26 kernel:  sda: sda1 sda2
> Feb 10 22:37:26 kernel: sd 6:0:0:0: [sda] Attached SCSI disk
> 
> Further bisecting is going to be difficult as there are no built kernels 
> left. I will see if the time effort is manageable.
> 
> Best regards,
> Julian

So I have good news and bad news. The good news is that I have managed 
to bisect the issue down to commit

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c92a6b5d6335

With c92a6b5d6335 and with e60ac0b9e445, the drive requires multiple 
resets in the VM. With 7fb019c46eee onwards, it only requires one reset.
The bad news is that I am not able to fix it with BLIST_NO_VPD_SIZE:

$ echo "LaCie:Rugged FW USB3:0x2000" | sudo tee /proc/scsi/device_info

This is despite this being used to fix problems with some other devices:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=4b1a2c2a8e0ddcb89c5f6c5003bd9b53142f69e3

I am cross-posting this to scsi list, maybe someone there would be able 
to understand what is going on.
Out of interest, why is the device called "Rugged FW USB3" by scsi but 
"Rugged USB3-FW" by usb?

Best regards,
Julian
Martin K. Petersen Feb. 13, 2024, 2:28 p.m. UTC | #7
Julian,

> I am cross-posting this to scsi list, maybe someone there would be
> able to understand what is going on.

I'm going to copy you on a patch I have in my development tree. I would
appreciate if you could try that out.

Thanks!
Oliver Neukum Feb. 13, 2024, 2:32 p.m. UTC | #8
On 13.02.24 14:06, Julian Sikorski wrote:
> I am cross-posting this to scsi list, maybe someone there would be able to understand what is going on.
> Out of interest, why is the device called "Rugged FW USB3" by scsi but "Rugged USB3-FW" by usb?

USB takes the name provided by USB descriptors.
SCSI takes it from some VPD, IIRC.

	HTH
		Oliver
Julian Sikorski Feb. 13, 2024, 6:14 p.m. UTC | #9
Am 13.02.24 um 15:28 schrieb Martin K. Petersen:
> 
> Julian,
> 
>> I am cross-posting this to scsi list, maybe someone there would be
>> able to understand what is going on.
> 
> I'm going to copy you on a patch I have in my development tree. I would
> appreciate if you could try that out.
> 
> Thanks!
> 
Hi Martin,

Thanks for responding. I tried your patch but it, unfortunately, did not 
help with the issue I and Tasos were having. Not on its own, and not 
with LaCie:Rugged FW USB3:0x2000 added to /proc/scsi/device_info.
Just to make sure we are talking about the same problem: prior to 
c92a6b5d6335, the drive would be usable pretty much immediately after 
connecting - in the logs this manifests by the following rows appearing:

Feb 13 18:59:42 kernel:  sdb: sdb1 sdb2
Feb 13 18:59:42 kernel: sd 8:0:0:0: [sdb] Attached SCSI disk

After c92a6b5d6335, one or more restarts are required (below is from 
Fedora's 6.7.4 with your patch applied on top):

Feb 13 19:01:41 kernel: sd 8:0:0:0: [sdb] tag#13 uas_eh_abort_handler 0 
uas-tag 1 inflight: IN
Feb 13 19:01:41 kernel: sd 8:0:0:0: [sdb] tag#13 CDB: Inquiry 12 01 b9 
00 ff 00
Feb 13 19:01:41 kernel: scsi host8: uas_eh_device_reset_handler start
Feb 13 19:01:41 napoleon2 kernel: usb 2-3: reset SuperSpeed USB device 
number 3 using xhci_hcd
Feb 13 19:01:41 kernel: scsi host8: uas_eh_device_reset_handler success
Feb 13 19:02:11 kernel: scsi host8: uas_eh_device_reset_handler start
Feb 13 19:02:11 kernel: sd 8:0:0:0: [sdb] tag#16 uas_zap_pending 0 
uas-tag 1 inflight:
Feb 13 19:02:11 kernel: sd 8:0:0:0: [sdb] tag#16 CDB: Inquiry 12 01 b9 
00 ff 00
Feb 13 19:02:11 kernel: usb 2-3: reset SuperSpeed USB device number 3 
using xhci_hcd
Feb 13 19:02:11 kernel: scsi host8: uas_eh_device_reset_handler success
Feb 13 19:02:41 kernel: scsi host8: uas_eh_device_reset_handler start
Feb 13 19:02:41 kernel: sd 8:0:0:0: [sdb] tag#17 uas_zap_pending 0 
uas-tag 1 inflight:
Feb 13 19:02:41 kernel: sd 8:0:0:0: [sdb] tag#17 CDB: Inquiry 12 01 b9 
00 ff 00
Feb 13 19:02:42 kernel: usb 2-3: reset SuperSpeed USB device number 3 
using xhci_hcd
Feb 13 19:02:42 kernel: scsi host8: uas_eh_device_reset_handler success
Feb 13 19:03:12 kernel: scsi host8: uas_eh_device_reset_handler start
Feb 13 19:03:12 kernel: sd 8:0:0:0: [sdb] tag#28 uas_zap_pending 0 
uas-tag 1 inflight:
Feb 13 19:03:12 kernel: sd 8:0:0:0: [sdb] tag#28 CDB: Inquiry 12 01 b9 
00 ff 00
Feb 13 19:03:12 kernel: usb 2-3: reset SuperSpeed USB device number 3 
using xhci_hcd
Feb 13 19:03:12 kernel: scsi host8: uas_eh_device_reset_handler success

Four resets are needed with the current kernel-6.7.4. With early 5.19 
kernels on and after 7fb019c46eee it needed one reset, with c92a6b5d6335 
and with e60ac0b9e445 multiple resets were needed too. As 30 seconds 
need to pass between the resets, it does take a while until the drive 
can be used.
I did not test other commits between c92a6b5d6335 and c92a6b5d6335 as I 
was bisecting and only tested the commits suggested by git.
6.7.4 I tested with bare metal Fedora 39, 5.19 with a Fedora 36 VM.
If this was already clear, please feel free to ignore.
In case it is relevant: my drive (but not Tasos') is patched to use 
US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME.

Best regards,
Julian
Martin K. Petersen Feb. 13, 2024, 6:49 p.m. UTC | #10
Julian,

> Feb 13 19:01:41 kernel: sd 8:0:0:0: [sdb] tag#13 uas_eh_abort_handler
> 0 uas-tag 1 inflight: IN
> Feb 13 19:01:41 kernel: sd 8:0:0:0: [sdb] tag#13 CDB: Inquiry 12 01 b9
> 00 ff 00

OK, I see. I think I have an idea what's going on. Let me try a couple
of things...
diff mbox series

Patch

diff --git a/drivers/usb/storage/unusual_uas.h b/drivers/usb/storage/unusual_uas.h
index 1f8c9b16a0fb..b1d99c57cf8a 100644
--- a/drivers/usb/storage/unusual_uas.h
+++ b/drivers/usb/storage/unusual_uas.h
@@ -45,6 +45,17 @@  UNUSUAL_DEV(0x059f, 0x105f, 0x0000, 0x9999,
 		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
 		US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME),
 
+/*
+ * Patch by Tasos Sahanidis <tasos@tasossah.com>
+ * UAS hangs during Mode Sense(6). The quirks for the similar "Rugged USB3-FW"
+ * disk (US_FL_NO_REPORT_OPCODES | US_FL_NO_SAME) do not resolve the issue.
+ */
+UNUSUAL_DEV(0x059f, 0x104b, 0x0000, 0x9999,
+		"LaCie",
+		"Rugged FW USB3",
+		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
+		US_FL_IGNORE_UAS),
+
 /* Reported-by: Julian Sikorski <belegdol@gmail.com> */
 UNUSUAL_DEV(0x059f, 0x1061, 0x0000, 0x9999,
 		"LaCie",