aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/tc_act/tc_mirred.h
diff options
context:
space:
mode:
authorYotam Gigi <yotamg@mellanox.com>2016-07-21 12:03:16 +0200
committerDavid S. Miller <davem@davemloft.net>2016-07-24 23:12:00 -0700
commit56a20680f70393d199fc5e8ecc7859549ca5a0c0 (patch)
treecd44e79caaa447e725e81440c82227c2b811be15 /include/net/tc_act/tc_mirred.h
parentmlxsw: reg: Add the Monitoring Port Analyzer register (diff)
downloadlinux-dev-56a20680f70393d199fc5e8ecc7859549ca5a0c0.tar.xz
linux-dev-56a20680f70393d199fc5e8ecc7859549ca5a0c0.zip
net/sched: act_mirred: Add helper inlines to access tcf_mirred info.
The helper function is_tcf_mirred_mirror helps finding whether an action struct is of type mirred and is configured to be of type mirror. Signed-off-by: Yotam Gigi <yotamg@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r--include/net/tc_act/tc_mirred.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/net/tc_act/tc_mirred.h b/include/net/tc_act/tc_mirred.h
index e891835eb74e..6a13a7c74e0c 100644
--- a/include/net/tc_act/tc_mirred.h
+++ b/include/net/tc_act/tc_mirred.h
@@ -24,6 +24,15 @@ static inline bool is_tcf_mirred_redirect(const struct tc_action *a)
return false;
}
+static inline bool is_tcf_mirred_mirror(const struct tc_action *a)
+{
+#ifdef CONFIG_NET_CLS_ACT
+ if (a->ops && a->ops->type == TCA_ACT_MIRRED)
+ return to_mirred(a)->tcfm_eaction == TCA_EGRESS_MIRROR;
+#endif
+ return false;
+}
+
static inline int tcf_mirred_ifindex(const struct tc_action *a)
{
return to_mirred(a)->tcfm_ifindex;