From: Felix Fietkau Date: Sat, 10 Feb 2018 12:20:34 +0000 (+0100) Subject: mac80211: round IEEE80211_TX_STATUS_HEADROOM up to multiple of 4 X-Git-Tag: v3.18.111~125 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d7680ddc5abb801eeb67b707518b50e363635be6;p=thirdparty%2Fkernel%2Fstable.git mac80211: round IEEE80211_TX_STATUS_HEADROOM up to multiple of 4 [ Upstream commit 651b9920d7a694ffb1f885aef2bbb068a25d9d66 ] This ensures that mac80211 allocated management frames are properly aligned, which makes copying them more efficient. For instance, mt76 uses iowrite32_copy to copy beacon frames to beacon template memory on the chip. Misaligned 32-bit accesses cause CPU exceptions on MIPS and should be avoided. Signed-off-by: Felix Fietkau Signed-off-by: Johannes Berg Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- diff --git a/include/net/mac80211.h b/include/net/mac80211.h index a9de1da73c011..0335c5d932a7e 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -3368,7 +3368,7 @@ static inline int ieee80211_sta_ps_transition_ni(struct ieee80211_sta *sta, * The TX headroom reserved by mac80211 for its own tx_status functions. * This is enough for the radiotap header. */ -#define IEEE80211_TX_STATUS_HEADROOM 14 +#define IEEE80211_TX_STATUS_HEADROOM ALIGN(14, 4) /** * ieee80211_sta_set_buffered - inform mac80211 about driver-buffered frames