kernel: extract kmod-sched-act-ipt from kmod-sched
authorStijn Tintel <stijn@linux-ipv6.be>
Thu, 21 Jul 2022 16:26:56 +0000 (18:26 +0200)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 5 Nov 2022 21:57:49 +0000 (22:57 +0100)
There is only one module in kmod-sched that depends on iptables. Move it
to its own kmod package so we can drop the kmod-ipt-core dependency from
kmod-sched. This makes it possible to disable all kmod-ipt-* packages
without having to disable kmod-sched. Since we now default to firewall4
and nftables, we should avoid iptables dependencies where we can.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
(cherry picked from commit 05775e38a52007397e5460bd87fa1ac957feb2af)

package/kernel/linux/modules/netsupport.mk

index 86b384f6e14dfac9965acf4fb8d0b0ad65d56abb..380f53db7b183c3c731dd10834095c8b3d3ac9d8 100644 (file)
@@ -807,6 +807,22 @@ endef
 $(eval $(call KernelPackage,sched-act-sample))
 
 
+define KernelPackage/sched-act-ipt
+  SUBMENU:=$(NETWORK_SUPPORT_MENU)
+  TITLE:=IPtables targets
+  DEPENDS:=+kmod-ipt-core +kmod-sched-core
+  KCONFIG:=CONFIG_NET_ACT_IPT
+  FILES:=$(LINUX_DIR)/net/sched/act_ipt.ko
+  AUTOLOAD:=$(call AutoProbe, act_ipt)
+endef
+
+define KernelPackage/sched-act-ipt/description
+  Allows to invoke iptables targets after successful classification.
+endef
+
+$(eval $(call KernelPackage,sched-act-ipt))
+
+
 define KernelPackage/sched-act-vlan
   SUBMENU:=$(NETWORK_SUPPORT_MENU)
   TITLE:=Traffic VLAN manipulation
@@ -980,13 +996,13 @@ endef
 $(eval $(call KernelPackage,bpf-test))
 
 
-SCHED_MODULES_EXTRA = sch_codel sch_dsmark sch_gred sch_multiq sch_sfq sch_teql sch_fq sch_pie act_ipt act_pedit act_simple act_csum em_cmp em_nbyte em_meta em_text
+SCHED_MODULES_EXTRA = sch_codel sch_dsmark sch_gred sch_multiq sch_sfq sch_teql sch_fq sch_pie act_pedit act_simple act_csum em_cmp em_nbyte em_meta em_text
 SCHED_FILES_EXTRA = $(foreach mod,$(SCHED_MODULES_EXTRA),$(LINUX_DIR)/net/sched/$(mod).ko)
 
 define KernelPackage/sched
   SUBMENU:=$(NETWORK_SUPPORT_MENU)
   TITLE:=Extra traffic schedulers
-  DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-lib-crc32c +kmod-lib-textsearch
+  DEPENDS:=+kmod-sched-core +kmod-lib-crc32c +kmod-lib-textsearch
   KCONFIG:= \
        CONFIG_NET_SCH_CODEL \
        CONFIG_NET_SCH_DSMARK \
@@ -996,7 +1012,6 @@ define KernelPackage/sched
        CONFIG_NET_SCH_TEQL \
        CONFIG_NET_SCH_FQ \
        CONFIG_NET_SCH_PIE \
-       CONFIG_NET_ACT_IPT \
        CONFIG_NET_ACT_PEDIT \
        CONFIG_NET_ACT_SIMP \
        CONFIG_NET_ACT_CSUM \