xref: /openbmc/linux/net/openvswitch/drop.h (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
19d802da4SAdrian Moreno /* SPDX-License-Identifier: GPL-2.0-only */
29d802da4SAdrian Moreno /*
39d802da4SAdrian Moreno  * OpenvSwitch drop reason list.
49d802da4SAdrian Moreno  */
59d802da4SAdrian Moreno 
69d802da4SAdrian Moreno #ifndef OPENVSWITCH_DROP_H
79d802da4SAdrian Moreno #define OPENVSWITCH_DROP_H
89d802da4SAdrian Moreno #include <linux/skbuff.h>
99d802da4SAdrian Moreno #include <net/dropreason.h>
109d802da4SAdrian Moreno 
119d802da4SAdrian Moreno #define OVS_DROP_REASONS(R)			\
129d802da4SAdrian Moreno 	R(OVS_DROP_LAST_ACTION)		        \
13ec7bfb5eSAdrian Moreno 	R(OVS_DROP_ACTION_ERROR)		\
14e7bc7db9SEric Garver 	R(OVS_DROP_EXPLICIT)			\
15e7bc7db9SEric Garver 	R(OVS_DROP_EXPLICIT_WITH_ERROR)		\
16f329d1bcSAdrian Moreno 	R(OVS_DROP_METER)			\
17*43d95b30SAdrian Moreno 	R(OVS_DROP_RECURSION_LIMIT)		\
18*43d95b30SAdrian Moreno 	R(OVS_DROP_DEFERRED_LIMIT)		\
19*43d95b30SAdrian Moreno 	R(OVS_DROP_FRAG_L2_TOO_LONG)		\
20*43d95b30SAdrian Moreno 	R(OVS_DROP_FRAG_INVALID_PROTO)		\
21*43d95b30SAdrian Moreno 	R(OVS_DROP_CONNTRACK)			\
22*43d95b30SAdrian Moreno 	R(OVS_DROP_IP_TTL)			\
239d802da4SAdrian Moreno 	/* deliberate comment for trailing \ */
249d802da4SAdrian Moreno 
259d802da4SAdrian Moreno enum ovs_drop_reason {
269d802da4SAdrian Moreno 	__OVS_DROP_REASON = SKB_DROP_REASON_SUBSYS_OPENVSWITCH <<
279d802da4SAdrian Moreno 				SKB_DROP_REASON_SUBSYS_SHIFT,
289d802da4SAdrian Moreno #define ENUM(x) x,
299d802da4SAdrian Moreno 	OVS_DROP_REASONS(ENUM)
309d802da4SAdrian Moreno #undef ENUM
319d802da4SAdrian Moreno 
329d802da4SAdrian Moreno 	OVS_DROP_MAX,
339d802da4SAdrian Moreno };
349d802da4SAdrian Moreno 
359d802da4SAdrian Moreno static inline void
ovs_kfree_skb_reason(struct sk_buff * skb,enum ovs_drop_reason reason)369d802da4SAdrian Moreno ovs_kfree_skb_reason(struct sk_buff *skb, enum ovs_drop_reason reason)
379d802da4SAdrian Moreno {
389d802da4SAdrian Moreno 	kfree_skb_reason(skb, (u32)reason);
399d802da4SAdrian Moreno }
409d802da4SAdrian Moreno 
419d802da4SAdrian Moreno #endif /* OPENVSWITCH_DROP_H */
42