09-17-2017, 06:02 AM
(This post was last modified: 09-17-2017, 06:03 AM by rontant.)
Alright, I have tested the new Orico USB3.1 type C enclosure on my other SBC, Odroid XU4 (running Arch Linux Arm 4.9.5x) and it turned out to be facing the same problem. So it seems to confirm my suspicion that this is an upstream Linux issue.
The good news is that simply disabling UAS for both Rock64 and Odroid XU4 make the problem disappear. UAS is great but until a viable option is available to make UAS stable, I will just continue to use this USB3.1 enclosure with UAS disabled.
By the way, don't be afraid to use USB3.0 hub but make sure it is a powered hub. If you plan to use more than two disks, get one with a PSU of at least 12V.
09-19-2017, 02:26 AM
(This post was last modified: 09-19-2017, 02:48 AM by digitaldaz.)
My board is crashing like crazy with an SSD, no RAID. That said, I am not using a powered USB, just a USB to SATA. I have a 3A PSU on this I thought that would be good for it. I'm wondering whether it could be the UAS thing, it is definitely using the UAS.
Either way, no great concern right now. I'm loving the blazing speeds I'm getting though
Actually, how do you blacklist the UAS??
09-19-2017, 05:46 AM
(This post was last modified: 09-19-2017, 06:10 AM by rontant.)
(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:
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,0x 1058:0x 0827: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.
(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:
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.
I'd actually worked it all out, the real key to this and I haven't a clue why is the "Reboot twice. " I had only rebooted once, thanks!
(09-19-2017, 08:00 AM)digitaldaz Wrote: I'd actually worked it all out, the real key to this and I haven't a clue why is the "Reboot twice. " I had only rebooted once, thanks!
Well, good for you then. With my Orico USB3.1 type C, it requires two reboots for the blacklisting to take effect. Thank you.
09-23-2017, 04:06 AM
(This post was last modified: 09-23-2017, 04:08 AM by digitaldaz.)
(09-23-2017, 02:53 AM)rontant Wrote: (09-19-2017, 08:00 AM)digitaldaz Wrote: I'd actually worked it all out, the real key to this and I haven't a clue why is the "Reboot twice. " I had only rebooted once, thanks!
Well, good for you then. With my Orico USB3.1 type C, it requires two reboots for the blacklisting to take effect. Thank you.
I hadn't worked out the two reboots, I was still sat broken until your post
Incidently, I have now got five nodes with LXD on them, none have crashed since I used this method provided by rontant and have now got / on SSD.
Could anyone add these storage quirks to my repo to be included with next build? https://github.com/ayufan-rock64/linux-b...modprobe.d
11-06-2017, 01:34 PM
(This post was last modified: 11-06-2017, 01:54 PM by tomtomtom.)
Hello digitaldaz
Tk's very very much.
You solve the problem.
i use a USB 3.1 Drive and an USB 2 frive on the ROCK64.
When i use Transmission, for torrent, then after few seconds, Transmission fails, no connection, and i have no access to the web interface.
i use your method pn the usb 3.1 device,
and
Code: sudo nano /etc/modprobe.d/rk3328-usb-storage-quirks.conf
and reboot twice.
and the miracle happends. 1 hour later, still working great.
many tk's again
I hope the next update of OMV will correct this problem.
11-06-2017, 01:42 PM
(This post was last modified: 11-06-2017, 01:43 PM by digitaldaz.)
@totomtom, credit to rontant for this, it was him that provided me the fix. I have weeks of uptime now, five rock64, none have crashed since.
|