From e95b359eaab94f0626cebdf18938d5f8ccff5b22 Mon Sep 17 00:00:00 2001 From: Kabuli Chana Date: Sun, 7 Aug 2022 17:05:51 -0600 Subject: [PATCH] kernel: netsupport: Add FQ-PIE as an optional sched kmod and extract PIE add Flow Queuing with Proportional Integral controller Enhanced (FQ-PIE) as an optional kmod in network support and extract sched-pie from kmod-sched to allow dependency on just kmod-sched-pie (PIE). Signed-off-by: Kabuli Chana (cherry picked from commit c3e4a0d99b972b91dd65f535365b9b71fcb541ae) --- package/kernel/linux/modules/netsupport.mk | 35 ++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/package/kernel/linux/modules/netsupport.mk b/package/kernel/linux/modules/netsupport.mk index 380f53db7b..f077947a92 100644 --- a/package/kernel/linux/modules/netsupport.mk +++ b/package/kernel/linux/modules/netsupport.mk @@ -924,6 +924,22 @@ endef $(eval $(call KernelPackage,sched-flower)) +define KernelPackage/sched-fq-pie + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=Flow Queue Proportional Integral Enhanced (FQ-PIE) + DEPENDS:=+kmod-sched-core +kmod-sched-pie + KCONFIG:=CONFIG_NET_SCH_FQ_PIE + FILES:=$(LINUX_DIR)/net/sched/sch_fq_pie.ko + AUTOLOAD:=$(call AutoProbe, sch_fq_pie) +endef + +define KernelPackage/sched-fq-pie/description + A queuing discipline that combines Flow Queuing with the PIE AQM. +endef + +$(eval $(call KernelPackage,sched-fq-pie)) + + define KernelPackage/sched-ipset SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=Traffic shaper ipset support @@ -954,6 +970,22 @@ endef $(eval $(call KernelPackage,sched-mqprio)) +define KernelPackage/sched-pie + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=Proportional Integral controller-Enhanced AQM (PIE) + DEPENDS:=+kmod-sched-core + KCONFIG:=CONFIG_NET_SCH_PIE + FILES:=$(LINUX_DIR)/net/sched/sch_pie.ko + AUTOLOAD:=$(call AutoProbe, sch_pie) +endef + +define KernelPackage/sched-pie/description + A control theoretic active queue management scheme. +endef + +$(eval $(call KernelPackage,sched-pie)) + + define KernelPackage/sched-prio SUBMENU:=$(NETWORK_SUPPORT_MENU) TITLE:=Multi Band Priority Queueing (PRIO) @@ -996,7 +1028,7 @@ 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_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 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 @@ -1011,7 +1043,6 @@ define KernelPackage/sched CONFIG_NET_SCH_SFQ \ CONFIG_NET_SCH_TEQL \ CONFIG_NET_SCH_FQ \ - CONFIG_NET_SCH_PIE \ CONFIG_NET_ACT_PEDIT \ CONFIG_NET_ACT_SIMP \ CONFIG_NET_ACT_CSUM \ -- 2.30.2