Re: xhci USB transaction error and subsequent recovery mechanism on Freebsd stable/12

From: Bakul Shah <bakul_at_iitbombay.org>
Date: Tue, 12 Apr 2022 23:04:20 UTC
On Apr 12, 2022, at 8:10 AM, mahesh mv <maheshm_v@yahoo.com> wrote:
> 
>  This issue was never observed with Linux kernel 5.4.2 on the same HW.

On an external SSD I have, Linux was using UAS (USB
Attached SCSI), while FreeBSD used the older BOT (Bulk
Only Transport) protocol. See if your disk supports both.
You can try

usbconfig -d genN.M dump_all_desc # N = unit, M=device index

to dump all the descriptors and see what all it supports.
You should see something like this:

# !! | grep Protocol
  bDeviceProtocol = 0x0000
      bInterfaceProtocol = 0x0050 -- BOT
      bInterfaceProtocol = 0x0062 -- UAS

Likely a remote possibility but could it be that it has a
bug in the disk's BOT implementation? At any rate you can
check if anyone else with the exact disk model has similar
issues. Alternately, see if the problem disappears with a
different disk. Another thing to check is whether the disk
has any updated firmware. 

Note: I am not a USB expert so apologies in advance if this
leads you astray! My main point being that the issue may not
necessarily be a FreeBSD bug.

Do share the USB traces.