summaryrefslogtreecommitdiffstats
path: root/include/net/act_api.h
diff options
context:
space:
mode:
authorAmritha Nambiar <amritha.nambiar@intel.com>2022-10-21 09:58:39 +0200
committerPaolo Abeni <pabeni@redhat.com>2022-10-25 10:32:40 +0200
commit4a6a676f8c16ec17d2f8d69ce3b5d680277ed0d2 (patch)
treea1014bbd973a3a8a61a26e0bea2114df665d6fe2 /include/net/act_api.h
parentMerge branch 'net-sfp-improve-high-power-module-implementation' (diff)
downloadlinux-4a6a676f8c16ec17d2f8d69ce3b5d680277ed0d2.tar.xz
linux-4a6a676f8c16ec17d2f8d69ce3b5d680277ed0d2.zip
act_skbedit: skbedit queue mapping for receive queue
Add support for skbedit queue mapping action on receive side. This is supported only in hardware, so the skip_sw flag is enforced. This enables offloading filters for receive queue selection in the hardware using the skbedit action. Traffic arrives on the Rx queue requested in the skbedit action parameter. A new tc action flag TCA_ACT_FLAGS_AT_INGRESS is introduced to identify the traffic direction the action queue_mapping is requested on during filter addition. This is used to disallow offloading the skbedit queue mapping action on transmit side. Example: $tc filter add dev $IFACE ingress protocol ip flower dst_ip $DST_IP\ action skbedit queue_mapping $rxq_id skip_sw Reviewed-by: Sridhar Samudrala <sridhar.samudrala@intel.com> Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'include/net/act_api.h')
-rw-r--r--include/net/act_api.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/net/act_api.h b/include/net/act_api.h
index 61f2ceb3939e..c94ea1a306e0 100644
--- a/include/net/act_api.h
+++ b/include/net/act_api.h
@@ -67,6 +67,7 @@ struct tc_action {
#define TCA_ACT_FLAGS_BIND (1U << (TCA_ACT_FLAGS_USER_BITS + 1))
#define TCA_ACT_FLAGS_REPLACE (1U << (TCA_ACT_FLAGS_USER_BITS + 2))
#define TCA_ACT_FLAGS_NO_RTNL (1U << (TCA_ACT_FLAGS_USER_BITS + 3))
+#define TCA_ACT_FLAGS_AT_INGRESS (1U << (TCA_ACT_FLAGS_USER_BITS + 4))
/* Update lastuse only if needed, to avoid dirtying a cache line.
* We use a temp variable to avoid fetching jiffies twice.