diff options
author | Qiaobin Fu <qiaobinf@bu.edu> | 2018-07-01 15:16:27 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-07-04 21:27:42 +0900 |
commit | e7e3728bd776d1d1450212ad266832f1003f833f (patch) | |
tree | c3eddf4c4e158e03dd0ff7435578ab2b8d2bce74 /include/uapi/linux/tc_act | |
parent | f145b0a707ac2abbc40c107b10cb3969b9d7e7ad (diff) | |
download | linux-stable-e7e3728bd776d1d1450212ad266832f1003f833f.tar.gz linux-stable-e7e3728bd776d1d1450212ad266832f1003f833f.tar.bz2 linux-stable-e7e3728bd776d1d1450212ad266832f1003f833f.zip |
net:sched: add action inheritdsfield to skbedit
The new action inheritdsfield copies the field DS of
IPv4 and IPv6 packets into skb->priority. This enables
later classification of packets based on the DS field.
v5:
*Update the drop counter for TC_ACT_SHOT
v4:
*Not allow setting flags other than the expected ones.
*Allow dumping the pure flags.
v3:
*Use optional flags, so that it won't break old versions of tc.
*Allow users to set both SKBEDIT_F_PRIORITY and SKBEDIT_F_INHERITDSFIELD flags.
v2:
*Fix the style issue
*Move the code from skbmod to skbedit
Original idea by Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: Qiaobin Fu <qiaobinf@bu.edu>
Reviewed-by: Michel Machado <michel@digirati.com.br>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Reviewed-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Acked-by: Davide Caratti <dcaratti@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux/tc_act')
-rw-r--r-- | include/uapi/linux/tc_act/tc_skbedit.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/uapi/linux/tc_act/tc_skbedit.h b/include/uapi/linux/tc_act/tc_skbedit.h index fbcfe27a4e6c..6de6071ebed6 100644 --- a/include/uapi/linux/tc_act/tc_skbedit.h +++ b/include/uapi/linux/tc_act/tc_skbedit.h @@ -30,6 +30,7 @@ #define SKBEDIT_F_MARK 0x4 #define SKBEDIT_F_PTYPE 0x8 #define SKBEDIT_F_MASK 0x10 +#define SKBEDIT_F_INHERITDSFIELD 0x20 struct tc_skbedit { tc_gen; @@ -45,6 +46,7 @@ enum { TCA_SKBEDIT_PAD, TCA_SKBEDIT_PTYPE, TCA_SKBEDIT_MASK, + TCA_SKBEDIT_FLAGS, __TCA_SKBEDIT_MAX }; #define TCA_SKBEDIT_MAX (__TCA_SKBEDIT_MAX - 1) |