Netgear WAX206 periodically drops 5GHz connection with kernel trace in log

I am using OpenWrt (OpenWrt 23.05.0 r23497-6637af95aa) with Travelmate (2.1.0-1) to insulate my home network from my apartment building's wifi. They offer pretty good connectivity (~200 Mbps symmetric) but, of course, I have no control over it. The only problem with this setup is that my connection drops periodically.

The WAX206 has a radio0 for 2.4 GHz and radio1 for 5 GHz. If I set everything up with Travelmate using 5GHz for a wifi network and backhaul over the building wifi, I get really good speeds... and periodic drop-outs. I think this might have something to do with using the same radio as both server and client and hopping around to different channels, but I don't know.

Tue Nov  7 01:55:39 2023 daemon.notice wpa_supplicant[1553]: wl1-sta0: CTRL-EVENT-STARTED-CHANNEL-SWITCH freq=5180 ht_enabled=1 ch_offset=0 ch_width=20 MHz cf1=5180 cf2=0
Tue Nov  7 01:55:39 2023 daemon.info hostapd: wl1-ap0: IEEE 802.11 driver starting channel switch: iface->freq=5220, freq=5180, ht=1, vht_ch=0x0, he_ch=0x0, eht_ch=0x0, offset=1, width=3 (80 MHz), cf1=5210, cf2=0, puncturing_bitmap=0x0
Tue Nov  7 01:55:39 2023 daemon.notice hostapd: wl1-ap0: CTRL-EVENT-STARTED-CHANNEL-SWITCH freq=5180 ht_enabled=1 ch_offset=1 ch_width=80 MHz cf1=5210 cf2=0 is_dfs0=0 dfs=0 puncturing_bitmap=0x0000
Tue Nov  7 01:55:40 2023 daemon.err hostapd: Cannot set beacons during CSA period
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2144.953000] ------------[ cut here ]------------
Tue Nov  7 01:55:42 2023 kern.warn kernel: [ 2144.957642] WARNING: CPU: 0 PID: 13039 at 0xffffffc0009edaf8 [mac80211@00000000e2e7840f+0x83000]
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2144.966466] Modules linked in: pppoe ppp_async nft_fib_inet nf_flow_table_ipv6 nf_flow_table_ipv4 nf_flow_table_inet pppox ppp_generic nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject nft_redir nft_quota nft_objref nft_numgen nft_nat nft_masq nft_log nft_limit nft_hash nft_flow_offload nft_fib_ipv6 nft_fib_ipv4 nft_fib nft_ct nft_counter nft_chain_nat nf_tables nf_nat nf_flow_table nf_conntrack mt7915e mt7615e mt7615_common mt76_connac_lib mt76 mac80211 iptable_mangle iptable_filter ipt_REJECT ipt_ECN ip_tables cfg80211 xt_time xt_tcpudp xt_tcpmss xt_statistic xt_multiport xt_mark xt_mac xt_limit xt_length xt_hl xt_ecn xt_dscp xt_comment xt_TCPMSS xt_LOG xt_HL xt_DSCP xt_CLASSIFY x_tables slhc sch_cake nfnetlink nf_reject_ipv6 nf_reject_ipv4 nf_log_syslog nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c hwmon crc_ccitt compat sch_tbf sch_ingress sch_htb sch_hfsc em_u32 cls_u32 cls_route cls_matchall cls_fw cls_flow cls_basic act_skbedit act_mirred act_gact ifb seqiv leds_gpio
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2144.967018]  gpio_button_hotplug
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.056706] CPU: 0 PID: 13039 Comm: kworker/u4:2 Not tainted 5.15.134 #0
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.063400] Hardware name: Netgear WAX206 (DT)
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.067834] Workqueue: phy1 0xffffffc0009ef210 [mac80211@00000000e2e7840f+0x83000]
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.075402] pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.082356] pc : 0xffffffc0009edaf8 [mac80211@00000000e2e7840f+0x83000]
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.088965] lr : 0xffffffc0009ef2a4 [mac80211@00000000e2e7840f+0x83000]
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.095573] sp : ffffffc00c643d20
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.098878] x29: ffffffc00c643d20 x28: 0000000000000000 x27: ffffff8000afa280
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.106009] x26: ffffff8003c23874 x25: ffffff8000332485 x24: ffffff80024d40b0
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.113139] x23: ffffff80055e8900 x22: ffffff80055e9660 x21: ffffff8002840880
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.120270] x20: ffffff8002841c38 x19: ffffff80055e8900 x18: 0000000000000000
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.127401] x17: 0000000000000000 x16: 0000000000000000 x15: 000000000003aaaa
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.134530] x14: 0000000000000000 x13: 0000000000000020 x12: 0101010101010101
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.141660] x11: 7f7f7f7f7f7f7f7f x10: fefefefefefefeff x9 : 7f7f7f7f7f7f7f7f
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.148792] x8 : 8080808080808080 x7 : ffffff8003c23874 x6 : 8080808000000000
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.155921] x5 : ffffff8000332468 x4 : ffffff80055e9a28 x3 : 0000000000000000
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.163051] x2 : 0000000000000000 x1 : 0000000000000002 x0 : ffffff80055e8900
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.170182] Call trace:
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.172619]  0xffffffc0009edaf8 [mac80211@00000000e2e7840f+0x83000]
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.178880]  0xffffffc0009ef2a4 [mac80211@00000000e2e7840f+0x83000]
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.185140]  0xffffffc008050950
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.188273]  0xffffffc008050c60
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.191404]  0xffffffc008058e2c
Tue Nov  7 01:55:42 2023 kern.debug kernel: [ 2145.194535]  0xffffffc00801581c
Tue Nov  7 01:55:42 2023 kern.warn kernel: [ 2145.197667] ---[ end trace 397f84d764c9cb09 ]---
Tue Nov  7 01:55:42 2023 kern.info kernel: [ 2145.202363] wl1-sta0: failed to finalize CSA, disconnecting
Tue Nov  7 01:55:42 2023 daemon.err hostapd: Cannot set beacons during CSA period
Tue Nov  7 01:55:42 2023 daemon.info hostapd: wl1-ap0: IEEE 802.11 driver had channel switch: iface->freq=5180, freq=5180, ht=1, vht_ch=0x0, he_ch=0x0, eht_ch=0x0, offset=1, width=3 (80 MHz), cf1=5210, cf2=0, puncturing_bitmap=0x0
Tue Nov  7 01:55:42 2023 daemon.notice hostapd: wl1-ap0: CTRL-EVENT-CHANNEL-SWITCH freq=5180 ht_enabled=1 ch_offset=1 ch_width=80 MHz cf1=5210 cf2=0 is_dfs0=0 dfs=0 puncturing_bitmap=0x0000
Tue Nov  7 01:55:42 2023 kern.info kernel: [ 2145.207987] wl1-sta0: deauthenticating from 24:79:2a:d4:0f:8c by local choice (Reason: 3=DEAUTH_LEAVING)
Tue Nov  7 01:55:42 2023 daemon.notice wpa_supplicant[1553]: wl1-sta0: CTRL-EVENT-DISCONNECTED bssid=24:79:2a:d4:0f:8c reason=3 locally_generated=1
Tue Nov  7 01:55:42 2023 daemon.notice netifd: Network device 'wl1-sta0' link is down
Tue Nov  7 01:55:42 2023 daemon.notice netifd: Network alias 'wl1-sta0' link is down
Tue Nov  7 01:55:42 2023 daemon.notice netifd: Interface 'trm_wwan6' has link connectivity loss
Tue Nov  7 01:55:42 2023 daemon.notice netifd: Interface 'trm_wwan' has link connectivity loss
Tue Nov  7 01:55:42 2023 daemon.notice hostapd: wl1-ap0: AP-CSA-FINISHED freq=5180 dfs=0
Tue Nov  7 01:55:42 2023 daemon.notice netifd: trm_wwan (5618): udhcpc: received SIGTERM
Tue Nov  7 01:55:42 2023 daemon.notice netifd: trm_wwan (5618): udhcpc: unicasting a release of 172.20.3.110 to 172.20.1.1
Tue Nov  7 01:55:42 2023 daemon.notice netifd: trm_wwan (5618): udhcpc: sending release
Tue Nov  7 01:55:42 2023 daemon.notice netifd: trm_wwan (5618): udhcpc: entering released state
Tue Nov  7 01:55:42 2023 daemon.notice netifd: trm_wwan (5618): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "trm_wwan" } (Permission denied)
Tue Nov  7 01:55:42 2023 daemon.notice netifd: Interface 'trm_wwan' is now down
Tue Nov  7 01:55:42 2023 daemon.notice netifd: Interface 'trm_wwan6' is disabled
Tue Nov  7 01:55:42 2023 daemon.warn dnsmasq[1]: no servers found in /tmp/resolv.conf.d/resolv.conf.auto, will retry
Tue Nov  7 01:55:43 2023 daemon.notice netifd: Interface 'trm_wwan6' is now down
Tue Nov  7 01:55:43 2023 daemon.notice netifd: Network device 'wl1-ap0' link is down
Tue Nov  7 01:55:43 2023 kern.info kernel: [ 2146.247413] br-lan: port 6(wl1-ap0) entered disabled state
Tue Nov  7 01:55:44 2023 daemon.warn odhcpd[1806]: No default route present, overriding ra_lifetime!
Tue Nov  7 01:55:44 2023 user.info trm-2.1.0[6220]: uplink is out of range (0/35)
Tue Nov  7 01:55:44 2023 daemon.notice netifd: Interface 'trm_wwan' is disabled
Tue Nov  7 01:55:45 2023 daemon.notice wpa_supplicant[1553]: Set new config for phy wl1
Tue Nov  7 01:55:45 2023 daemon.notice wpa_supplicant[1553]: Remove interface wl1-sta0
Tue Nov  7 01:55:45 2023 daemon.notice wpa_supplicant[1553]: wl1-sta0: CTRL-EVENT-DSCP-POLICY clear_all
Tue Nov  7 01:55:45 2023 daemon.notice wpa_supplicant[1553]: wl1-sta0: CTRL-EVENT-DSCP-POLICY clear_all
Tue Nov  7 01:55:45 2023 daemon.notice wpa_supplicant[1553]: nl80211: deinit ifname=wl1-sta0 disabled_11b_rates=0
Tue Nov  7 01:55:45 2023 daemon.err wpa_supplicant[1553]: rmdir[ctrl_interface=/var/run/wpa_supplicant]: Permission denied
Tue Nov  7 01:55:45 2023 daemon.notice hostapd: Set new config for phy wl1: /var/run/hostapd-wl1.conf
Tue Nov  7 01:55:45 2023 daemon.notice hostapd: Restart interface for phy wl1
Tue Nov  7 01:55:45 2023 daemon.notice hostapd: Remove interface 'wl1'
Tue Nov  7 01:55:45 2023 daemon.notice hostapd: wl1-ap0: interface state ENABLED->DISABLED
Tue Nov  7 01:55:45 2023 daemon.notice hostapd: wl1-ap0: AP-DISABLED
Tue Nov  7 01:55:45 2023 daemon.notice hostapd: wl1-ap0: CTRL-EVENT-TERMINATING
Tue Nov  7 01:55:45 2023 daemon.err hostapd: rmdir[ctrl_interface=/var/run/hostapd]: Permission denied
Tue Nov  7 01:55:45 2023 daemon.notice hostapd: nl80211: deinit ifname=wl1-ap0 disabled_11b_rates=0
Tue Nov  7 01:55:45 2023 kern.info kernel: [ 2148.550464] device wl1-ap0 left promiscuous mode
Tue Nov  7 01:55:45 2023 kern.info kernel: [ 2148.555186] br-lan: port 6(wl1-ap0) entered disabled state
Tue Nov  7 01:55:45 2023 daemon.notice hostapd: Configuration file: data: driver=nl80211 logger_syslog=127 logger_syslog_level=2 logger_stdout=127 logger_stdout_level=2 hw_mode=a beacon_int=100 tx_queue_data2_burst=2.0 #num_global_macaddr=1 ieee80211n=1 ht_coex=0 ht_capab=[HT40+][LDPC][SHORT-GI-20][SHORT-GI-40][TX-STBC][RX-STBC1][MAX-AMSDU-7935] ieee80211ac=1 vht_oper_chwidth=1 vht_oper_centr_freq_seg0_idx=-6 vht_capab=[RXLDPC][SHORT-GI-80][SHORT-GI-160][TX-STBC-2BY1][SU-BEAMFORMER][SU-BEAMFORMEE][MU-BEAMFORMER][MU-BEAMFORMEE][RX-ANTENNA-PATTERN][TX-ANTENNA-PATTERN][RX-STBC-1][SOUNDING-DIMENSION-4][BF-ANTENNA-4][MAX-MPDU-7991][MAX-A-MPDU-LEN-EXP7] ieee80211ax=1 he_oper_chwidth=1 he_oper_centr_freq_seg0_idx=-6 he_su_beamformer=1 he_su_beamformee=1 he_mu_beamformer=1 he_bss_color=128 he_spr_sr_control=3 he_default_pe_duration=4 he_rts_threshold=1023 he_mu_edca_qos_info_param_count=0 he_mu_edca_qos_info_q_ack=0 he_mu_edca_qos_info_queue_request=0 he_mu_edca_qos_info_txop_request=0 he_mu_edca_ac_be_aifsn=8 he_mu_edca_ac_be_aci=0 h
Tue Nov  7 01:55:45 2023 kern.info kernel: [ 2148.783818] br-lan: port 6(wl1-ap0) entered blocking state
Tue Nov  7 01:55:45 2023 kern.info kernel: [ 2148.789378] br-lan: port 6(wl1-ap0) entered disabled state

I guess what I want might just be impossible with the upstream link (apparently) channel-hopping and only one 5 GHz radio? I'm open to buying another access point and using the radios in this WAX206 for upstream only.

I couldn't include all the log output because of the post length limit so here's some more: https://gist.github.com/joseph-long/3893ceefa87230cfdd1054805049db51