net: sched: introduce helper to identify gact trap action
authorJiri Pirko <jiri@mellanox.com>
Tue, 6 Jun 2017 12:12:03 +0000 (14:12 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 6 Jun 2017 16:45:23 +0000 (12:45 -0400)
Introduce a helper called is_tcf_gact_trap which could be used to
tell if the action is gact trap or not.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Reviewed-by: Yotam Gigi <yotamg@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/tc_act/tc_gact.h

index b6f173910226795045ccb5b62d7029c95a6f6c99..d576374c4d6fb5a3bf3b52cb85c8ae717d7cb8fb 100644 (file)
@@ -15,7 +15,7 @@ struct tcf_gact {
 };
 #define to_gact(a) ((struct tcf_gact *)a)
 
-static inline bool is_tcf_gact_shot(const struct tc_action *a)
+static inline bool __is_tcf_gact_act(const struct tc_action *a, int act)
 {
 #ifdef CONFIG_NET_CLS_ACT
        struct tcf_gact *gact;
@@ -24,10 +24,21 @@ static inline bool is_tcf_gact_shot(const struct tc_action *a)
                return false;
 
        gact = to_gact(a);
-       if (gact->tcf_action == TC_ACT_SHOT)
+       if (gact->tcf_action == act)
                return true;
 
 #endif
        return false;
 }
+
+static inline bool is_tcf_gact_shot(const struct tc_action *a)
+{
+       return __is_tcf_gact_act(a, TC_ACT_SHOT);
+}
+
+static inline bool is_tcf_gact_trap(const struct tc_action *a)
+{
+       return __is_tcf_gact_act(a, TC_ACT_TRAP);
+}
+
 #endif /* __NET_TC_GACT_H */