ARMv8 hardware crypto acceleration

There are two kinds of builders:

3 Likes

The fix has been pushed to master in d55f12c.
It should be a little less than 10 hours before every target has been rebuilt. The grid view is a good way to check the progress.

This has been committed to 22.03, so there should be an rc4 with it shortly.

4 Likes

Well, one step forward, two steps back? :sweat_smile:

Images for master-snapshot and 22.03-snapshot will now be generated by the imagebuilder. I still can't seem to run the WolfSSL benchmark. Can you verify to command to run, just to be sure?

But bigger problem, images from master-snapshot no longer boot. 22.03-snapshot boots as expected.

Master-snapshot serial output:

U-Boot SPL 2020.04-OpenWrt-r19783-2a07270180 (Jun 09 2022 - 15:14:28 +0000)
DRAM: 512 MiB
Trying to boot from MMC1
NOTICE:  BL31: v2.4(release):reboot-19783-g2a07270180
NOTICE:  BL31: Built : 15:14:28, Jun  9 2022
NOTICE:  BL31: Detected Allwinner H5 SoC (1718)
NOTICE:  BL31: Found U-Boot DTB at 0x408b2f8, model: Xunlong Orange Pi Zero Plus
NOTICE:  PMIC: Assuming H5 reference regulator design
NOTICE:  PSCI: System suspend is unavailable


U-Boot 2020.04-OpenWrt-r19783-2a07270180 (Jun 09 2022 - 15:14:28 +0000) Allwinne                                                                                                                                                             r Technology

CPU:   Allwinner H5 (SUN50I)
Model: Xunlong Orange Pi Zero Plus
DRAM:  512 MiB
MMC:   mmc@1c0f000: 0, mmc@1c10000: 1
Loading Environment from FAT... *** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   phy interface7
Could not get PHY for ethernet@1c30000: addr 1
No ethernet found.

starting USB...
Bus usb@1c1a000: USB EHCI 1.00
Bus usb@1c1a400: USB OHCI 1.0
Bus usb@1c1b000: USB EHCI 1.00
Bus usb@1c1b400: USB OHCI 1.0
scanning bus usb@1c1a000 for devices... 1 USB Device(s) found
scanning bus usb@1c1a400 for devices... 1 USB Device(s) found
scanning bus usb@1c1b000 for devices... 1 USB Device(s) found
scanning bus usb@1c1b400 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot.scr
482 bytes read in 1 ms (470.7 KiB/s)
## Executing script at 4fc00000
12257288 bytes read in 1016 ms (11.5 MiB/s)
20751 bytes read in 4 ms (4.9 MiB/s)
## Flattened Device Tree blob at 4fa00000
   Booting using the fdt blob at 0x4fa00000
EHCI failed to shut down host controller.
   Loading Device Tree to 0000000049ff7000, end 0000000049fff10e ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.10.120 (builder@buildhost) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 11.3.0 r19783-2a07270180) 11.3.0, GNU ld (GNU Binutils) 2.37) #0 SMP Thu Jun 9 15:14:28 2022
[    0.000000] Machine model: Xunlong Orange Pi Zero Plus
[    0.000000] earlycon: uart0 at MMIO32 0x0000000001c28000 (options '')
[    0.000000] printk: bootconsole [uart0] enabled
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000040000000-0x000000005fffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000040000000-0x000000005fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000005fffffff]
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.2
[    0.000000] percpu: Embedded 20 pages/cpu s44824 r8192 d28904 u81920
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 129024
[    0.000000] Kernel command line: console=ttyS0,115200 earlyprintk root=PARTUUID=5452574f-02 rootwait earlycon=uart,mmio32,0x01c28000
[    0.000000] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 493304K/524288K available (7998K kernel code, 1218K rwdata, 2260K rodata, 448K init, 313K bss, 30984K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000005] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.008145] Console: colour dummy device 80x25
[    0.012619] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.022965] pid_max: default: 32768 minimum: 301
[    0.027706] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.035015] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.044348] rcu: Hierarchical SRCU implementation.
[    0.049319] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build
[    0.057302] smp: Bringing up secondary CPUs ...
[    0.062820] Detected VIPT I-cache on CPU1
[    0.062889] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.063532] Detected VIPT I-cache on CPU2
[    0.063568] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.064163] Detected VIPT I-cache on CPU3
[    0.064196] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.064264] smp: Brought up 1 node, 4 CPUs
[    0.099915] SMP: Total of 4 processors activated.
[    0.104611] CPU features: detected: 32-bit EL0 Support
[    0.109746] CPU features: detected: CRC32 instructions
[    0.114917] CPU features: emulated: Privileged Access Never (PAN) using TTBR0_EL1 switching
[    0.123262] CPU: All CPU(s) started at EL2
[    0.127365] alternatives: patching kernel code
[    0.136691] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.146556] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.153616] pinctrl core: initialized pinctrl subsystem
[    0.160269] NET: Registered protocol family 16
[    0.165236] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[    0.172328] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.180089] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.188592] thermal_sys: Registered thermal governor 'step_wise'
[    0.189208] ASID allocator initialised with 65536 entries
[    0.221694] cryptd: max_cpu_qlen set to 1000
[    0.228284] SCSI subsystem initialized
[    0.232567] usbcore: registered new interface driver usbfs
[    0.238105] usbcore: registered new interface driver hub
[    0.243483] usbcore: registered new device driver usb
[    0.248878] pps_core: LinuxPPS API ver. 1 registered
[    0.253892] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.263029] PTP clock support registered
[    0.267274] Advanced Linux Sound Architecture Driver Initialized.
[    0.274664] clocksource: Switched to clocksource arch_sys_counter
[    0.285830] NET: Registered protocol family 2
[    0.290422] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.298396] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.306778] TCP established hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.314549] TCP bind hash table entries: 4096 (order: 4, 65536 bytes, linear)
[    0.321767] TCP: Hash tables configured (established 4096 bind 4096)
[    0.328237] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.334794] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.341911] NET: Registered protocol family 1
[    0.350102] workingset: timestamp_bits=46 max_order=17 bucket_order=0
[    0.361038] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.366977] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.377770] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
[    0.385994] sun4i-usb-phy 1c19400.phy: Couldn't request ID GPIO
[    0.394765] sun8i-h3-r-pinctrl 1f02c00.pinctrl: initialized sunXi PIO driver
[    0.405385] sun50i-h5-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[    0.418652] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.427542] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pa not found, using dummy regulator
[    0.436549] printk: console [ttyS0] disabled
[    0.460974] 1c28000.serial: ttyS0 at MMIO 0x1c28000 (irq = 32, base_baud = 1500000) is a U6_16550A
[    0.469966] printk: console [ttyS0] enabled
[    0.469966] printk: console [ttyS0] enabled
[    0.478321] printk: bootconsole [uart0] disabled
[    0.478321] printk: bootconsole [uart0] disabled
[    0.488643] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    0.498560] loop: module loaded
[    0.502025] Loading iSCSI transport class v2.0-870.
[    0.508372] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pc not found, using dummy regulator
[    0.517905] spi-nor spi0.0: mx25l1606e (2048 Kbytes)
[    0.526427] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pd not found, using dummy regulator
[    0.535258] dwmac-sun8i 1c30000.ethernet: IRQ eth_wake_irq not found
[    0.541613] dwmac-sun8i 1c30000.ethernet: IRQ eth_lpi not found
[    0.548605] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.555155] ehci-platform: EHCI generic platform driver
[    0.560596] ehci-platform 1c1a000.usb: EHCI Host Controller
[    0.566203] ehci-platform 1c1a000.usb: new USB bus registered, assigned bus number 1
[    0.574054] ehci-platform 1c1a000.usb: irq 20, io mem 0x01c1a000
[    0.604669] ehci-platform 1c1a000.usb: USB 2.0 started, EHCI 1.00
[    0.610913] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10
[    0.619184] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.626404] usb usb1: Product: EHCI Host Controller
[    0.631275] usb usb1: Manufacturer: Linux 5.10.120 ehci_hcd
[    0.636850] usb usb1: SerialNumber: 1c1a000.usb
[    0.641772] hub 1-0:1.0: USB hub found
[    0.645563] hub 1-0:1.0: 1 port detected
[    0.650134] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    0.656348] ohci-platform: OHCI generic platform driver
[    0.661736] ohci-platform 1c1a400.usb: Generic Platform OHCI controller
[    0.668373] ohci-platform 1c1a400.usb: new USB bus registered, assigned bus number 2
[    0.676228] ohci-platform 1c1a400.usb: irq 21, io mem 0x01c1a400
[    0.748796] usb usb2: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.10
[    0.757062] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.764275] usb usb2: Product: Generic Platform OHCI controller
[    0.770196] usb usb2: Manufacturer: Linux 5.10.120 ohci_hcd
[    0.775770] usb usb2: SerialNumber: 1c1a400.usb
[    0.780650] hub 2-0:1.0: USB hub found
[    0.784423] hub 2-0:1.0: 1 port detected
[    0.789066] usbcore: registered new interface driver usb-storage
[    0.795613] mousedev: PS/2 mouse device common for all mice
[    0.802161] sun6i-rtc 1f00000.rtc: registered as rtc0
[    0.807254] sun6i-rtc 1f00000.rtc: hctosys: unable to read the hardware clock
[    0.814380] sun6i-rtc 1f00000.rtc: RTC enabled
[    0.818971] i2c /dev entries driver
[    0.823497] sunxi-wdt 1c20ca0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
[    0.832129] sun8i-h3-r-pinctrl 1f02c00.pinctrl: supply vcc-pl not found, using dummy regulator
[    0.832142] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pf not found, using dummy regulator
[    0.841867] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pg not found, using dummy regulator
[    0.852630] NET: Registered protocol family 10
[    0.858256] sunxi-mmc 1c0f000.mmc: Got CD GPIO
[    0.864693] Segment Routing with IPv6
[    0.870610] NET: Registered protocol family 17
[    0.875152] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    0.883702] sunxi-mmc 1c10000.mmc: initialized, max. request size: 16384 KB, uses new timings mode
[    0.888095] can: controller area network core
[    0.888149] NET: Registered protocol family 29
[    0.892369] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB, uses new timings mode
[    0.914800] 8021q: 802.1Q VLAN Support v1.8
[    0.927140] mmc1: new high speed SDIO card at address 0001
[    0.927552] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pd not found, using dummy regulator
[    0.942239] mmc0: host does not support reading read-only switch, assuming write-enable
[    0.942984] dwmac-sun8i 1c30000.ethernet: IRQ eth_wake_irq not found
[    0.950409] mmc0: new SD card at address 91c2
[    0.956621] dwmac-sun8i 1c30000.ethernet: IRQ eth_lpi not found
[    0.961833] mmcblk0: mmc0:91c2 SU02G 1.84 GiB
[    0.967204] dwmac-sun8i 1c30000.ethernet: PTP uses main clock
[    0.972869]  mmcblk0: p1 p2
[    0.977091] dwmac-sun8i 1c30000.ethernet: Current syscon value is not the default 50006 (expect 58000)
[    1.104845] dwmac-sun8i 1c30000.ethernet: No HW DMA feature register supported
[    1.112070] dwmac-sun8i 1c30000.ethernet: RX Checksum Offload Engine supported
[    1.119300] dwmac-sun8i 1c30000.ethernet: COE Type 2
[    1.124257] dwmac-sun8i 1c30000.ethernet: TX Checksum insertion supported
[    1.131044] dwmac-sun8i 1c30000.ethernet: Normal descriptors
[    1.136702] dwmac-sun8i 1c30000.ethernet: Chain mode enabled
[    1.144175] dwmac-sun8i 1c30000.ethernet: Found internal PHY node
[    1.150762] dwmac-sun8i 1c30000.ethernet: Switch mux to internal PHY
[    1.157133] dwmac-sun8i 1c30000.ethernet: Powering internal PHY
[    1.164158] dwmac-sun8i 1c30000.ethernet: Switch mux to external PHY
[    1.172227] ehci-platform 1c1b000.usb: EHCI Host Controller
[    1.177837] ehci-platform 1c1b000.usb: new USB bus registered, assigned bus number 3
[    1.185702] ehci-platform 1c1b000.usb: irq 22, io mem 0x01c1b000
[    1.214661] ehci-platform 1c1b000.usb: USB 2.0 started, EHCI 1.00
[    1.220904] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10
[    1.229174] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.236394] usb usb3: Product: EHCI Host Controller
[    1.241266] usb usb3: Manufacturer: Linux 5.10.120 ehci_hcd
[    1.246838] usb usb3: SerialNumber: 1c1b000.usb
[    1.251741] hub 3-0:1.0: USB hub found
[    1.255526] hub 3-0:1.0: 1 port detected
[    1.260368] ohci-platform 1c1b400.usb: Generic Platform OHCI controller
[    1.267010] ohci-platform 1c1b400.usb: new USB bus registered, assigned bus number 4
[    1.274864] ohci-platform 1c1b400.usb: irq 23, io mem 0x01c1b400
[    1.348806] usb usb4: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.10
[    1.357072] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.364284] usb usb4: Product: Generic Platform OHCI controller
[    1.370203] usb usb4: Manufacturer: Linux 5.10.120 ohci_hcd
[    1.375773] usb usb4: SerialNumber: 1c1b400.usb
[    1.380662] hub 4-0:1.0: USB hub found
[    1.384435] hub 4-0:1.0: 1 port detected
[    1.389349] usb_phy_generic usb_phy_generic.1.auto: supply vcc not found, using dummy regulator
[    1.398187] usb_phy_generic usb_phy_generic.1.auto: dummy supplies not allowed for exclusive requests
[    1.410162] ALSA device list:
[    1.413141]   No soundcards found.
[    1.426680] VFS: Mounted root (squashfs filesystem) readonly on device 179:2.
[    1.434114] Freeing unused kernel memory: 448K
[    1.484804] Run /sbin/init as init process
[    1.740305] init: Console is alive
[    1.743883] init: - watchdog -
[    1.883794] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    1.902418] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    1.918873] init: - preinit -
[    2.466403] random: jshn: uninitialized urandom read (4 bytes read)
[    2.500949] random: jshn: uninitialized urandom read (4 bytes read)
[    2.518844] random: jshn: uninitialized urandom read (4 bytes read)
[    2.600867] dwmac-sun8i 1c30000.ethernet eth0: PHY [0.2:01] driver [RTL8211E Gigabit Ethernet] (irq=POLL)
[    2.611337] dwmac-sun8i 1c30000.ethernet eth0: No Safety Features support found
[    2.618650] dwmac-sun8i 1c30000.ethernet eth0: No MAC Management Counters available
[    2.626303] dwmac-sun8i 1c30000.ethernet eth0: PTP not supported by HW
[    2.634639] dwmac-sun8i 1c30000.ethernet eth0: configuring for phy/rgmii-id link mode
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    4.695487] dwmac-sun8i 1c30000.ethernet eth0: Link is Up - 10Mbps/Full - flow control off
[    4.703802] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[    5.735122] dwmac-sun8i 1c30000.ethernet eth0: Link is Down
[    7.459702] F2FS-fs (loop0): Mounted with checkpoint version = 5ccce289
[    7.467234] mount_root: switching to f2fs overlay
[    7.473031] overlayfs: "xino" feature enabled using 32 upper inode bits.
[    7.568093] urandom-seed: Seeding with /etc/urandom.seed
[    7.675564] procd: - early -
[    7.678542] procd: - watchdog -
[    8.273534] procd: - watchdog -
[    8.277270] procd: - ubus -
[    8.315736] urandom_read_iter: 5 callbacks suppressed
[    8.315743] random: ubusd: uninitialized urandom read (4 bytes read)
[    8.330355] random: ubusd: uninitialized urandom read (4 bytes read)
[    8.340243] random: ubusd: uninitialized urandom read (4 bytes read)
[    8.348340] procd: - init -
Please press Enter to activate this console.
[    8.673706] urngd: v1.0.2 started.
[    8.692997] kmodloader: loading kernel modules from /etc/modules.d/*
[    8.714132] random: crng init done
[    8.717592] random: 21 urandom warning(s) missed due to ratelimiting
[    8.749928] kmodloader: done loading kernel modules from /etc/modules.d/*
[   11.934410] dwmac-sun8i 1c30000.ethernet eth0: PHY [0.2:01] driver [RTL8211E Gigabit Ethernet] (irq=POLL)
[   11.945098] dwmac-sun8i 1c30000.ethernet eth0: No Safety Features support found
[   11.952420] dwmac-sun8i 1c30000.ethernet eth0: No MAC Management Counters available
[   11.960210] dwmac-sun8i 1c30000.ethernet eth0: PTP not supported by HW
[   11.966845] dwmac-sun8i 1c30000.ethernet eth0: configuring for phy/rgmii-id link mode
[   16.135470] dwmac-sun8i 1c30000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[   16.143861] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

I doubt it has anything to do with WolfSSL, seems to be related to initialization of the ethernet interface (this device has had some issues with that in the past).

For reference, 22.03-snapshot serial output (didn't fit in a single post)

U-Boot SPL 2020.04-OpenWrt-r19424-3b90edaff9 (Jun 09 2022 - 00:53:00 +0000)
DRAM: 512 MiB
Trying to boot from MMC1
NOTICE:  BL31: v2.4(release):v22.03.0-rc3-45-g3b90edaff9
NOTICE:  BL31: Built : 00:53:00, Jun  9 2022
NOTICE:  BL31: Detected Allwinner H5 SoC (1718)
NOTICE:  BL31: Found U-Boot DTB at 0x408b2f0, model: Xunlong Orange Pi Zero Plus
NOTICE:  PMIC: Assuming H5 reference regulator design
NOTICE:  PSCI: System suspend is unavailable


U-Boot 2020.04-OpenWrt-r19424-3b90edaff9 (Jun 09 2022 - 00:53:00 +0000) Allwinner Technology

CPU:   Allwinner H5 (SUN50I)
Model: Xunlong Orange Pi Zero Plus
DRAM:  512 MiB
MMC:   mmc@1c0f000: 0, mmc@1c10000: 1
Loading Environment from FAT... *** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   phy interface7
Could not get PHY for ethernet@1c30000: addr 1
No ethernet found.

starting USB...
Bus usb@1c1a000: USB EHCI 1.00
Bus usb@1c1a400: USB OHCI 1.0
Bus usb@1c1b000: USB EHCI 1.00
Bus usb@1c1b400: USB OHCI 1.0
scanning bus usb@1c1a000 for devices... 1 USB Device(s) found
scanning bus usb@1c1a400 for devices... 1 USB Device(s) found
scanning bus usb@1c1b000 for devices... 1 USB Device(s) found
scanning bus usb@1c1b400 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot.scr
482 bytes read in 2 ms (235.4 KiB/s)
## Executing script at 4fc00000
11460616 bytes read in 950 ms (11.5 MiB/s)
20751 bytes read in 4 ms (4.9 MiB/s)
## Flattened Device Tree blob at 4fa00000
   Booting using the fdt blob at 0x4fa00000
EHCI failed to shut down host controller.
   Loading Device Tree to 0000000049ff7000, end 0000000049fff10e ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.10.120 (builder@buildhost) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 11.2.0 r19424-3b90edaff9) 11.2.0, GNU ld (GNU Binutils) 2.37) #0 SMP Thu Jun 9 00:53:00 2022
[    0.000000] Machine model: Xunlong Orange Pi Zero Plus
[    0.000000] earlycon: uart0 at MMIO32 0x0000000001c28000 (options '')
[    0.000000] printk: bootconsole [uart0] enabled
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000040000000-0x000000005fffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000040000000-0x000000005fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000005fffffff]
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.2
[    0.000000] percpu: Embedded 20 pages/cpu s44824 r8192 d28904 u81920
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 129024
[    0.000000] Kernel command line: console=ttyS0,115200 earlyprintk root=PARTUUID=5452574f-02 rootwait earlycon=uart,mmio32,0x01c28000
[    0.000000] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 494132K/524288K available (7998K kernel code, 1208K rwdata, 1480K rodata, 448K init, 315K bss, 30156K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000006] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.008145] Console: colour dummy device 80x25
[    0.012619] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.022964] pid_max: default: 32768 minimum: 301
[    0.027700] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.035009] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.044348] rcu: Hierarchical SRCU implementation.
[    0.049331] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build
[    0.057307] smp: Bringing up secondary CPUs ...
[    0.062821] Detected VIPT I-cache on CPU1
[    0.062886] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.063533] Detected VIPT I-cache on CPU2
[    0.063569] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.064164] Detected VIPT I-cache on CPU3
[    0.064198] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.064265] smp: Brought up 1 node, 4 CPUs
[    0.099920] SMP: Total of 4 processors activated.
[    0.104616] CPU features: detected: 32-bit EL0 Support
[    0.109752] CPU features: detected: CRC32 instructions
[    0.114924] CPU features: emulated: Privileged Access Never (PAN) using TTBR0_EL1 switching
[    0.123270] CPU: All CPU(s) started at EL2
[    0.127374] alternatives: patching kernel code
[    0.136515] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.146372] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.153449] pinctrl core: initialized pinctrl subsystem
[    0.160094] NET: Registered protocol family 16
[    0.165037] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[    0.172129] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.179891] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.188371] thermal_sys: Registered thermal governor 'step_wise'
[    0.188966] ASID allocator initialised with 65536 entries
[    0.223651] SCSI subsystem initialized
[    0.227893] usbcore: registered new interface driver usbfs
[    0.233456] usbcore: registered new interface driver hub
[    0.238796] usbcore: registered new device driver usb
[    0.244152] pps_core: LinuxPPS API ver. 1 registered
[    0.249111] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.258258] PTP clock support registered
[    0.262479] Advanced Linux Sound Architecture Driver Initialized.
[    0.269528] clocksource: Switched to clocksource arch_sys_counter
[    0.280600] NET: Registered protocol family 2
[    0.285135] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.293380] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.301749] TCP established hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.309531] TCP bind hash table entries: 4096 (order: 4, 65536 bytes, linear)
[    0.316736] TCP: Hash tables configured (established 4096 bind 4096)
[    0.323208] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.329779] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.336949] NET: Registered protocol family 1
[    0.342739] workingset: timestamp_bits=46 max_order=17 bucket_order=0
[    0.353310] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.359231] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.370645] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
[    0.378844] sun4i-usb-phy 1c19400.phy: Couldn't request ID GPIO
[    0.387544] sun8i-h3-r-pinctrl 1f02c00.pinctrl: initialized sunXi PIO driver
[    0.398000] sun50i-h5-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[    0.411215] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.420076] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pa not found, using dummy regulator
[    0.429050] printk: console [ttyS0] disabled
[    0.453490] 1c28000.serial: ttyS0 at MMIO 0x1c28000 (irq = 32, base_baud = 1500000) is a U6_16550A
[    0.462480] printk: console [ttyS0] enabled
[    0.462480] printk: console [ttyS0] enabled
[    0.470837] printk: bootconsole [uart0] disabled
[    0.470837] printk: bootconsole [uart0] disabled
[    0.481151] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    0.491371] loop: module loaded
[    0.494836] Loading iSCSI transport class v2.0-870.
[    0.501043] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pc not found, using dummy regulator
[    0.510962] spi-nor spi0.0: mx25l1606e (2048 Kbytes)
[    0.519463] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pd not found, using dummy regulator
[    0.528232] dwmac-sun8i 1c30000.ethernet: IRQ eth_wake_irq not found
[    0.534623] dwmac-sun8i 1c30000.ethernet: IRQ eth_lpi not found
[    0.542054] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.548586] ehci-platform: EHCI generic platform driver
[    0.554020] ehci-platform 1c1a000.usb: EHCI Host Controller
[    0.559620] ehci-platform 1c1a000.usb: new USB bus registered, assigned bus number 1
[    0.567465] ehci-platform 1c1a000.usb: irq 20, io mem 0x01c1a000
[    0.599637] ehci-platform 1c1a000.usb: USB 2.0 started, EHCI 1.00
[    0.605877] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10
[    0.614145] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.621372] usb usb1: Product: EHCI Host Controller
[    0.626245] usb usb1: Manufacturer: Linux 5.10.120 ehci_hcd
[    0.631819] usb usb1: SerialNumber: 1c1a000.usb
[    0.636730] hub 1-0:1.0: USB hub found
[    0.640524] hub 1-0:1.0: 1 port detected
[    0.645089] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    0.651304] ohci-platform: OHCI generic platform driver
[    0.656693] ohci-platform 1c1a400.usb: Generic Platform OHCI controller
[    0.663331] ohci-platform 1c1a400.usb: new USB bus registered, assigned bus number 2
[    0.671186] ohci-platform 1c1a400.usb: irq 21, io mem 0x01c1a400
[    0.743677] usb usb2: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.10
[    0.751943] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.759156] usb usb2: Product: Generic Platform OHCI controller
[    0.765075] usb usb2: Manufacturer: Linux 5.10.120 ohci_hcd
[    0.770648] usb usb2: SerialNumber: 1c1a400.usb
[    0.775516] hub 2-0:1.0: USB hub found
[    0.779290] hub 2-0:1.0: 1 port detected
[    0.783935] usbcore: registered new interface driver usb-storage
[    0.790476] mousedev: PS/2 mouse device common for all mice
[    0.797046] sun6i-rtc 1f00000.rtc: registered as rtc0
[    0.802130] sun6i-rtc 1f00000.rtc: hctosys: unable to read the hardware clock
[    0.809257] sun6i-rtc 1f00000.rtc: RTC enabled
[    0.813841] i2c /dev entries driver
[    0.818373] sunxi-wdt 1c20ca0.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
[    0.827008] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pf not found, using dummy regulator
[    0.827021] sun8i-h3-r-pinctrl 1f02c00.pinctrl: supply vcc-pl not found, using dummy regulator
[    0.827062] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pg not found, using dummy regulator
[    0.852112] sunxi-mmc 1c10000.mmc: initialized, max. request size: 16384 KB, uses new timings mode
[    0.852852] sunxi-mmc 1c0f000.mmc: Got CD GPIO
[    0.861510] NET: Registered protocol family 10
[    0.863406] Segment Routing with IPv6
[    0.874316] NET: Registered protocol family 17
[    0.878819] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    0.889725] sunxi-mmc 1c0f000.mmc: initialized, max. request size: 16384 KB, uses new timings mode
[    0.891774] can: controller area network core
[    0.905132] NET: Registered protocol family 29
[    0.909592] 8021q: 802.1Q VLAN Support v1.8
[    0.922377] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pd not found, using dummy regulator
[    0.932940] dwmac-sun8i 1c30000.ethernet: IRQ eth_wake_irq not found
[    0.939313] dwmac-sun8i 1c30000.ethernet: IRQ eth_lpi not found
[    0.945576] dwmac-sun8i 1c30000.ethernet: PTP uses main clock
[    0.951360] dwmac-sun8i 1c30000.ethernet: Current syscon value is not the default 50006 (expect 58000)
[    0.964084] mmc0: new high speed SDIO card at address 0001
[    0.987728] mmc1: host does not support reading read-only switch, assuming write-enable
[    0.995910] mmc1: new SD card at address 91c2
[    1.001081] mmcblk1: mmc1:91c2 SU02G 1.84 GiB
[    1.006924]  mmcblk1: p1 p2
[    1.079704] dwmac-sun8i 1c30000.ethernet: No HW DMA feature register supported
[    1.086927] dwmac-sun8i 1c30000.ethernet: RX Checksum Offload Engine supported
[    1.094159] dwmac-sun8i 1c30000.ethernet: COE Type 2
[    1.099118] dwmac-sun8i 1c30000.ethernet: TX Checksum insertion supported
[    1.105906] dwmac-sun8i 1c30000.ethernet: Normal descriptors
[    1.111565] dwmac-sun8i 1c30000.ethernet: Chain mode enabled
[    1.118943] dwmac-sun8i 1c30000.ethernet: Found internal PHY node
[    1.125525] dwmac-sun8i 1c30000.ethernet: Switch mux to internal PHY
[    1.131898] dwmac-sun8i 1c30000.ethernet: Powering internal PHY
[    1.138879] dwmac-sun8i 1c30000.ethernet: Switch mux to external PHY
[    1.146940] ehci-platform 1c1b000.usb: EHCI Host Controller
[    1.152556] ehci-platform 1c1b000.usb: new USB bus registered, assigned bus number 3
[    1.160414] ehci-platform 1c1b000.usb: irq 22, io mem 0x01c1b000
[    1.189531] ehci-platform 1c1b000.usb: USB 2.0 started, EHCI 1.00
[    1.195771] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10
[    1.204032] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.211256] usb usb3: Product: EHCI Host Controller
[    1.216128] usb usb3: Manufacturer: Linux 5.10.120 ehci_hcd
[    1.221704] usb usb3: SerialNumber: 1c1b000.usb
[    1.226601] hub 3-0:1.0: USB hub found
[    1.230395] hub 3-0:1.0: 1 port detected
[    1.235228] ohci-platform 1c1b400.usb: Generic Platform OHCI controller
[    1.241878] ohci-platform 1c1b400.usb: new USB bus registered, assigned bus number 4
[    1.249773] ohci-platform 1c1b400.usb: irq 23, io mem 0x01c1b400
[    1.323677] usb usb4: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 5.10
[    1.331948] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.339161] usb usb4: Product: Generic Platform OHCI controller
[    1.345082] usb usb4: Manufacturer: Linux 5.10.120 ohci_hcd
[    1.350657] usb usb4: SerialNumber: 1c1b400.usb
[    1.355534] hub 4-0:1.0: USB hub found
[    1.359307] hub 4-0:1.0: 1 port detected
[    1.364218] usb_phy_generic usb_phy_generic.1.auto: supply vcc not found, using dummy regulator
[    1.373058] usb_phy_generic usb_phy_generic.1.auto: dummy supplies not allowed for exclusive requests
[    1.385069] ALSA device list:
[    1.388050]   No soundcards found.
[    1.401172] VFS: Mounted root (squashfs filesystem) readonly on device 179:2.
[    1.408605] Freeing unused kernel memory: 448K
[    1.489617] Run /sbin/init as init process
[    1.743659] init: Console is alive
[    1.747253] init: - watchdog -
[    1.874708] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    1.893343] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    1.902032] init: - preinit -
[    2.429123] random: jshn: uninitialized urandom read (4 bytes read)
[    2.463791] random: jshn: uninitialized urandom read (4 bytes read)
[    2.481595] random: jshn: uninitialized urandom read (4 bytes read)
[    2.563647] dwmac-sun8i 1c30000.ethernet eth0: PHY [0.2:01] driver [RTL8211E Gigabit Ethernet] (irq=POLL)
[    2.574117] dwmac-sun8i 1c30000.ethernet eth0: No Safety Features support found
[    2.581465] dwmac-sun8i 1c30000.ethernet eth0: No MAC Management Counters available
[    2.589114] dwmac-sun8i 1c30000.ethernet eth0: PTP not supported by HW
[    2.596301] dwmac-sun8i 1c30000.ethernet eth0: configuring for phy/rgmii-id link mode
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    4.680383] dwmac-sun8i 1c30000.ethernet eth0: Link is Up - 10Mbps/Full - flow control off
[    4.688695] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[    5.719988] dwmac-sun8i 1c30000.ethernet eth0: Link is Down
[    6.800943] mount_root: overlay filesystem in /dev/loop0 has not been formatted yet
[    6.942995] urandom_read_iter: 5 callbacks suppressed
[    6.943002] random: mkfs.f2fs: uninitialized urandom read (16 bytes read)
[    8.840368] dwmac-sun8i 1c30000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[   10.082385] F2FS-fs (loop0): Found nat_bits in checkpoint
[   10.101771] F2FS-fs (loop0): Mounted with checkpoint version = 5ccce271
[   10.108933] mount_root: overlay filesystem has not been fully initialized yet
[   10.116534] mount_root: switching to f2fs overlay
[   10.125566] overlayfs: "xino" feature enabled using 32 upper inode bits.
[   10.233543] urandom-seed: Seed file not found (/etc/urandom.seed)
[   10.325794] dwmac-sun8i 1c30000.ethernet eth0: Link is Down
[   10.336654] procd: - early -
[   10.339715] procd: - watchdog -
[   10.929919] procd: - watchdog -
[   10.944819] procd: - ubus -
[   11.019967] random: ubusd: uninitialized urandom read (4 bytes read)
[   11.027429] random: ubusd: uninitialized urandom read (4 bytes read)
[   11.034066] random: ubusd: uninitialized urandom read (4 bytes read)
[   11.041991] procd: - init -
Please press Enter to activate this console.
[   11.352864] kmodloader: loading kernel modules from /etc/modules.d/*
[   11.357600] urngd: v1.0.2 started.
[   11.401262] random: crng init done
[   11.404680] random: 21 urandom warning(s) missed due to ratelimiting
[   11.417364] kmodloader: done loading kernel modules from /etc/modules.d/*
[   18.529242] dwmac-sun8i 1c30000.ethernet eth0: PHY [0.2:01] driver [RTL8211E Gigabit Ethernet] (irq=POLL)
[   18.540203] dwmac-sun8i 1c30000.ethernet eth0: No Safety Features support found
[   18.547534] dwmac-sun8i 1c30000.ethernet eth0: No MAC Management Counters available
[   18.555266] dwmac-sun8i 1c30000.ethernet eth0: PTP not supported by HW
[   18.561871] dwmac-sun8i 1c30000.ethernet eth0: configuring for phy/rgmii-id link mode
[   18.571111] br-lan: port 1(eth0) entered blocking state
[   18.576356] br-lan: port 1(eth0) entered disabled state
[   18.582078] device eth0 entered promiscuous mode
[   22.760345] dwmac-sun8i 1c30000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[   22.768754] br-lan: port 1(eth0) entered blocking state
[   22.773998] br-lan: port 1(eth0) entered forwarding state
[   22.779653] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready

Comparing your logs, I see two differences:

  • your 22.03 log appears to be the first boot:
mount_root: overlay filesystem in /dev/loop0 has not been formatted yet
  • br-lan does not appear to be setup in master, even though eth0 link is up.

22.03:

IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready

master:

IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

Check if connectivity with eth0 instead of br-lan works.

As for the benchmark, it should be simple enough:

# opkg install libwolfssl-benchmark
Installing libwolfssl-benchmark (5.3.0-stable-7) to root...
Downloading http://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/base/libwolfssl-benchmark_5.3.0-stable-7_aarch64_cortex-a53.ipk
Configuring libwolfssl-benchmark.
# wolfssl-benchmark
------------------------------------------------------------------------------
 wolfSSL version 5.3.0
------------------------------------------------------------------------------
wolfCrypt Benchmark (block bytes 1048576, min 1.0 sec each)
RNG                 90 MB took 1.049 seconds,   85.781 MB/s
AES-128-CBC-enc    685 MB took 1.006 seconds,  681.174 MB/s
AES-128-CBC-dec    645 MB took 1.003 seconds,  643.004 MB/s
AES-192-CBC-enc    610 MB took 1.005 seconds,  606.780 MB/s
AES-192-CBC-dec    595 MB took 1.005 seconds,  591.882 MB/s
AES-256-CBC-enc    555 MB took 1.008 seconds,  550.760 MB/s
AES-256-CBC-dec    525 MB took 1.001 seconds,  524.363 MB/s
AES-128-GCM-enc    440 MB took 1.000 seconds,  439.787 MB/s
AES-128-GCM-dec    205 MB took 1.017 seconds,  201.524 MB/s
AES-192-GCM-enc    400 MB took 1.003 seconds,  398.760 MB/s
AES-192-GCM-dec    195 MB took 1.018 seconds,  191.498 MB/s
AES-256-GCM-enc    385 MB took 1.012 seconds,  380.510 MB/s
AES-256-GCM-dec    190 MB took 1.022 seconds,  185.942 MB/s
GMAC Table 4-bit   330 MB took 1.002 seconds,  329.407 MB/s
AES-128-CTR        885 MB took 1.005 seconds,  880.559 MB/s
AES-192-CTR        815 MB took 1.001 seconds,  814.028 MB/s
AES-256-CTR        755 MB took 1.003 seconds,  752.520 MB/s
AES-CCM-Enc        105 MB took 1.041 seconds,  100.863 MB/s
AES-CCM-Dec        105 MB took 1.045 seconds,  100.479 MB/s
ARC4                70 MB took 1.058 seconds,   66.133 MB/s
CHACHA             300 MB took 1.007 seconds,  298.060 MB/s
CHA-POLY           205 MB took 1.016 seconds,  201.716 MB/s
3DES                10 MB took 1.938 seconds,    5.161 MB/s
MD5                135 MB took 1.012 seconds,  133.381 MB/s
POLY1305           615 MB took 1.006 seconds,  611.530 MB/s
SHA                115 MB took 1.024 seconds,  112.337 MB/s
SHA-224            610 MB took 1.007 seconds,  605.950 MB/s
SHA-256            610 MB took 1.005 seconds,  606.941 MB/s
SHA-384            140 MB took 1.005 seconds,  139.257 MB/s
SHA-512            140 MB took 1.007 seconds,  139.037 MB/s
SHA3-224            70 MB took 1.011 seconds,   69.232 MB/s
SHA3-256            70 MB took 1.058 seconds,   66.150 MB/s
SHA3-384            55 MB took 1.037 seconds,   53.042 MB/s
SHA3-512            40 MB took 1.037 seconds,   38.569 MB/s
AES-128-CMAC       170 MB took 1.025 seconds,  165.795 MB/s
AES-256-CMAC       145 MB took 1.009 seconds,  143.666 MB/s
HMAC-MD5           135 MB took 1.013 seconds,  133.228 MB/s
HMAC-SHA           115 MB took 1.023 seconds,  112.462 MB/s
HMAC-SHA224        605 MB took 1.000 seconds,  604.699 MB/s
HMAC-SHA256        610 MB took 1.008 seconds,  605.324 MB/s
HMAC-SHA384        140 MB took 1.005 seconds,  139.306 MB/s
HMAC-SHA512        140 MB took 1.006 seconds,  139.224 MB/s
PBKDF2              29 KB took 1.001 seconds,   29.388 KB/s
RSA     1024 key gen         3 ops took 1.155 sec, avg 384.888 ms, 2.598 ops/sec
RSA     2048 key gen         1 ops took 4.989 sec, avg 4988.752 ms, 0.200 ops/sec
RSA     2048 public        700 ops took 1.073 sec, avg 1.533 ms, 652.353 ops/sec
RSA     2048 private       100 ops took 9.297 sec, avg 92.966 ms, 10.757 ops/sec
DH      2048 key gen        57 ops took 1.008 sec, avg 17.690 ms, 56.530 ops/sec
DH      2048 agree         100 ops took 3.826 sec, avg 38.256 ms, 26.140 ops/sec
ECC   [      SECP256R1]   256 key gen       200 ops took 1.725 sec, avg 8.623 ms, 115.966 ops/sec
ECDHE [      SECP256R1]   256 agree         200 ops took 1.725 sec, avg 8.623 ms, 115.965 ops/sec
ECDSA [      SECP256R1]   256 sign          200 ops took 1.762 sec, avg 8.811 ms, 113.493 ops/sec
ECDSA [      SECP256R1]   256 verify        200 ops took 1.226 sec, avg 6.131 ms, 163.111 ops/sec
CURVE  25519 key gen      2942 ops took 1.000 sec, avg 0.340 ms, 2941.397 ops/sec
CURVE  25519 agree        3000 ops took 1.023 sec, avg 0.341 ms, 2933.363 ops/sec
Benchmark complete

Removing and re-installing the libwolfssl-benchmark package did the trick, maybe I was too quick after the buildbot finished yesterday. Seems to work fine now:

------------------------------------------------------------------------------
 wolfSSL version 5.3.0
------------------------------------------------------------------------------
wolfCrypt Benchmark (block bytes 1048576, min 1.0 sec each)
RNG                 55 MB took 1.044 seconds,   52.671 MB/s
AES-128-CBC-enc    455 MB took 1.001 seconds,  454.619 MB/s
AES-128-CBC-dec    430 MB took 1.011 seconds,  425.236 MB/s
AES-192-CBC-enc    400 MB took 1.003 seconds,  398.948 MB/s
AES-192-CBC-dec    390 MB took 1.007 seconds,  387.148 MB/s
AES-256-CBC-enc    355 MB took 1.011 seconds,  350.967 MB/s
AES-256-CBC-dec    345 MB took 1.003 seconds,  343.850 MB/s
AES-128-GCM-enc    280 MB took 1.013 seconds,  276.306 MB/s
AES-128-GCM-dec    125 MB took 1.002 seconds,  124.746 MB/s
AES-192-GCM-enc    255 MB took 1.020 seconds,  250.068 MB/s
AES-192-GCM-dec    120 MB took 1.005 seconds,  119.375 MB/s
AES-256-GCM-enc    235 MB took 1.005 seconds,  233.718 MB/s
AES-256-GCM-dec    120 MB took 1.030 seconds,  116.478 MB/s
GMAC Table 4-bit   200 MB took 1.002 seconds,  199.534 MB/s
AES-128-CTR        555 MB took 1.005 seconds,  552.400 MB/s
AES-192-CTR        500 MB took 1.007 seconds,  496.688 MB/s
AES-256-CTR        475 MB took 1.009 seconds,  470.836 MB/s
AES-CCM-Enc         65 MB took 1.050 seconds,   61.902 MB/s
AES-CCM-Dec         65 MB took 1.058 seconds,   61.425 MB/s
ARC4                45 MB took 1.119 seconds,   40.219 MB/s
CHACHA             185 MB took 1.016 seconds,  182.129 MB/s
CHA-POLY           125 MB took 1.012 seconds,  123.483 MB/s
3DES                 5 MB took 1.600 seconds,    3.124 MB/s
MD5                 85 MB took 1.050 seconds,   80.938 MB/s
POLY1305           380 MB took 1.000 seconds,  379.919 MB/s
SHA                 70 MB took 1.022 seconds,   68.525 MB/s
SHA-224            380 MB took 1.009 seconds,  376.620 MB/s
SHA-256            380 MB took 1.009 seconds,  376.531 MB/s
SHA-384             85 MB took 1.005 seconds,   84.614 MB/s
SHA-512             85 MB took 1.005 seconds,   84.578 MB/s
SHA3-224            45 MB took 1.070 seconds,   42.066 MB/s
SHA3-256            45 MB took 1.120 seconds,   40.185 MB/s
SHA3-384            35 MB took 1.088 seconds,   32.168 MB/s
SHA3-512            25 MB took 1.069 seconds,   23.384 MB/s
AES-128-CMAC       105 MB took 1.043 seconds,  100.690 MB/s
AES-256-CMAC        90 MB took 1.030 seconds,   87.386 MB/s
HMAC-MD5            85 MB took 1.052 seconds,   80.805 MB/s
HMAC-SHA            70 MB took 1.023 seconds,   68.407 MB/s
HMAC-SHA224        380 MB took 1.008 seconds,  376.816 MB/s
HMAC-SHA256        380 MB took 1.010 seconds,  376.325 MB/s
HMAC-SHA384         85 MB took 1.006 seconds,   84.525 MB/s
HMAC-SHA512         85 MB took 1.005 seconds,   84.570 MB/s
PBKDF2              18 KB took 1.001 seconds,   17.772 KB/s
RSA     1024 key gen         2 ops took 1.882 sec, avg 941.141 ms, 1.063 ops/sec
RSA     2048 key gen         1 ops took 8.384 sec, avg 8383.881 ms, 0.119 ops/sec
RSA     2048 public        400 ops took 1.013 sec, avg 2.532 ms, 394.870 ops/sec
RSA     2048 private       100 ops took 15.331 sec, avg 153.306 ms, 6.523 ops/sec
DH      2048 key gen        35 ops took 1.022 sec, avg 29.196 ms, 34.251 ops/sec
DH      2048 agree         100 ops took 6.316 sec, avg 63.159 ms, 15.833 ops/sec
ECC   [      SECP256R1]   256 key gen       100 ops took 1.427 sec, avg 14.274 ms, 70.059 ops/sec
ECDHE [      SECP256R1]   256 agree         100 ops took 1.421 sec, avg 14.208 ms, 70.385 ops/sec
ECDSA [      SECP256R1]   256 sign          100 ops took 1.458 sec, avg 14.583 ms, 68.574 ops/sec
ECDSA [      SECP256R1]   256 verify        200 ops took 1.995 sec, avg 9.976 ms, 100.236 ops/sec
CURVE  25519 key gen      1778 ops took 1.000 sec, avg 0.563 ms, 1777.609 ops/sec
CURVE  25519 agree        1800 ops took 1.015 sec, avg 0.564 ms, 1774.250 ops/sec
Benchmark complete

Both images I used were written on a formatted sd-card without any config present, so it really fails to boot from a 'clean' install. But that's troubleshooting for a different topic :slight_smile:

1 Like

I got here looking for a benchmark test for wolfssl, like the openssl one from "back when". Went thru a lot of searching, finally realized it was a separate package I hadn't installed, and found the usage here...

But, wanted to know if there is a command to disable/not use AES-NI for the test, to determine that it is enabled and the performance difference? Have seen how to do that with openssl, not wolfssl yet.

Basically I'm wanting to be sure it's using my x86 box's AES-NI, which should be working with 22.03-rc4 and maybe disabled in -rc5, due to issues, and I want to have an idea of the performance hit. I believe that's this is handled in Master recently, but not in -rc5 for x86.

There's no environment variable to disable AESNI in wolfssl that I am aware of. If you want to compare it, you can take advantage of 22.03-rc4 having AESNI enabled, and 22.03-rc5 not. You can test the difference without having to install anything with:

#!/bin/sh
mkdir -p /tmp/aesni /tmp/noaesni /tmp/benchmark
wget -q -O - \
  http://downloads.openwrt.org/releases/packages-22.03/x86_64/base/libwolfssl-benchmark_5.3.0-stable-6_x86_64.ipk | \
    tar xzf - -O ./data.tar.gz | tar xzf - -O ./usr/bin/wolfssl-benchmark > /tmp/benchmark/wolfssl-benchmark
chmod +x /tmp/benchmark/wolfssl-benchmark
wget -q -O - \
  http://downloads.openwrt.org/releases/22.03.0-rc4/targets/x86/64/packages/libwolfssl5.3.0.ee39414e_5.3.0-stable-5_x86_64.ipk | \
    tar xzf - -O ./data.tar.gz | tar xzf - -O ./usr/lib/libwolfssl.so.5.3.0.ee39414e > /tmp/aesni/libwolfssl.so.5.3.0.ee39414e
LD_LIBRARY_PATH=/tmp/aesni /tmp/benchmark/wolfssl-benchmark
wget -q -O - \
  http://downloads.openwrt.org/releases/22.03.0-rc5/targets/x86/64/packages/libwolfssl5.3.0.ee39414e_5.3.0-stable-6_x86_64.ipk | \
    tar xzf - -O ./data.tar.gz | tar xzf - -O ./usr/lib/libwolfssl.so.5.3.0.ee39414e > /tmp/noaesni/libwolfssl.so.5.3.0.ee39414e
LD_LIBRARY_PATH=/tmp/noaesni /tmp/benchmark/wolfssl-benchmark
1 Like

Ehh... a little more experimental than I want to try on the home router ATM... I'm running it on 22.03-rc1, still, IIRC...

So, nothing like in the following comment from another thread on here?

Blockquote
bobafetthotmailRegular
Oct '20

afaik openssl in OpenWrt is compiled to use AES-NI independently so it should use it if available without need to install other packages. You can try two different commands and see if performance is different
This should use AES-NI and should have bigger performance

openssl speed -elapsed -evp aes-128-cbc

This has a runtime switch that disables use of AES-NI in openSSL and should therefore have lower performance

OPENSSL_ia32cap="~0x200000200000000" openssl speed -elapsed -evp aes-128-cbc

see https://www.highgo.ca/2019/08/22/the-performance-test-on-the-aes-modes/ for more info

Blockquote

That seemed to work for OpenSSL... I'll try looking deeper into WolfSSL documentataion. You'd think that they would provide an easy switch for this, even more graceful than the OpenSSL one...

Well, it was fun while it lasted...

I wonder why you'd bother with WolfSSL on a platform that probably offers enough flash space to accomodate OpenSSL. As the commit message indicates, updating WolfSSL is always a rollercoaster. And not a fun one.

2 Likes

Because its the default SSL library

1 Like

Sure. I'd expect someone to look to OpenSSL first though for HW acceleration, not WolfSSL. And with hardware like this, probably compile themselves.

1 Like

Well, you would be surprised with amount of people doing everything to avoid compiling.

Crypto extensions are quite common on ARM64, only RPi looks to be missing them.

2 Likes

You're not really looking to get every ounce of performance out of your hardware if you use the "generic" builds though. That being said one could argue that there's little gain in making builds unnecessarily slow general but there have been several discussions about that already.

We are not talking about a "bit" of performance, crypto performance with and without crypto extension support is not even comparable.

1 Like

At this point should we ship some target with openssl instead of wolfssl?

4 Likes

I wish you the best of luck , I tried to change default optimization to O2 on ARM/aarch64 without any success.

I don't think this is a viable option, mostly for two reasons:

  • you're fighting against shared and non-shared (target specific) packages, so making a decision isn't as easy as it might look
    • adding a lot of complexity to the packaging of many packages (as you only want one SSL provider in your images, so a lot of semi-related packages need to be linked differently on a per-arch basis)
  • from a maintenance and QA point of view, it doesn't sound very attractive having to deal with this kind of very tangible differences between targets
    • it's (imho) bad if ath79 behaves differently than ipq807x, different features, different bugs - making bughunting a nightmare

Well we MUST find a solution... It's not acceptable to lose that much perf... Here we are not talking about compile optimization but enabling feature present on the SoC so it's bad not using them IMHO

5 Likes