Skip to content

Commit c0318b5

Browse files
committed
qca-nss-ecm: Fix WiFi speed
Invoking iptables require lots of CPU resources.
1 parent 2cc0722 commit c0318b5

File tree

5 files changed

+621
-74
lines changed

5 files changed

+621
-74
lines changed

package/kernel/qca/qca-nss-ecm/Makefile

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ define KernelPackage/qca-nss-ecm/Default
4040
+PACKAGE_kmod-qca-ovsmgr:kmod-qca-ovsmgr
4141
TITLE:=QCA NSS Enhanced Connection Manager (ECM)
4242
FILES:=$(PKG_BUILD_DIR)/*.ko $(FILES_EXAMPLES) $(PKG_BUILD_DIR)/examples/ecm_ae_select.ko
43-
KCONFIG:=CONFIG_BRIDGE_NETFILTER=y \
43+
KCONFIG:= \
4444
CONFIG_NF_CONNTRACK_EVENTS=y \
4545
CONFIG_NF_CONNTRACK_CHAIN_EVENTS=y \
4646
CONFIG_NF_CONNTRACK_DSCPREMARK_EXT=y
@@ -63,7 +63,7 @@ define KernelPackage/qca-nss-ecm-nonss/Default
6363
PACKAGE_kmod-emesh-sp:kmod-emesh-sp
6464
TITLE:=QCA NSS Enhanced Connection Manager (ECM)
6565
FILES:=$(PKG_BUILD_DIR)/*.ko $(FILES_EXAMPLES) $(PKG_BUILD_DIR)/examples/ecm_ae_select.ko
66-
KCONFIG:=CONFIG_BRIDGE_NETFILTER=y \
66+
KCONFIG:= \
6767
CONFIG_NF_CONNTRACK_EVENTS=y \
6868
CONFIG_NF_CONNTRACK_CHAIN_EVENTS=y \
6969
CONFIG_NF_CONNTRACK_DSCPREMARK_EXT=y
@@ -76,13 +76,11 @@ This package contains the QCA NSS Enhanced Connection Manager
7676
endef
7777

7878
define KernelPackage/qca-nss-ecm/Default/install
79-
$(INSTALL_DIR) $(1)/etc/firewall.d $(1)/etc/init.d $(1)/usr/bin $(1)/lib/netifd/offload $(1)/etc/config $(1)/etc/uci-defaults $(1)/etc/sysctl.d
80-
$(INSTALL_DATA) ./files/qca-nss-ecm.firewall $(1)/etc/firewall.d/qca-nss-ecm
79+
$(INSTALL_DIR) $(1)/etc/init.d $(1)/usr/bin $(1)/lib/netifd/offload $(1)/etc/config $(1)/etc/sysctl.d
8180
$(INSTALL_BIN) ./files/qca-nss-ecm.init $(1)/etc/init.d/qca-nss-ecm
8281
$(INSTALL_BIN) ./files/ecm_dump.sh $(1)/usr/bin/
8382
$(INSTALL_BIN) ./files/on-demand-down $(1)/lib/netifd/offload/on-demand-down
8483
$(INSTALL_DATA) ./files/qca-nss-ecm.uci $(1)/etc/config/ecm
85-
$(INSTALL_DATA) ./files/qca-nss-ecm.defaults $(1)/etc/uci-defaults/99-qca-nss-ecm
8684
$(INSTALL_BIN) ./files/qca-nss-ecm.sysctl $(1)/etc/sysctl.d/qca-nss-ecm.conf
8785
# ifeq ($(CONFIG_KERNEL_IPQ_MEM_PROFILE),256)
8886
# echo 'net.netfilter.nf_conntrack_max=2048' >> $(1)/etc/sysctl.d/qca-nss-ecm.conf

package/kernel/qca/qca-nss-ecm/files/qca-nss-ecm.defaults

Lines changed: 0 additions & 28 deletions
This file was deleted.

package/kernel/qca/qca-nss-ecm/files/qca-nss-ecm.firewall

Lines changed: 0 additions & 18 deletions
This file was deleted.

package/kernel/qca/qca-nss-ecm/files/qca-nss-ecm.init

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,6 @@ get_front_end_mode() {
4242
esac
4343
}
4444

45-
support_bridge() {
46-
#NSS support bridge acceleration
47-
[ -d /sys/kernel/debug/ecm/ecm_nss_ipv4 ] && return 0
48-
#SFE doesn't support bridge acceleration
49-
[ -d /sys/kernel/debug/ecm/ecm_sfe_ipv4 ] && return 1
50-
}
51-
5245
load_sfe() {
5346
local kernel_version=$(uname -r)
5447

@@ -74,17 +67,9 @@ load_ecm() {
7467
insmod ecm_ae_select
7568
fi
7669
}
77-
78-
support_bridge && {
79-
sysctl -w net.bridge.bridge-nf-call-ip6tables=1
80-
sysctl -w net.bridge.bridge-nf-call-iptables=1
81-
}
8270
}
8371

8472
unload_ecm() {
85-
sysctl -w net.bridge.bridge-nf-call-ip6tables=0
86-
sysctl -w net.bridge.bridge-nf-call-iptables=0
87-
8873
if [ -d /sys/module/ecm ]; then
8974
#
9075
# Stop ECM frontends
@@ -120,11 +105,6 @@ start() {
120105
# If the acceleration engine is NSS, enable wifi redirect.
121106
[ -d /sys/kernel/debug/ecm/ecm_nss_ipv4 ] && sysctl -w dev.nss.general.redirect=1
122107

123-
support_bridge && {
124-
echo 'net.bridge.bridge-nf-call-ip6tables=1' >> /etc/sysctl.d/qca-nss-ecm.conf
125-
echo 'net.bridge.bridge-nf-call-iptables=1' >> /etc/sysctl.d/qca-nss-ecm.conf
126-
}
127-
128108
if [ -d /sys/module/qca_ovsmgr ]; then
129109
insmod ecm_ovs
130110
fi
@@ -140,9 +120,6 @@ stop() {
140120
# If the acceleration engine is NSS, disable wifi redirect.
141121
[ -d /sys/kernel/debug/ecm/ecm_nss_ipv4 ] && sysctl -w dev.nss.general.redirect=0
142122

143-
sed '/net.bridge.bridge-nf-call-ip6tables=1/d' -i /etc/sysctl.d/qca-nss-ecm.conf
144-
sed '/net.bridge.bridge-nf-call-iptables=1/d' -i /etc/sysctl.d/qca-nss-ecm.conf
145-
146123
if [ -d /sys/module/ecm_ovs ]; then
147124
rmmod ecm_ovs
148125
fi

0 commit comments

Comments
 (0)