Ich möchte das dann hier zum Abschluss bringen, das NAS ist heute zusammengebaut worden. Hier zwei Fotos.
IMG_20200425_102156_ergebnis.jpg
IMG_20200425_102206_ergebnis.jpg
Ich habe mir mal o.g. USB 3.1 Stick mit 128GB besorgt. Produktlink
Ein Laufwerk mit integriertem SSD-Controller und einem NAND-Speicher in SSD-Qualität.
Das sollte jetzt endlich mal für ordentliche Transferraten am USB 3.0 Bus des ROCKPro64 sorgen.
Achtung! Das Problem, wenn man den u-boot in den SPI-Flash geschrieben hat, das nicht von allen Laufwerken gebootet (USB3) besteht immer noch. Auch dieser Stick ließ sich nur mit einem aktiven Hub zum Laufen bekommen !!
An meinem aktiven Hub, gibt es Steckplätze, da ist der Stick sofort aktiv (blaue LED) an. Wenn man dann den ROCKPro64 bootet, wird er sofort erkannt. Wenn der Stick in der USB3-Buchse des ROCKPro64 steckt, wird er für mich, zu spät initialisiert. Bis der betriebsbereit ist, hat der u-boot schon alles gescannt und nix gefunden. Sieht also primär, nach einem Timingproblem aus.
Ok, also auf den Stick ein Image gebügelt.
rock64@rockpro64:~$ uname -a
Linux rockpro64 4.4.132-1075-rockchip-ayufan-ga83beded8524 #1 SMP Thu Jul 26 08:22:22 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
rock64@rockpro64:~$ dmesg | grep -E "usb 4.1.1"
[ 3.495435] usb 4-1.1: new SuperSpeed USB device number 3 using xhci-hcd
[ 3.519860] usb 4-1.1: New USB device found, idVendor=1b1c, idProduct=1a0e
[ 3.532552] usb 4-1.1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 3.545381] usb 4-1.1: Product: Voyager GTX
[ 3.557813] usb 4-1.1: Manufacturer: Corsair
[ 3.567008] usb 4-1.1: SerialNumber: 511180710xxxxxxxxxxxx
rock64@rockpro64:~$ sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
[sudo] password for rock64:
Iozone: Performance Test of File I/O
Version $Revision: 3.429 $
Compiled for 64 bit mode.
Build: linux
Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
Al Slater, Scott Rhine, Mike Wisner, Ken Goss
Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner,
Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone,
Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root,
Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer,
Vangel Bojaxhi, Ben England, Vikentsi Lapa.
Run began: Tue Sep 18 12:18:17 2018
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
Output is in kBytes/sec
Time Resolution = 0.000001 seconds.
Processor cache size set to 1024 kBytes.
Processor cache line size set to 32 bytes.
File stride size set to 17 * record size.
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
102400 4 15596 15146 19887 20901 16211 18342
102400 16 46891 51077 56324 66889 45947 50946
102400 512 213597 210423 216991 217563 192000 241137
102400 1024 263867 289778 253415 254285 221907 250628
102400 16384 374339 386120 341601 349859 335017 381813
iozone test complete.
rock64@rockpro64:~$ sudo dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync
4096+0 records in
4096+0 records out
4294967296 bytes (4.3 GB, 4.0 GiB) copied, 12.7775 s, 336 MB/s
rock64@rockpro64:~$ sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
[sudo] password for rock64:
Iozone: Performance Test of File I/O
Version $Revision: 3.429 $
Compiled for 64 bit mode.
Build: linux
Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
Al Slater, Scott Rhine, Mike Wisner, Ken Goss
Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner,
Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone,
Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root,
Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer,
Vangel Bojaxhi, Ben England, Vikentsi Lapa.
Run began: Tue Sep 18 12:44:44 2018
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
Output is in kBytes/sec
Time Resolution = 0.000001 seconds.
Processor cache size set to 1024 kBytes.
Processor cache line size set to 32 bytes.
File stride size set to 17 * record size.
random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
102400 4 13943 14367 25576 26474 13929 15104
102400 16 39658 68067 75224 75338 56681 65880
102400 512 237781 222640 223886 225086 196655 249815
102400 1024 279730 300219 263082 265369 227415 258090
102400 16384 398487 394323 343181 351404 331389 399738
iozone test complete.
rock64@rockpro64:~$ sudo dd if=/dev/zero of=sd.img bs=1M count=4096 conv=fdatasync
4096+0 records in
4096+0 records out
4294967296 bytes (4.3 GB, 4.0 GiB) copied, 12.6163 s, 340 MB/s
Mit 4.18 bootete das System nicht mehr. Siehe log
[ 3.847940] usb 8-1: new SuperSpeed Gen 1 USB device number 2 using xhci-hcd
[ 3.895147] hub 8-1:1.0: USB hub found
[ 3.895345] hub 8-1:1.0: 4 ports detected
[ 3.911572] Console: switching to colour frame buffer device 240x67
[ 3.944993] rockchip-drm display-subsystem: fb0: frame buffer device
[ 3.960062] [drm] Initialized rockchip 1.0.0 20140818 for display-subsystem 0
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
[ 4.771874] usb 8-1.1: new SuperSpeed Gen 1 USB device number 3 using xhci-hd
[ 4.812501] scsi host0: uas
[ 4.813366] scsi 0:0:0:0: Direct-Access Corsair Voyager GTX 0 P6
[ 4.815496] sd 0:0:0:0: [sda] 250069680 512-byte logical blocks: (128 GB/119)
[ 4.816013] usbcore: registered new interface driver uas
Begin: Waiting for root file system ... Begin: Running /scripts/local-block ....
done.
[ 35.847771] sd 0:0:0:0: tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD
[ 35.848629] sd 0:0:0:0: tag#0 CDB: opcode=0x1a 1a 00 3f 00 04 00
[ 35.879754] scsi host0: uas_eh_device_reset_handler start
[ 35.880374] xhci-hcd xhci-hcd.1.auto: ERROR Transfer event for unknown strea6
[ 35.881295] xhci-hcd xhci-hcd.1.auto: @00000000f7116cc0 00000000 00000000 1b1
[ 35.960011] usb 8-1.1: reset SuperSpeed Gen 1 USB device number 3 using xhcid
[ 35.981852] scsi host0: uas_eh_device_reset_handler success
[ 35.991856] sd 0:0:0:0: [sda] Write Protect is off
[ 35.992596] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doeA
[ 35.993685] xhci-hcd xhci-hcd.1.auto: ERROR Transfer event for unknown strea2
[ 35.994604] xhci-hcd xhci-hcd.1.auto: @00000000f7116000 00000000 00000000 1b0
[ 36.000045] sda: sda1 sda2 sda3 sda4 sda5 sda6 sda7
[ 36.003398] sd 0:0:0:0: [sda] Attached SCSI disk
Gave up waiting for root file system device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! LABEL=linux-root does not exist. Dropping to a shell!
Rebooting automatically due to panic= boot argument
Gut, das sieht schon mal recht viel versprechend aus. Das kann man dann gut als Systemplatte für den ROCKPro64 benutzen. Im Moment leider nur für 4.4.x
Der Stick stürzt ab und es kommt zu massenweisen Einträgen ala "Failed to write entry......" Ok, USB3 bleibt eine große Baustelle.
Mir ist da heute noch eine Idee gekommen und ich habe mal ein existierendes 4.18.x Image auf den USB-Stick kopiert.
Danach den ROCKPro64 mit dem USB-Stick gebootet (aktiver Hub), das gab wieder ein paar Probleme. Aber irgendwo stand was von "bad cable...", ok Kabel getauscht (kürzer). Und nun ging es, er tat sich am Anfang was schwer, hat ein paar eigenständige Reboots gemacht. Aber letztendlich startete er irgendwann.
[ 3.895054] usb 8-1: new SuperSpeed Gen 1 USB device number 2 using xhci-hcd
[ 4.822978] usb 8-1.1: new SuperSpeed Gen 1 USB device number 3 using xhci-hcd
[ 4.869947] usbcore: registered new interface driver uas
Danach habe ich mal für ein wenig Stress gesorgt. https://forum.frank-mankel.org/topic/282/stable-4-18-7-kernel-mit-hardware-crypto-speedup/8
Aber, das lief gut. Keine besonderen Vorkommnisse.
Nachdem ich den kernel 4.18.8 fertig hatte, habe ich dann neugestartet. Dann muss man viel geduld haben und nichts machen. Irgendwann kommt man dann zum Login.
rock64@rockpro64v_2_1:~$ uname -a
Linux rockpro64v_2_1 4.18.8-77394-g8cce48cacf88 #1 SMP PREEMPT Wed Sep 19 16:48:35 CEST 2018 aarch64 aarch64 aarch64 GNU/Linux
[ 4.872954] xhci-hcd xhci-hcd.1.auto: ERROR Transfer event for unknown stream ring slot 4 ep 2
[ 4.874046] xhci-hcd xhci-hcd.1.auto: @00000000f7116be0 00000000 00000000 1b000000 04038001
[ 6.043271] xhci-hcd xhci-hcd.1.auto: ERROR Transfer event for unknown stream ring slot 4 ep 2
[ 6.044195] xhci-hcd xhci-hcd.1.auto: @00000000f7116920 00000000 00000000 1b000000 04038000
[ 9.656762] xhci-hcd xhci-hcd.1.auto: ERROR Transfer event for unknown stream ring slot 4 ep 3
[ 9.657686] xhci-hcd xhci-hcd.1.auto: @00000000f7116180 00000000 00000000 1b000000 04048001
Für die Profis, hier zwei pastebin, vielleicht hilft es!