[PATCH 09/20] headers: add dropreason.h backport for kernels < 6.0
Yi Cong <[email protected]> Wed, 24 Jun 2026 15:38:33 +0800
| Newsgroups | org.kernel.vger.backports |
|---|---|
| Message-ID | <[email protected]> |
From: Yi Cong <[email protected]> The subsystem-based drop reason infrastructure was introduced in v6.0 and extended in v6.4. Provide enum skb_drop_reason_subsys, struct drop_reason_list, and no-op stubs for drop_reasons_register_subsys() and drop_reasons_unregister_subsys() so that mac80211 compiles on older kernels. Signed-off-by: Yi Cong <[email protected]> --- backport/backport-include/net/dropreason.h | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 backport/backport-include/net/dropreason.h diff --git a/backport/backport-include/net/dropreason.h b/backport/backport-include/net/dropreason.h new file mode 100644 index 00000000..55b11c13 --- /dev/null +++ b/backport/backport-include/net/dropreason.h @@ -0,0 +1,43 @@ +#ifndef __BACKPORT_NET_DROPREASON_H +#define __BACKPORT_NET_DROPREASON_H +#include <linux/version.h> + +#if LINUX_VERSION_IS_GEQ(6,0,0) +/* On new kernels, the real header is already available. */ +#include_next <net/dropreason.h> +#else + +#include <net/dropreason-core.h> + +/* + * Minimal backport of the subsystem-based drop reason infrastructure + * that was introduced in kernel 6.0 and extended in 6.4. + */ + +enum skb_drop_reason_subsys { + SKB_DROP_REASON_SUBSYS_CORE, + SKB_DROP_REASON_SUBSYS_MAC80211_UNUSABLE, + SKB_DROP_REASON_SUBSYS_MAC80211_MONITOR, + SKB_DROP_REASON_SUBSYS_NUM +}; + +struct drop_reason_list { + const char * const *reasons; + size_t n_reasons; +}; + +/* No-op stubs for registration */ +static inline void +drop_reasons_register_subsys(enum skb_drop_reason_subsys subsys, + const struct drop_reason_list *list) +{ +} + +static inline void +drop_reasons_unregister_subsys(enum skb_drop_reason_subsys subsys) +{ +} + +#endif /* < 6.0 */ + +#endif /* __BACKPORT_NET_DROPREASON_H */ -- 2.43.0