[PATCH 10/20] headers: add kfree_skb_reason() backport for kernels < 5.17
Yi Cong <[email protected]> Wed, 24 Jun 2026 15:38:34 +0800
| Newsgroups | org.kernel.vger.backports |
|---|---|
| Message-ID | <[email protected]> |
From: Yi Cong <[email protected]> kfree_skb_reason() was introduced in v5.17 along with enum skb_drop_reason. Provide an inline wrapper that discards the reason and calls kfree_skb() on older kernels. Signed-off-by: Yi Cong <[email protected]> --- backport/backport-include/linux/skbuff.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/backport/backport-include/linux/skbuff.h b/backport/backport-include/linux/skbuff.h index 36b83fdf..8193448d 100644 --- a/backport/backport-include/linux/skbuff.h +++ b/backport/backport-include/linux/skbuff.h @@ -103,4 +103,21 @@ static inline bool skb_queue_empty_lockless(const struct sk_buff_head *list) } #endif /* < 5.4 */ +#if LINUX_VERSION_IS_LESS(5,17,0) +/* + * kfree_skb_reason() was introduced in kernel 5.17 along with + * enum skb_drop_reason. For older kernels provide a simple wrapper + * that discards the reason and calls kfree_skb(). + * + * The enum is provided in our backport dropreason-core.h header. + */ +#include <net/dropreason-core.h> + +static inline void kfree_skb_reason(struct sk_buff *skb, + enum skb_drop_reason reason) +{ + kfree_skb(skb); +} +#endif + #endif /* __BACKPORT_SKBUFF_H */ -- 2.43.0