Dynalink DL-WRX36 Askey RT5010W IPQ8072A technical discussion

Flow control: none

Ended up not being flow control or terminal software. It was the connection. I saw someone mention about unidirectional comm on a serial UART so I thought I would try changing it out.

This provides ONE WAY communication (no keystrokes): https://www.amazon.com/gp/product/B08BLK9HFY

This provides TWO WAY communication (returns keystrokes): https://www.amazon.com/gp/product/B07V556Q82


5 posts were split to a new topic: Replacing libustream-mbedtls and wpad-basic-mbedtls packages with openssl variants?

Thanks, hnyman. Yes, I have removed mbedtls packages, otherwise the build would not succeed since they conflict on the same files. I have already generated a build.

BTW, I use your builds for R7800, thanks for your efforts.

Yes, wolfssl is also a good choice. I have been using openssl for a long time in openwrt so just going with it.

4 posts were split to a new topic: DL-WRX36 slow WAN speed

I have installed OpenWRT on my unit via serial header pins and it is been flawless.

The router now forms part of an AC mix of WDS between R7800, EA8500, DL-WRX36. This unit which broadcasts AX on 5 GHz and 2.4 GHz bands helps with throughput.

Plus the DL-WRX36 looks pretty elegant next to my NAS (which my wife loved), and the speeds are awesome!

1 Like

with the latest kernel 5.15.96 i am unable to sysupgrade ... has anyone getting this ?

Unable to handle kernel access to user memory outside uaccess routines at virtual address 0000000000000070

detailed log

Watchdog handover: fd=3
- watchdog -
Watchdog did not previously reset the system
Thu Mar  2 17:31:51 GMT 2023 upgrade: Sending TERM to remaining processes ...
Thu Mar  2 17:31:51 GMT 2023 upgrade: Sending signal TERM to uwsgi (3517)
Thu Mar  2 17:31:55 GMT 2023 upgrade: Sending KILL to remaining processes ...
[   76.104968] stage2 (5352): drop_caches: 3
Thu Mar  2 17:32:02 GMT 2023 upgrade: Switching to ramdisk...
[   77.446669] UBIFS (ubi0:2): background thread "ubifs_bgt0_2" stops
[   77.450707] Unable to handle kernel access to user memory outside uaccess routines at virtual address 0000000000000070
[   77.451754] Mem abort info:
[   77.462433]   ESR = 0x0000000096000005
[   77.465108]   EC = 0x25: DABT (current EL), IL = 32 bits
[   77.468929]   SET = 0, FnV = 0
[   77.474407]   EA = 0, S1PTW = 0
[   77.477258]   FSC = 0x05: level 1 translation fault
[   77.480301] Data abort info:
[   77.485171]   ISV = 0, ISS = 0x00000005
[   77.488283]   CM = 0, WnR = 0
[   77.491843] user pgtable: 4k pages, 39-bit VAs, pgdp=000000005589d000
[   77.494978] [0000000000000070] pgd=08000000523a8003, p4d=08000000523a8003, pud=08000000523a8003, pmd=0000000000000000
[   77.501407] Internal error: Oops: 96000005 [#1] SMP
[   77.511984] Modules linked in: pppoe ppp_async ath11k_ahb ath11k ath10k_pci ath10k_core ath pppox ppp_mppe ppp_generic nft_fib_inet nf_flow_table                     _ipv6 nf_flow_table_ipv4 nf_flow_table_inet mac80211 ipt_REJECT cfg80211 xt_time xt_tcpudp xt_tcpmss xt_statistic xt_state xt_socket xt_recent xt_qu                     ota xt_pkttype xt_physdev xt_owner xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_iprange xt_iface xt_hl xt_helper xt_esp xt_ecn xt_dscp x                     t_conntrack xt_connmark xt_connlimit xt_connlabel xt_connbytes xt_comment xt_cgroup xt_addrtype xt_TCPMSS xt_TARPIT xt_SYSRQ xt_REDIRECT xt_PROTO xt                     _NETMAP xt_MASQUERADE xt_LOG xt_IPMARK xt_HL xt_FLOWOFFLOAD xt_DSCP xt_DHCPMAC xt_CT xt_CLASSIFY ums_usbat ums_sddr55 ums_sddr09 ums_karma ums_jumps                     hot ums_isd200 ums_freecom ums_datafab ums_cypress ums_alauda ts_kmp ts_fsm ts_bm spi_gpio spi_bitbang slhc sch_cake qrtr_tun qrtr_smd qrtr_mhi qrtr                      qmi_helpers ns nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject_bridge nft_reject nft_redir nft_quota
[   77.512192]  nft_objref nft_numgen nft_nat nft_meta_bridge nft_masq nft_log nft_limit nft_hash nft_flow_offload nft_fib_ipv6 nft_fib_ipv4 nft_fib                      nft_ct nft_counter nft_compat nft_chain_nat nf_tables nf_socket_ipv6 nf_socket_ipv4 nf_reject_ipv4 nf_log_syslog nf_flow_table nf_conntrack_netlink                      nf_conntrack_bridge nf_conncount mhi_pci_generic mhi_net mhi mdio_netlink mdio_gpio mdio_bitbang macvlan iptable_raw iptable_nat iptable_mangle ipt                     able_filter ipt_rpfilter ipt_ah ipt_ECN ip6t_rpfilter ip_tables crc_ccitt compat_xtables compat br_netfilter fuse sch_teql sch_sfq sch_multiq sch_gr                     ed sch_fq sch_dsmark sch_codel em_text em_nbyte em_meta em_cmp act_simple act_pedit act_csum libcrc32c sch_tbf sch_ingress sch_htb sch_hfsc em_u32 c                     ls_u32 cls_tcindex cls_route cls_matchall cls_fw cls_flow cls_basic act_skbedit act_mirred act_gact i2c_gpio i2c_algo_bit i2c_mux_gpio i2c_mux crypt                     odev xt_set ip_set_list_set ip_set_hash_netportnet ip_set_hash_netport ip_set_hash_netnet ip_set_hash_netiface
[   77.581779]  ip_set_hash_net ip_set_hash_mac ip_set_hash_ipportnet ip_set_hash_ipportip ip_set_hash_ipport ip_set_hash_ipmark ip_set_hash_ipmac i                     p_set_hash_ip ip_set_bitmap_port ip_set_bitmap_ipmac ip_set_bitmap_ip ip_set nfnetlink ip6table_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv                     4 ip6t_NPT ip6t_rt ip6t_mh ip6t_ipv6header ip6t_hbh ip6t_frag ip6t_eui64 ip6t_ah ip6table_mangle ip6table_filter ip6_tables ip6t_REJECT x_tables nf_                     reject_ipv6 swconfig bonding ifb sit tunnel4 ip_tunnel veth tun cifs cifs_md4 cifs_arc4 autofs4 dns_resolver nls_utf8 vxlan udp_tunnel ip6_udp_tunne                     l wp512 twofish_generic twofish_common tea serpent_generic khazad cast6_generic cast5_generic cast_common camellia_generic blowfish_generic blowfish                     _common anubis ecdh_generic ecc xcbc crypto_user algif_skcipher algif_rng algif_hash algif_aead af_alg sha512_generic seqiv jitterentropy_rng drbg r                     md160 pcbc michael_mic md5 md4 kpp hmac fcrypt echainiv des_generic cts cmac arc4 uas usb_storage leds_gpio
[   77.668420]  xhci_plat_hcd xhci_pci xhci_hcd dwc3 dwc3_qcom uhci_hcd ehci_pci fsl_mph_dr_of ehci_platform ehci_fsl ehci_hcd qca_nss_dp qca_ssdk g                     pio_button_hotplug f2fs ext4 mbcache jbd2 gpio_cascade mux_gpio mux_core aquantia hwmon crc32c_generic crc32_generic encrypted_keys trusted tpm rng_                     core oid_registry asn1_encoder asn1_decoder
[   77.784630] CPU: 1 PID: 5352 Comm: busybox Not tainted 5.15.94 #0
[   77.806865] Hardware name: Dynalink DL-WRX36 (DT)
[   77.812853] pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[   77.817543] pc : percpu_counter_add_batch+0x18/0xac
[   77.824311] lr : account_page_cleaned+0xac/0x100
[   77.829172] sp : ffffffc00dd3b940
[   77.834031] x29: ffffffc00dd3b940 x28: 0000000000000000 x27: 0000000000000000
[   77.837249] x26: fffffffffffffffe x25: ffffffc008770fc0 x24: ffffffffffffffff
[   77.844367] x23: 0000000000000000 x22: 0000000000000000 x21: 0000000000000000
[   77.851485] x20: fffffffe00539d00 x19: 0000000000000060 x18: 0000000000000014
[   77.858604] x17: 00000000bafb1036 x16: 00000000f411f9f6 x15: ffffff8002462e48
[   77.865722] x14: 000000000000000c x13: 0000000000000000 x12: 0000000000000000
[   77.872840] x11: ffffffc0089d924a x10: 0000000000000000 x9 : 0000000000000000
[   77.879958] x8 : 0000000000000000 x7 : ffffffc0089d9246 x6 : ffffff803fdc5246
[   77.887075] x5 : ffffffffffffffff x4 : 000000000000001d x3 : 0000000000000004
[   77.894194] x2 : 0000000000000018 x1 : ffffffffffffffff x0 : 0000000000000060
[   77.901312] Call trace:
[   77.908421]  percpu_counter_add_batch+0x18/0xac
[   77.910681]  account_page_cleaned+0xac/0x100
[   77.915196]  __cancel_dirty_page+0x10c/0x160
[   77.919709]  truncate_cleanup_page+0xd8/0xf0
[   77.923962]  truncate_inode_pages_range+0xe4/0x490
[   77.928216]  truncate_inode_pages_final+0x9c/0xbc
[   77.932817]  evict+0x178/0x194
[   77.937588]  evict_inodes+0x1cc/0x21c
[   77.940541]  generic_shutdown_super+0x44/0x130
[   77.944275]  kill_block_super+0x20/0x70
[   77.948613]  deactivate_locked_super+0x54/0xfc
[   77.952348]  deactivate_super+0x70/0x90
[   77.956861]  cleanup_mnt+0xdc/0x174
[   77.960592]  __cleanup_mnt+0x14/0x20
[   77.964065]  task_work_run+0xc8/0x130
[   77.967885]  do_notify_resume+0x3e8/0x7bc
[   77.971445]  el0_svc+0x44/0x54
[   77.975436]  el0t_64_sync_handler+0xe8/0x114
[   77.978389]  el0t_64_sync+0x184/0x188
[   77.982821] Code: 910003fd a90153f3 aa0003f3 f90013f5 (f9400803)
[   77.986380] ---[ end trace 1d9fc6a9f941812c ]---
[   77.992454] Kernel panic - not syncing: Oops: Fatal exception
[   77.997143] SMP: stopping secondary CPUs
[   78.002785] Kernel Offset: disabled
[   78.006772] CPU features: 0x0,00000000,00000802
[   78.009986] Memory Limit: none
[   78.014499] Rebooting in 3 seconds..

Dynalink DL-WRX36 Askey RT5010W IPQ8072A technical discussion - #1057 by sqrwv ?

nope ... I am not running wifi nor wpad ... and as I remember the issue was not about Unable to handle kernel access to user memory outside uaccess r ... besides it is only showing this issue with this latest kernel ...

this issue happens even if rmmod all of the ath modules ...

so I end up ... reformatting the mtd18 and restore a backup ...

How to activate the Serial Console ?

probably need


scroll back, the discussion is further up, in old posts.

No issues here... Updated last evening to snapshot r22188 without any troubles.

1 Like

2 posts were split to a new topic: Installing USB storage driver, kmod compatibility error

@ansuel @robimarko
Do you have suggestions, how the IRQs affinities should be assigned with ath11k on multicore CPUs?
Apparently using irqbalance can be dangerous, so would manual affinity assignment work?

E.g. ipq8072 has 4 cores, so it sounds strange to leave everything on core0.

The examples in the forum (below) mainly distribute reo2host-destination-ring[1-4] and
wbm2host-tx-completions-ring[1-3] :

and we also wonder about the "ring" meaning: should all ring-mac1 be on the same core or not, etc.

Looking at the interrupt usage, main counts are with reo2host-destination-ring[1-4] and
wbm2host-tx-completions-ring[1-3] (note only 3 rings)

Any wisdom about the ath11k irq usage/balancing?

Actually, one of the messages has a reference to Xiaomi discussions, which has this interesting link to codeaurora where a balancing script with logic to map rings to core scan be found: https://source.codeaurora.org/quic/qsdk/oss/system/feeds/wlan-open/tree/mac80211/files/lib/smp_affinity_settings.sh?h=win_ap.1.0

1 Like

I have been testing a bit assigning core affinities the IRQs, and have noted that the wan/lan related edma IRQs 78-81 apparently need to be on the same core. I have successfully moved both of them from core0 to core3 (affinity 8), but having 78 and 80 distributed to two different cores seems to crash/lock the network pretty quickly.

Heaviest IRQ counts (and processor loads) are from those edma IRQs plus one copyengine (ce1). I wonder if it possible to leave edma IRQs at core0, assign ceX IRQ to core1, and then move the other ath11k IRQs to core2 and core3. That might produce the most balanced CPU usage. (Although looking at the IRQ counts in /proc/interupts may be misleading. At least with my 200/100 ISP connection, half of load is from the edma, half is from wifi related ones.)


Following your post, I moved those edma IRQs to core 3

# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.

echo 8 > /proc/irq/78/smp_affinity
echo 8 > /proc/irq/79/smp_affinity
echo 8 > /proc/irq/80/smp_affinity
echo 8 > /proc/irq/81/smp_affinity

exit 0

Then, from Router, run iperf3 -A 1 -t 20 -c computer, over a 1Gb LAN link

From htop,
Core 0 is virtually 0
Core 1 ~33% @ 1017MHz
Core 2 is virtually 0
Core 3 ~ 50-60% @ 1017MHz

Similarly, over a 2.5Gb LAN link:
Core 0 is virtually 0
Core 1 ~100% @ 2208MHz
Core 2 is virtually 0
Core 3 ~ 24-29% @ 2208MHz

1 Like

Does anyone have the latest snapshot running with kernel 5.15.98 ?

@hnyman I'd be happy to test. So we leave 78-81 EDMA on affinity 1... move 29-40 ceX to affinity 2... Then perhaps 49-53 and 73-75 to affinity 4... and finally 48 along with 57-59 to affinity 8. Does that sound like an appropriate assignment? Anything else you'd advise or recommend?

EDIT - shuffled the assignments a bit. Plus - what to do with irq 23?