diff mbox series

[OpenWrt-Devel,v2] Add generic actions to sched-core

Message ID 20181128165929.36380-1-jonathan@navigue.com
State Changes Requested
Delegated to: John Crispin
Headers show
Series [OpenWrt-Devel,v2] Add generic actions to sched-core | expand

Commit Message

Jonathan Thibault Nov. 28, 2018, 4:59 p.m. UTC
Greetings,

Next in my series of 'OpenWRT as a network swiss army knife' patches, I
suggest having the ability to accept/drop frames with TC as part of
sched-core.  This can be useful in cases where you need very fast (if
simplistic) packet filtering.  I believe they are basic enough to be
considered 'core' functionality.

Alternatively they could be packaged in kmod-sched since they aren't
used often. At 9304 bytes (on octeon), I'm not sure it makes much of a
difference.

---
v2: Used git send-email to avoid patch mangling.
---
 package/kernel/linux/modules/netsupport.mk | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

John Crispin Dec. 3, 2018, 6:37 a.m. UTC | #1
On 28/11/2018 17:59, Jonathan Thibault wrote:
> Greetings,
>
> Next in my series of 'OpenWRT as a network swiss army knife' patches, I
> suggest having the ability to accept/drop frames with TC as part of
> sched-core.  This can be useful in cases where you need very fast (if
> simplistic) packet filtering.  I believe they are basic enough to be
> considered 'core' functionality.
>
> Alternatively they could be packaged in kmod-sched since they aren't
> used often. At 9304 bytes (on octeon), I'm not sure it makes much of a
> difference.


Hi,

sched-core is dependet on by these 2 packages and should only contain 
features required by them
package/network/utils/iproute2/Makefile:  DEPENDS:=+kmod-sched-core 
+(PACKAGE_devlink||PACKAGE_rdma):libmnl
package/network/config/qos-scripts/Makefile:  DEPENDS:=+tc 
+kmod-sched-core +kmod-sched-connmark +kmod-ifb +iptables 
+iptables-mod-ipopt +iptables-mod-conntrack-extra
     John


> ---
> v2: Used git send-email to avoid patch mangling.
> ---
>   package/kernel/linux/modules/netsupport.mk | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/package/kernel/linux/modules/netsupport.mk b/package/kernel/linux/modules/netsupport.mk
> index f94c20d861..d822a93f1b 100644
> --- a/package/kernel/linux/modules/netsupport.mk
> +++ b/package/kernel/linux/modules/netsupport.mk
> @@ -716,7 +716,7 @@ $(eval $(call KernelPackage,mppe))
>   
>   
>   SCHED_MODULES = $(patsubst $(LINUX_DIR)/net/sched/%.ko,%,$(wildcard $(LINUX_DIR)/net/sched/*.ko))
> -SCHED_MODULES_CORE = sch_ingress sch_fq_codel sch_hfsc sch_htb sch_tbf cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_mirred act_skbedit
> +SCHED_MODULES_CORE = sch_ingress sch_fq_codel sch_hfsc sch_htb sch_tbf cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_gact act_mirred act_skbedit
>   SCHED_MODULES_FILTER = $(SCHED_MODULES_CORE) act_connmark sch_netem
>   SCHED_MODULES_EXTRA = $(filter-out $(SCHED_MODULES_FILTER),$(SCHED_MODULES))
>   SCHED_FILES = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(filter $(SCHED_MODULES_CORE),$(SCHED_MODULES)))
> @@ -739,6 +739,7 @@ define KernelPackage/sched-core
>   	CONFIG_NET_CLS_ROUTE4 \
>   	CONFIG_NET_CLS_TCINDEX \
>   	CONFIG_NET_CLS_U32 \
> +	CONFIG_NET_ACT_GACT \
>   	CONFIG_NET_ACT_MIRRED \
>   	CONFIG_NET_ACT_SKBEDIT \
>   	CONFIG_NET_EMATCH=y \
Jonathan Thibault Dec. 4, 2018, 4:23 p.m. UTC | #2
On 03/12/18 01:37 AM, John Crispin wrote:
> Hi,
>
> sched-core is dependet on by these 2 packages and should only contain 
> features required by them
> package/network/utils/iproute2/Makefile: DEPENDS:=+kmod-sched-core 
> +(PACKAGE_devlink||PACKAGE_rdma):libmnl
> package/network/config/qos-scripts/Makefile:  DEPENDS:=+tc 
> +kmod-sched-core +kmod-sched-connmark +kmod-ifb +iptables 
> +iptables-mod-ipopt +iptables-mod-conntrack-extra
>     John 
Does anyone have objections to putting generic actions in kmod-sched as 
I alternatively suggested then?  I don't mind resubmitting patches as I 
learn the ropes but I don't want to get on people's nerves by generating 
too much noise.
diff mbox series

Patch

diff --git a/package/kernel/linux/modules/netsupport.mk b/package/kernel/linux/modules/netsupport.mk
index f94c20d861..d822a93f1b 100644
--- a/package/kernel/linux/modules/netsupport.mk
+++ b/package/kernel/linux/modules/netsupport.mk
@@ -716,7 +716,7 @@  $(eval $(call KernelPackage,mppe))
 
 
 SCHED_MODULES = $(patsubst $(LINUX_DIR)/net/sched/%.ko,%,$(wildcard $(LINUX_DIR)/net/sched/*.ko))
-SCHED_MODULES_CORE = sch_ingress sch_fq_codel sch_hfsc sch_htb sch_tbf cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_mirred act_skbedit
+SCHED_MODULES_CORE = sch_ingress sch_fq_codel sch_hfsc sch_htb sch_tbf cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_gact act_mirred act_skbedit
 SCHED_MODULES_FILTER = $(SCHED_MODULES_CORE) act_connmark sch_netem
 SCHED_MODULES_EXTRA = $(filter-out $(SCHED_MODULES_FILTER),$(SCHED_MODULES))
 SCHED_FILES = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(filter $(SCHED_MODULES_CORE),$(SCHED_MODULES)))
@@ -739,6 +739,7 @@  define KernelPackage/sched-core
 	CONFIG_NET_CLS_ROUTE4 \
 	CONFIG_NET_CLS_TCINDEX \
 	CONFIG_NET_CLS_U32 \
+	CONFIG_NET_ACT_GACT \
 	CONFIG_NET_ACT_MIRRED \
 	CONFIG_NET_ACT_SKBEDIT \
 	CONFIG_NET_EMATCH=y \