I'm seeing some strange behavior with commits:

Particularly when this patch is applied.

target/linux/generic/pending-6.6/680-net-add-TCP-fraglist-GRO-support.patch
  BusyBox v1.36.1 (2024-04-24 20:05:46 UTC) built-in shell (ash)

    _______                     ________        __
   |       |.-----.-----.-----.|  |  |  |.----.|  |_
   |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
   |_______||   __|_____|__|__||________||__|  |____|
            |__| W I R E L E S S   F R E E D O M
   -----------------------------------------------------
   OpenWrt SNAPSHOT, r284+160-9bfc921652
   -----------------------------------------------------
  root@WRX36:/# [ 1400.422663] ------------[ cut here ]------------
  [ 1400.422701] WARNING: CPU: 1 PID: 19 at net/ipv4/af_inet.c:152 inet_sock_destruct+0x19c/0x1a4
  [ 1400.426360] Modules linked in: ecm(O) act_nssmirred(O) nft_fib_inet nf_flow_table_inet ath11k_ahb(O) ath11k(O) wireguard nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject nf  t_redir nft_quota 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_chain_nat nf_tables nf_nat nf_flow_table nf_conntr  ack_netlink nf_conntrack mac80211(O) lz4 libchacha20poly1305 chacha_neon cfg80211(O) tcp_bbr sch_cake qrtr_smd qrtr qmi_helpers(O) poly1305_neon nfnetlink nf_reject_ipv6 nf_reject_ipv4   nf_log_syslog nf_defrag_ipv6 nf_defrag_ipv4 lz4hc_compress lz4_decompress lz4_compress libcurve25519_generic libcrc32c libchacha compat(O) sch_tbf sch_ingress sch_htb sch_hfsc em_u32 cl  s_u32 cls_route cls_matchall cls_fw cls_flow cls_basic act_skbedit act_mirred act_gact qca_nss_qdisc(O) ledtrig_usbport qca_mcs(O) bonding ifb ip6_udp_tunnel udp_tunnel qca_nss_drv(O) n  ls_utf8 nls_iso8859_1 nls_cp437 essiv ecdh_generic ecc sha512_generic sha512_arm64 sha2_ce sha256_arm64 sha1_ce
  [ 1400.426538]  seqiv sha3_generic jitterentropy_rng drbg michael_mic kpp hmac geniv des_generic libdes cmac chacha20poly1305 uas usb_storage leds_gpio xhci_plat_hcd xhci_pci xhci_hcd d  wc3 dwc3_qcom qca_nss_dp(O) qca_ssdk(O) gpio_button_hotplug(O) vfat fat ext4 mbcache jbd2 crc32c_generic [last unloaded: ecm(O)]
  [ 1400.529813] CPU: 1 PID: 19 Comm: ksoftirqd/1 Tainted: G           O       6.6.28 #0
  [ 1400.552051] Hardware name: Dynalink DL-WRX36 (DT)
  [ 1400.559600] pstate: 20400005 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
  [ 1400.564463] pc : inet_sock_destruct+0x19c/0x1a4
  [ 1400.571229] lr : inet6_sock_destruct+0x20/0x30
  [ 1400.575743] sp : ffffffc080dd3c80
  [ 1400.580255] x29: ffffffc080dd3c80 x28: ffffffc08009d6cc x27: 000000000000000a
  [ 1400.583646] x26: ffffff803fdb4e38 x25: ffffffc080c65f80 x24: 0000000000000000
  [ 1400.590764] x23: 0000000000000003 x22: ffffffc080dd3d78 x21: ffffff8002122700
  [ 1400.597884] x20: ffffff8016bb4bb8 x19: ffffff8016bb4b00 x18: 0000000000000000
  [ 1400.605001] x17: ffffffbfbf317000 x16: ffffffc080008000 x15: 0000000000000001
  [ 1400.612119] x14: ffffff800422be1c x13: ffffffc080c65838 x12: 0000000000000006
  [ 1400.619237] x11: ffffffc080aa1200 x10: 0000000000000000 x9 : ffffff803fdb8118
  [ 1400.626355] x8 : 0000000000000000 x7 : 000000000000045d x6 : 0000000000000007
  [ 1400.633473] x5 : 00000000fffffff5 x4 : ffffffbfbf317000 x3 : 0000000000000007
  [ 1400.640591] x2 : ffffff8016bb4fb8 x1 : 0000000000000000 x0 : 0000000080000000
  [ 1400.647709] Call trace:
  [ 1400.654818]  inet_sock_destruct+0x19c/0x1a4
  [ 1400.657080]  inet6_sock_destruct+0x20/0x30
  [ 1400.661245]  udpv6_destruct_sock+0x20/0x30
  [ 1400.665413]  __sk_destruct+0x28/0x198
  [ 1400.669490]  rcu_core+0x1d4/0x53c
  [ 1400.673224]  rcu_core_si+0x10/0x1c
  [ 1400.676522]  __do_softirq+0xf8/0x254
  [ 1400.679820]  run_ksoftirqd+0x38/0x4c
  [ 1400.683553]  smpboot_thread_fn+0x138/0x17c
  [ 1400.687113]  kthread+0xd0/0xd4
  [ 1400.691018]  ret_from_fork+0x10/0x20
  [ 1400.694057] ---[ end trace 0000000000000000 ]---

For others interested in following the discussion:

2 Likes

Just pushed a few commits.

date commit desc
2024-04-28 d0669b3 qca-mcs: Add support for kernel >= 6.6.29
2024-04-28 1891a29 nss-ecm: switch to using named sections in uci

With 1891a29, I'd like to get feedback if everyone's ecm config properly get's migrated (sysupgrade) or on clean builds that don't use a custom files/etc/config/ecm.

If you host your own repo, and update ecm through okpg, you will have to update your config manually. KernelPackage doesn't support a custom postinst unfortunately.

#!/bin/sh
conf=/etc/config/ecm
uci -q show ecm.general || {
      sed -i "s/config.*general.*/config ecm 'general'/g" "$conf"
}
6 Likes

let's hope there are "significant" improvements...i am not getting any issues though on the dynalink

If possible, could you rebase your repo so I can test it, please. With my build system it is difficult to apply patches myself.

Try now. I rebased off commit 2c0cec1eb02fe90b25ae5c87c35ab14f9f2219db, and not latest on 'openwrt/main' until I can sort out the issue below.

kernel: improve GRO performance

EDIT: NVM, I had to revert back. I thought I could automate the rebase, and borked something in the process... I've made over 158 commits since Dec. Will be a while before I can rebase. Sorry.

1 Like

Don't know if it's related to your build or not. After using your latest build, you removed the Ath10 and My AX3600 reboot itself for every minute. I almost shit my pants I thought I bricked the router. I think the problem is the wireless cause when I disable all of the wireless interface and it works then I just reverted to previous build.

yea, the rebase messed it up, I did a force push of my previous commit #ea74e675f0704525fa2ff8348a12a2a8aa01e100 to revert the change.

2 Likes

you have to do a clean install.
As the wireless config is no longer valid with ath10 radio removed.
On top of that the new uci set wireless setting applies to "new" wireless conf. So mess on top of mess.
So please do a clean install when moving from build with ath10 and without ath10

clean build. and i deleted /etc/config/ecm before flashing.

root@XXX:~# uci show ecm
ecm.global=ecm
ecm.global.acceleration_engine='auto'
ecm.general=ecm
ecm.general.enable_bridge_filtering='0'
ecm.general.disable_offloads='0'
ecm.general.disable_flow_control='0'
ecm.general.disable_interrupt_moderation='0'

works fine.

2 Likes

Usual sysupgrade.

root@QNAP:~# uci show ecm
ecm.global=ecm
ecm.global.acceleration_engine='auto'
ecm.general=ecm
ecm.general.enable_bridge_filtering='0'
ecm.general.disable_offloads='0'
ecm.general.disable_flow_control='0'
ecm.general.disable_interrupt_moderation='0'
ecm.general.disable_gro='0'

3 Likes

@JuliusBairaktaris
I see that your builds have banip and it looks like it can also block ads/malware like adblock... is that right?

1 Like

Yes, but I use it to block doh to prevent DNS hijacking and firehol level 1 to block general creepy stuff. I would strongly recommend using a second device to run Adguard home as an AdBlock solution.

I use your latest build and AX3600 still always reboot itself every minute if i enable the Qualcomm Atheros IPQ8074 802.11ac/ax/n interface. The 2.4 Ghz works just fine seems it only happens with the 5Ghz. I think it's because you removed the Ath10k i reverted to previous build before ath10k removed and everything works just fine.

I don't think that's the problem anymore cause I just use latest build from 20 hours ago.

Yes i always did clean install.

there is a new build 6.6.29... try it

Can't replicate it. It's working fine for me. It might be your device. I would suggest trying mainline openwrt to see if it happens there as well.

After sysupgrade to 6.6.29 with latest GRO commits by @nbd

root@QNAP:~# uci show ecm
ecm.global=ecm
ecm.global.acceleration_engine='auto'
ecm.general=ecm
ecm.general.enable_bridge_filtering='0'
ecm.general.disable_offloads='0'
ecm.general.disable_flow_control='0'
ecm.general.disable_interrupt_moderation='0'
ecm.general.disable_gro='0'
root@QNAP:~# ethtool -k br-lan | grep 'requested on'
tx-gso-robust: off [requested on]
tx-fcoe-segmentation: off [requested on]
tx-sctp-segmentation: off [requested on]
tx-udp-segmentation: off [requested on]
tx-gso-list: off [requested on]

It seems OK.

1 Like

Be aware, with 6.6.29, DNS (UDP connections in general) might break after some time. I decided to still merge it into my nss branch to see if the problem exists for any of you. Still trying to narrow down the issue.

Below is an excerpt of my comment to @nbd

2 Likes

of chance ... have you tried to use only dnsmasq or/and stubby instead of unbound ? @anyone using unbound having the same crashes as @qosmio ... no issues so far on my end

For me DNS is solid, but 2.4GHz is not working. Seems to be a dhcp problem. Devices are not getting an IP address over 2.4G but are getting one over 5G. @glassdoor is this happening to you aswell? Edit: Issue is also happening on a clean flash

Also lots of log spam: AP-STA-POSSIBLE-PSK-MISMATCH.

root@OpenWrt:~# cat  /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/soc@0/c000000.wifi'
        option channel '44'
        option band '5g'
        option htmode 'HE160'
        option disabled '1'
        option country 'US'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'OpenWrt'
        option encryption 'none'
        option dtim_period '1'
        option max_inactivity '86400'
        option disassoc_low_ack '0'
        option wnm_sleep_mode '1'
        option disabled '1'

config wifi-device 'radio1'
        option type 'mac80211'
        option path 'platform/soc@0/c000000.wifi+1'
        option channel 'auto'
        option band '2g'
        option htmode 'HE40'
        option disabled '0'
        option country 'US'
        option cell_density '0'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option ssid 'OpenWrt'
        option encryption 'none'
        option dtim_period '1'
        option max_inactivity '86400'
        option disassoc_low_ack '0'
        option wnm_sleep_mode '1'

Edit 2: Appears to have been a client Issue. My pixel connects fine after rebooting it

After more than 12 hours seems still OK.
I use DNSMasq-full with odhcpd for IPv6.
No issues so far.
The new thing is this long line.

Tue Apr 30 09:15:44 2024 daemon.notice hostapd: Configuration file: data: driver=nl80211 logger_syslog=127 logger_syslog_level=2 logger_stdout=127 logger_stdout_level=2 country_code=xx ieee80211d=1 ieee80211h=1 hw_mode=a beacon_int=100 chanlist=36 noscan=1 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][DSSS_CCK-40] ieee80211ac=1 vht_oper_chwidth=2 vht_oper_centr_freq_seg0_idx=50 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][VHT160][MAX-MPDU-11454][MAX-A-MPDU-LEN-EXP7] ieee80211ax=1 he_oper_chwidth=2 he_oper_centr_freq_seg0_idx=50 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