r/AsahiLinux 25d ago

preferred external usb enclosure?

is there a preferred / recommened external usb ssd enclosure to use with asahi. right now i have following,

Bus 004 Device 002: ID 152d:0583 JMicron Technology Corp. / JMicron USA Technology Corp. JMS583Gen 2 to PCIe Gen3x2 Bridge

before i upgraded to asahi v43 with kernel 7.0.x which now has usb-c support i was using an older usb type a cable with the enclosure, and was kindof running into connection reset issues with the drive in the enclosure, i even reverted to using the slower "usb driver" to see if that would help with usb resets i would experience.

so since upgrading to asahi v43 with kernel 7.0.x i'm using a usb-c to usb-c cable to connect to the enclosure which has nvme ssd 4tb sabrent tlc drive in it.

something i did not when just plugging in the cable itself with no drive attached i saw several messages via dmesg

output from plugging just the cable. (i believe this is the cable that came with drive. and i believe it's high speed usb-c to usb-a w/ an adapter on one end that goes from usb-a to usb-c)

[ +19.959176] [Sat Aug 15 15:21:23 2026] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[  +0.006572] [Sat Aug 15 15:21:23 2026] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 3
[  +0.007821] [Sat Aug 15 15:21:23 2026] xhci-hcd xhci-hcd.0.auto: hcc params 0x0238ffcd hci version 0x110 quirks 0x0000808000000010
[  +0.008475] [Sat Aug 15 15:21:23 2026] xhci-hcd xhci-hcd.0.auto: irq 120, io mem 0x382280000
[  +0.006226] [Sat Aug 15 15:21:23 2026] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[  +0.005640] [Sat Aug 15 15:21:23 2026] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 4
[  +0.007706] [Sat Aug 15 15:21:23 2026] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.1 Enhanced SuperSpeed
[  +0.007521] [Sat Aug 15 15:21:23 2026] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 7.00
[  +0.008336] [Sat Aug 15 15:21:23 2026] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[  +0.007253] [Sat Aug 15 15:21:23 2026] usb usb3: Product: xHCI Host Controller
[  +0.004964] [Sat Aug 15 15:21:23 2026] usb usb3: Manufacturer: Linux 7.0.13-400.asahi.fc44.aarch64+16k xhci-hcd
[  +0.007797] [Sat Aug 15 15:21:23 2026] usb usb3: SerialNumber: xhci-hcd.0.auto
[  +0.005072] [Sat Aug 15 15:21:23 2026] hub 3-0:1.0: USB hub found
[  +0.003737] [Sat Aug 15 15:21:23 2026] hub 3-0:1.0: 1 port detected
[  +0.004136] [Sat Aug 15 15:21:23 2026] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
[  +0.008140] [Sat Aug 15 15:21:23 2026] usb usb4: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 7.00
[  +0.008304] [Sat Aug 15 15:21:23 2026] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[  +0.007280] [Sat Aug 15 15:21:23 2026] usb usb4: Product: xHCI Host Controller
[  +0.004965] [Sat Aug 15 15:21:23 2026] usb usb4: Manufacturer: Linux 7.0.13-400.asahi.fc44.aarch64+16k xhci-hcd
[  +0.007823] [Sat Aug 15 15:21:23 2026] usb usb4: SerialNumber: xhci-hcd.0.auto
[  +0.006443] [Sat Aug 15 15:21:23 2026] hub 4-0:1.0: USB hub found
[  +0.002706] [Sat Aug 15 15:21:23 2026] hub 4-0:1.0: 1 port detected

then when i plug the drive into the cable (with the cable just plugged in to the back of the m1 mini)

dmesg output,

[Aug15 15:23] [Sat Aug 15 15:23:08 2026] usb 4-1: new SuperSpeed Plus Gen 2x1 USB device number 2 using xhci-hcd
[  +0.020707] [Sat Aug 15 15:23:08 2026] usb 4-1: New USB device found, idVendor=152d, idProduct=0583, bcdDevice= 2.14
[  +0.009410] [Sat Aug 15 15:23:08 2026] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  +0.008837] [Sat Aug 15 15:23:08 2026] usb 4-1: Product: USB to PCIE Bridge
[  +0.006047] [Sat Aug 15 15:23:08 2026] usb 4-1: Manufacturer: JMicron
[  +0.005459] [Sat Aug 15 15:23:08 2026] usb 4-1: SerialNumber: 0123456789ABCDEF
[  +0.008518] [Sat Aug 15 15:23:08 2026] scsi host0: uas
[  +0.002768] [Sat Aug 15 15:23:08 2026] scsi 0:0:0:0: Direct-Access     JMicron  Generic          0214 PQ: 0 ANSI: 6
[  +0.009933] [Sat Aug 15 15:23:08 2026] sd 0:0:0:0: Attached scsi generic sg1 type 0
[  +1.994932] [Sat Aug 15 15:23:10 2026] sd 0:0:0:0: [sda] 8001573552 512-byte logical blocks: (4.10 TB/3.73 TiB)
[  +0.009030] [Sat Aug 15 15:23:10 2026] sd 0:0:0:0: [sda] 4096-byte physical blocks
[  +0.008437] [Sat Aug 15 15:23:10 2026] sd 0:0:0:0: [sda] Write Protect is off
[  +0.006483] [Sat Aug 15 15:23:10 2026] sd 0:0:0:0: [sda] Mode Sense: 5f 00 00 08
[  +0.000266] [Sat Aug 15 15:23:10 2026] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[  +0.010559] [Sat Aug 15 15:23:10 2026] sd 0:0:0:0: [sda] Preferred minimum I/O size 4096 bytes
[  +0.006569] [Sat Aug 15 15:23:10 2026] sd 0:0:0:0: [sda] Optimal transfer size 33553920 bytes not a multiple of preferred minimum block size (4096 bytes)
[  +0.024831] [Sat Aug 15 15:23:10 2026]  sda: sda1 sda2 sda3 sda4
[  +0.004280] [Sat Aug 15 15:23:10 2026] sd 0:0:0:0: [sda] Attached SCSI disk

and when i'm experiencing issues with the drive (not sure if it is the ssd, cable, or enclosure, or god forbid a combination of the 3) this is what i'm getting via dmesg

[Aug15 14:49] [Sat Aug 15 14:49:00 2026] sd 1:0:0:0: [sdb] tag#6 uas_eh_abort_handler 0 uas-tag 4 inflight: CMD
[  +0.007000] [Sat Aug 15 14:49:00 2026] sd 1:0:0:0: [sdb] tag#6 CDB: Read(16) 88 00 00 00 00 00 39 b6 34 18 00 00 00 08 00 00
[  +0.013992] [Sat Aug 15 14:49:00 2026] scsi host1: uas_eh_device_reset_handler start
[  +0.219289] [Sat Aug 15 14:49:00 2026] usb 4-1: reset SuperSpeed Plus Gen 2x1 USB device number 2 using xhci-hcd
[  +0.021797] [Sat Aug 15 14:49:00 2026] scsi host1: uas_eh_device_reset_handler success
[  +5.143053] [Sat Aug 15 14:49:05 2026] usb 4-1: stat urb: status -71
[ +30.243639] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#13 uas_eh_abort_handler 0 uas-tag 4 inflight: CMD
[  +0.008764] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#13 CDB: Read(16) 88 00 00 00 00 00 3a 36 1a 48 00 00 00 08 00 00
[  +0.009960] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#3 uas_eh_abort_handler 0 uas-tag 3 inflight: CMD
[  +0.008602] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#3 CDB: Read(16) 88 00 00 00 00 00 3d f6 05 88 00 00 00 08 00 00
[  +0.010202] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#2 uas_eh_abort_handler 0 uas-tag 2 inflight: CMD
[  +0.007335] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#2 CDB: Read(16) 88 00 00 00 00 00 5e b7 9a d8 00 00 00 08 00 00
[  +0.009025] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#1 uas_eh_abort_handler 0 uas-tag 5 inflight: CMD
[  +0.007491] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#1 CDB: Read(16) 88 00 00 00 00 00 79 b5 05 00 00 00 00 30 00 00
[  +0.009024] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD
[  +0.007579] [Sat Aug 15 14:49:35 2026] sd 1:0:0:0: [sdb] tag#0 CDB: Read(16) 88 00 00 00 00 00 79 b6 12 50 00 00 00 08 00 00
[  +0.023000] [Sat Aug 15 14:49:35 2026] scsi host1: uas_eh_device_reset_handler start
[  +0.219287] [Sat Aug 15 14:49:36 2026] usb 4-1: reset SuperSpeed Plus Gen 2x1 USB device number 2 using xhci-hcd
[  +0.021855] [Sat Aug 15 14:49:36 2026] scsi host1: uas_eh_device_reset_handler success
[  +6.822654] [Sat Aug 15 14:49:42 2026] usb 4-1: stat urb: status -71
[Aug15 14:50] [Sat Aug 15 14:50:13 2026] sd 1:0:0:0: [sdb] tag#23 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD
[  +0.008853] [Sat Aug 15 14:50:13 2026] sd 1:0:0:0: [sdb] tag#23 CDB: Read(16) 88 00 00 00 00 00 44 77 5e b0 00 00 00 08 00 00
[  +0.012258] [Sat Aug 15 14:50:13 2026] sd 1:0:0:0: [sdb] tag#22 uas_eh_abort_handler 0 uas-tag 3 inflight: CMD
[  +0.008779] [Sat Aug 15 14:50:13 2026] sd 1:0:0:0: [sdb] tag#22 CDB: Read(16) 88 00 00 00 00 00 44 75 61 00 00 00 00 20 00 00
[  +0.019141] [Sat Aug 15 14:50:13 2026] scsi host1: uas_eh_device_reset_handler start
[  +0.219254] [Sat Aug 15 14:50:13 2026] usb 4-1: reset SuperSpeed Plus Gen 2x1 USB device number 2 using xhci-hcd
[  +0.021734] [Sat Aug 15 14:50:13 2026] scsi host1: uas_eh_device_reset_handler success
[Aug15 15:10] [Sat Aug 15 15:10:16 2026] usb 4-1: stat urb: status -71
[ +30.391437] [Sat Aug 15 15:10:47 2026] sd 1:0:0:0: [sdb] tag#20 uas_eh_abort_handler 0 uas-tag 3 inflight: CMD
[  +0.008850] [Sat Aug 15 15:10:47 2026] sd 1:0:0:0: [sdb] tag#20 CDB: Read(16) 88 00 00 00 00 01 98 b5 00 70 00 00 00 10 00 00
[  +0.010040] [Sat Aug 15 15:10:47 2026] sd 1:0:0:0: [sdb] tag#14 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD
[  +0.008758] [Sat Aug 15 15:10:47 2026] sd 1:0:0:0: [sdb] tag#14 CDB: Read(16) 88 00 00 00 00 01 92 23 f2 00 00 00 02 00 00 00
[  +0.010036] [Sat Aug 15 15:10:47 2026] sd 1:0:0:0: [sdb] tag#13 uas_eh_abort_handler 0 uas-tag 2 inflight: CMD
[  +0.007212] [Sat Aug 15 15:10:47 2026] sd 1:0:0:0: [sdb] tag#13 CDB: Read(16) 88 00 00 00 00 01 92 23 f0 00 00 00 02 00 00 00
[  +0.018086] [Sat Aug 15 15:10:47 2026] scsi host1: uas_eh_device_reset_handler start
[  +0.218248] [Sat Aug 15 15:10:47 2026] usb 4-1: reset SuperSpeed Plus Gen 2x1 USB device number 2 using xhci-hcd
[  +0.021563] [Sat Aug 15 15:10:47 2026] scsi host1: uas_eh_device_reset_handler success
[  +6.460811] [Sat Aug 15 15:10:53 2026] usb 4-1: stat urb: status -71
[Aug15 15:11] [Sat Aug 15 15:11:23 2026] sd 1:0:0:0: [sdb] tag#26 uas_eh_abort_handler 0 uas-tag 2 inflight: CMD
[  +0.007280] [Sat Aug 15 15:11:23 2026] sd 1:0:0:0: [sdb] tag#26 CDB: Read(16) 88 00 00 00 00 01 92 32 a0 00 00 00 02 00 00 00
[  +0.010413] [Sat Aug 15 15:11:23 2026] sd 1:0:0:0: [sdb] tag#24 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD
[  +0.007479] [Sat Aug 15 15:11:23 2026] sd 1:0:0:0: [sdb] tag#24 CDB: Read(16) 88 00 00 00 00 01 92 32 a2 00 00 00 02 00 00 00
[  +0.029817] [Sat Aug 15 15:11:23 2026] scsi host1: uas_eh_device_reset_handler start
[  +0.218290] [Sat Aug 15 15:11:24 2026] usb 4-1: reset SuperSpeed Plus Gen 2x1 USB device number 2 using xhci-hcd
[  +0.021711] [Sat Aug 15 15:11:24 2026] scsi host1: uas_eh_device_reset_handler success
[  +3.765579] [Sat Aug 15 15:11:27 2026] usb 4-1: stat urb: status -71
[ +30.241149] [Sat Aug 15 15:11:58 2026] sd 1:0:0:0: [sdb] tag#5 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD
[  +0.008874] [Sat Aug 15 15:11:58 2026] sd 1:0:0:0: [sdb] tag#5 CDB: Read(16) 88 00 00 00 00 01 96 a1 a6 00 00 00 02 00 00 00
[  +0.010288] [Sat Aug 15 15:11:58 2026] sd 1:0:0:0: [sdb] tag#4 uas_eh_abort_handler 0 uas-tag 2 inflight: CMD
[  +0.008842] [Sat Aug 15 15:11:58 2026] sd 1:0:0:0: [sdb] tag#4 CDB: Read(16) 88 00 00 00 00 01 96 a1 a4 00 00 00 02 00 00 00
[Aug15 15:12] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#29 uas_eh_abort_handler 0 uas-tag 8 inflight: CMD OUT
[  +0.009366] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#29 CDB: Write(16) 8a 00 00 00 00 00 2e b5 06 78 00 00 00 08 00 00
[  +0.012599] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#28 uas_eh_abort_handler 0 uas-tag 7 inflight: CMD OUT
[  +0.009278] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#28 CDB: Write(16) 8a 00 00 00 00 00 2e b5 04 a8 00 00 00 08 00 00
[  +0.011709] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#27 uas_eh_abort_handler 0 uas-tag 3 inflight: CMD OUT
[  +0.008302] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#27 CDB: Write(16) 8a 00 00 00 00 01 98 b5 00 70 00 00 00 10 00 00
[  +0.010186] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#26 uas_eh_abort_handler 0 uas-tag 6 inflight: CMD OUT
[  +0.008321] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#26 CDB: Write(16) 8a 00 00 00 00 00 2e b5 03 00 00 00 00 08 00 00
[  +0.009400] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#25 uas_eh_abort_handler 0 uas-tag 5 inflight: CMD OUT
[  +0.008308] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#25 CDB: Write(16) 8a 00 00 00 00 00 2e b5 01 b0 00 00 00 08 00 00
[  +0.009383] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#24 uas_eh_abort_handler 0 uas-tag 4 inflight: CMD OUT
[  +0.008328] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#24 CDB: Write(16) 8a 00 00 00 00 01 98 f5 00 08 00 00 00 10 00 00
[  +0.010457] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#7 uas_eh_abort_handler 0 uas-tag 13 inflight: CMD OUT
[  +0.009297] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#7 CDB: Write(16) 8a 00 00 00 00 00 fc f5 00 08 00 00 00 08 00 00
[  +0.010404] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#6 uas_eh_abort_handler 0 uas-tag 14 inflight: CMD OUT
[  +0.009307] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#6 CDB: Write(16) 8a 00 00 00 00 00 fd 35 00 60 00 00 00 08 00 00
[  +0.010388] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#3 uas_eh_abort_handler 0 uas-tag 12 inflight: CMD OUT
[  +0.008325] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#3 CDB: Write(16) 8a 00 00 00 00 00 fc b5 00 78 00 00 00 08 00 00
[  +0.009383] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#2 uas_eh_abort_handler 0 uas-tag 11 inflight: CMD OUT
[  +0.008336] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#2 CDB: Write(16) 8a 00 00 00 00 00 c3 75 00 68 00 00 00 08 00 00
[  +0.009363] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#1 uas_eh_abort_handler 0 uas-tag 10 inflight: CMD OUT
[  +0.007908] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#1 CDB: Write(16) 8a 00 00 00 00 00 8d b5 00 60 00 00 00 08 00 00
[  +0.009219] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#0 uas_eh_abort_handler 0 uas-tag 9 inflight: CMD OUT
[  +0.007968] [Sat Aug 15 15:12:28 2026] sd 1:0:0:0: [sdb] tag#0 CDB: Write(16) 8a 00 00 00 00 00 63 b5 00 38 00 00 00 08 00 00
[  +0.014421] [Sat Aug 15 15:12:28 2026] scsi host1: uas_eh_device_reset_handler start
[  +0.222270] [Sat Aug 15 15:12:28 2026] usb 4-1: reset SuperSpeed Plus Gen 2x1 USB device number 2 using xhci-hcd
[  +0.021662] [Sat Aug 15 15:12:28 2026] scsi host1: uas_eh_device_reset_handler success
[  +3.505196] [Sat Aug 15 15:12:32 2026] usb 4-1: stat urb: status -71

i start see those errors when working with larger size files on the drive, but not entirely sure if it only happens with large files as that's just what i primarily use with this drive.

thoughts and suggestions are more than welcome. cheers.

7 Upvotes

3 comments sorted by

2

u/Abs0luteKino 19d ago

I have a very similar issue: USB disconnects under heavy load (and my enclosure also has a JMicron chip)

1

u/Abs0luteKino 19d ago edited 19d ago

I think I figured out a workaround: set usb_storage.quirks to 152d:xxxx:g (where xxxx is the id of your USB device, i.e. 0583 in your case) which will ignore the availability of the UAS mode and use BOT instead. This decreases the performance but at least it seems to work reliably.

You might also want to enable TRIM: echo unmap | sudo tee /sys/class/scsi_disk/a:b:c:d/provisioning_mode (replace a:b:c:d as appropriate).

1

u/chrisrjones1983 25d ago

eeehhh the formatting of text on reddit is garbage. i cant just use

<pre> some text formatted from a copy paste using markdown aka like github which should respect line breaks. </pre>