USB 3 problem

Hi guys
I have a strange problem.
The long version is this: I have bought a new PC from ebuyer.com and moved from OpenSUSE Tumblweed back to EndeavourOS. I have been bouncing between the two for a while as I like the way OS does the BTRFS snapshotting and rolling-back. However, there was so many packages I just couldn’t find or they were a PITA to find so I finally made the move back to EOS.
The new PC is great but I have had an ongoing problem that I just cannot figure out; I use a JMicron salcar docking station - Here to backup my files to various hard disks (I once lost all my music and family photos so I’m very paranoid and keep regular backups) which is plugged into the USB ports on the top of my machine.
If I use the USB 2 port, I can back everything up but it takes ages but if I plug it in to the USB 3 port, the drive is recognised and will mount but after copying a few files, it will freeze, give an error message (usually ‘read-only filesystem’) and I have to phyisically switch the dock off, unmount the partition, delete the folder name in the /run/media/ folder, switch back on and it will mount again but the same thing happens again each time.
Also, if I check the dmesg, I get various errors such as xhci_hcd 0000:02:00.0: ERROR Transfer event for unknown stream ring slot 1 ep 7 and [ 949.437411] blk_update_request: I/O error, dev sdd, sector 4923395088 op 0x1:(WRITE) flags 0x104000 phys_seg 128 prio class 0 [ 949.437415] BTRFS error (device sdd1): bdev /dev/sdd1 errs: wr 2, rd 0, flush 0, corrupt 0, gen 0
I have read on various forums (with no solutions) that it may have something to do with uas but I have no idea what is causing the problem. I have had to disable iommu in the grub entry as that seemed to make the problem worse but I am really at a loss.
Can someone please help?

** UPDATE **
Hi guys
It seems to be something to do with USB 3 ports going into ‘power-save’ mode. This ability/irritation looks like the likely cause of my problem. Can anyone tell me how to disable this feature/annoyance on all my USB 3 ports?
Thanks in advance

are you using TLP ?
systemctl status tlp
https://wiki.archlinux.org/index.php/TLP#Configuration

It could be a problem with UAS. You could check if the usb driver is using UAS.

lsusb -t

https://www.smartmontools.org/wiki/SAT-with-UAS-Linux

3 Likes

You little beaut!
I had tried adding options usb-storage quirks=152d:8561:u to /etc/modprobe.d/usb-storage but it didn’t do anything but by following the link you posted, I saw a section saying about adding it to the grub line which I did - it fixed the problem. Thank you so much!!

1 Like

From what i read the uas uses the xhci to stream the info and it has something to do with shutting down the transfer process.

I’m afraid it’s happening again except this time with every USB drive I try. The original problem has been solved by adding that line grub but if I insert a USB stick, it shows up but won’t mount, I can’t format the drive as I get a read/write error and adding the ID to the grub like the other one has no effect. Please help

Sorry to hear this. Does this happen if the dock is not plugged in? Any chance you can send the link from this command.

inxi -Fxxxz --no-host | eos-sendlog

I’m trying OpenSUSE Tumbleweed again at the moment as I thought it would handle it a different way (it didn’t) because for some reason I don’t get the same error message on bootup although on OpenSUSE I get ’ AMD-Vi: Unable to read/write to IOMMU perf counter’

Try this kernel parameter

iommu=pt

Edit: If that doesn’t work try this one

"iommu=soft"

Edit2: You could also try nomodeset iommu=off

bizarrely IOMMU=pt killed my internet connection, soft didn’t work either and nomodeset IOMMU=off did the same but screwed up my screen resolution

Sorry about that. Here is the AMD document related to IOMMU maybe you can figure out something from it.

I would also look at dmesg and journalctl -b

in my BIOS, I have the option to set Legacy USB to Auto, Enabled or Disabled and XHCI Hand-off to Enabled or Disabled. Would either of those help? Luckily I have a USB drive with EOS on that works so I am going to reinstall

My question would be, how reliable is this device? Does it work at USB 3.0 speeds with any OS? Have you tried some different USB cables?

I haven’t tried any other OS but that isn’t the problem. That works now but I’ve only noticed in the last few days that all of my USB drives (except one) won’t work

1 Like

So it was working originally with the kernel parameter you were using before on EndeavourOS. Then with updates you noticed the usb aren’t working now except one?

I’ve only had the new machine a week or so, the problem with the USB ports has been ongoing but after adding the quirks…etc above to the grub line, the external drive/dock worked fine but I didn’t try any USB sticks. When I plugged one in, it would pop up in the tray (KDE) then immediately disappear, reappear, disappear etc

I guess you’ll have to try it without the dock plugged in after a normal install and go from there.

I am now typing this on a live USB instead of my phone and EOS is installing in the background. I have tried Enabling Legacy USB and Disabling XHCI Hand-off in the BIOS. Fingers crossed

I have the Xhci Hand-off on on my board.