PINE64
Rock64 crash randomly during usb 3 copy with RAID1 drive - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: ROCK64 (https://forum.pine64.org/forumdisplay.php?fid=85)
+--- Forum: Linux on Rock64 (https://forum.pine64.org/forumdisplay.php?fid=88)
+--- Thread: Rock64 crash randomly during usb 3 copy with RAID1 drive (/showthread.php?tid=5137)

Pages: 1 2 3


RE: Rock64 crash randomly during usb 3 copy with RAID1 drive - tomtomtom - 11-07-2017

Tk's to rontant so also !!!


RE: Rock64 crash randomly during usb 3 copy with RAID1 drive - i69fstop - 05-08-2018

(09-19-2017, 05:46 AM)rontant Wrote:
(09-19-2017, 02:26 AM)digitaldaz Wrote: Actually, how do you blacklist the UAS??

First, check if your USB enclosure is indeed a UAS enabled USB 3 enclosure. Use the command:

Code:
lsusb -t

Do you see your device listed as one using uas driver?

If yes, get the vendor ID and the product ID . Just use the command  line 'lsusb' without any parameter and you will see a list of USB devices with their respective ID numbers. Your USB enclosure should be one of them. If you use WD Passport 3TB, for example, you will see something like this:

Bus 005 Device 003: ID 1058:0827 Western Digital Technologies, Inc.

1058 is the vendor ID and 0827 the product ID.

Add these 2 numbers into the conf file in /etc/modprobe.d to blacklist the UAS

Code:
sudo nano /etc/modprobe.d/rk3328-usb-storage-quirks.conf

The ID numbers should be following the format 0xVendorID:0xProductID:u. Each blacklisted device should be separated by a comma. See the example below.  

options usb-storage quirks=0x2537:0x1066:u,0x2537:0x1068:u,0x0bc2:0xa013:u,0x1058:0x0827:u,0x0bc2:0x2101:u,0x2109:0x0715:u


Reboot twice. 
Run 'dmesg' to verify.  If you edit correctly, you should see a line in dmesg saying your device has been blacklisted. If you run "lsusb -t" again,  it should say "driver=usb-storage"  instead of "driver=uas"

A BIG CAVEAT: Do this at your own risk.

Thanks @rontant, it works great

after your instructions, I also run "sudo update-initramfs -u"
Code:
root@rock64:~#sudo update-initramfs -u

reboot

root@rock64:~# dmesg | grep blacklisted
[    5.042432] usb 5-1: UAS is blacklisted for this device, using usb-storage instead
root@rock64:~#



RE: Rock64 crash randomly during usb 3 copy with RAID1 drive - Gordon McIntosh - 05-12-2018

Can I suggest that you look up multiplexing (muxing) you may find your issue is more to do with how signals are handled


RE: Rock64 crash randomly during usb 3 copy with RAID1 drive - AnythingIsFine - 05-30-2018

Hello,

I know I'm late to the party, but I've been encountering the very same issue described here on my Rock64 4GB model, running Armbian 5.42

I have a 500GB 2.5' Hitachi drive, enclosed in a ICYBOX IB231StU3 connected via USB 3.0 to the Rock64 which I use for storage.
I noticed when I had high disk utilization, I got some messages as below in my system log and the Rock just "froze", I had to unplug/plug it back up in order to get it running.

Code:
May 30 11:50:37 localhost kernel: [  805.828012] sd 0:0:0:0: [sda] tag#4 uas_eh_abort_handler 0 uas-tag 5 inflight: CMD OUT
May 30 11:50:37 localhost kernel: [  805.828053] sd 0:0:0:0: [sda] tag#4 CDB: opcode=0x2a 2a 00 01 2e ac 00 00 04 00 00
May 30 11:50:37 localhost kernel: [  805.828137] xhci-hcd xhci-hcd.9.auto: ERROR Transfer event for disabled endpoint or incorrect stream ring
May 30 11:50:37 localhost kernel: [  805.828170] xhci-hcd xhci-hcd.9.auto: @00000000f36e4a60 00000000 00000000 1b000000 010c8000
May 30 11:50:37 localhost kernel: [  805.828384] sd 0:0:0:0: [sda] tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD OUT
May 30 11:50:37 localhost kernel: [  805.828423] sd 0:0:0:0: [sda] tag#0 CDB: opcode=0x2a 2a 00 01 2e a8 00 00 04 00 00
May 30 11:50:37 localhost kernel: [  805.828505] xhci-hcd xhci-hcd.9.auto: ERROR Transfer event for disabled endpoint or incorrect stream ring
May 30 11:50:37 localhost kernel: [  805.828537] xhci-hcd xhci-hcd.9.auto: @00000000f36e4a80 00000000 00000000 1b000000 010c8000


I tried blacklisting the "uas" kernel module as described in this thread by @rotant, yet post reboot my external HDD driver was still stuck to "uas"

I found this post, which uses Armbian's config file to blacklist the "uas" kernel module for the respective device and this did the trick for me.

To summarize:

1. Use
Code:
lsbusb -t

to identify which devices use the dreaded "uas" module.

2.
Code:
lsusb

to identify that device's ID. (just like user rotant pointed out)

3. Edit the /boot/ArmbianEnv.txt. Go to the line:

Code:
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u

 and add you device ID these as so(please note the commas between entries):

Code:
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u,0x174c:0x55aa:u

4. Update initramfs
Code:
update-initramfs -u

5. reboot and verify with "lsusb -t" that the device driver is now "usb-storage" as oppossed to "uas"

* Please note, this will affect the read/write sped on your HDD, using "uas" I had ~120 MB/s, whereas with "usb-storage" I get ~ 77 MB/s, but now it's stable...


RE: Rock64 crash randomly during usb 3 copy with RAID1 drive - BrownLuther007 - 09-14-2020

Thanks for sharing and I would like to recommend the TP-Link 7-port hub. I bought it to replace my 7-port USB powered hub from Amazon that does not work with my 2 external hard disks, which is troublesome. If you have a laptop and frequently use multiple external hard drives then I would absolutely recommend to get a hub with dedicated power adapter to provides sufficient power for 7-ports at the same time. Also great that it has an integrated high-speed universal charging ports.

https://www.tp-link.com/in/home-networking/computer-accessory/uh700/