Re: [RFC/RFT v2] mac80211: Add NEED_ALIGNED4_SKBS hw flag
On Fri, 2015-12-18 at 12:57 +0100, Janusz Dziedzic wrote: > HW/driver should set NEED_ALIGNED4_SKBS flag in case require > aligned skbs to four-byte boundaries. > > Before we have to do memmove() in the driver before > pass this to HW and memmove() back in tx completion. > This patch allow to save CPU and skip such memmoves. > For each skb we call memmove(ieee80211_hdrsize()) twice. > > Currently this was tested with ath9k, both hw/sw crypt for > tkip/ccmp. > For sure more tests required (eg. fast path isn't used for > ath9k STA, wep sw crypt). > > Signed-off-by: Janusz Dziedzic > --- > include/net/mac80211.h | 4 > net/mac80211/debugfs.c | 1 + > net/mac80211/ieee80211_i.h | 1 + > net/mac80211/sta_info.h| 4 ++-- > net/mac80211/tkip.c| 15 --- > net/mac80211/tx.c | 38 +--- > -- > net/mac80211/util.c| 7 ++- > net/mac80211/wep.c | 11 ++- > net/mac80211/wep.h | 1 + > net/mac80211/wpa.c | 14 ++ > 10 files changed, 72 insertions(+), 24 deletions(-) > Btw, how can you get away without changing the status path? johannes -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC/RFT v2] mac80211: Add NEED_ALIGNED4_SKBS hw flag
On 18 December 2015 at 13:07, Johannes Berg wrote: > On Fri, 2015-12-18 at 12:57 +0100, Janusz Dziedzic wrote: >> HW/driver should set NEED_ALIGNED4_SKBS flag in case require >> aligned skbs to four-byte boundaries. >> >> Before we have to do memmove() in the driver before >> pass this to HW and memmove() back in tx completion. >> This patch allow to save CPU and skip such memmoves. >> For each skb we call memmove(ieee80211_hdrsize()) twice. >> >> Currently this was tested with ath9k, both hw/sw crypt for >> tkip/ccmp. >> For sure more tests required (eg. fast path isn't used for >> ath9k STA, wep sw crypt). >> >> Signed-off-by: Janusz Dziedzic >> --- >> include/net/mac80211.h | 4 >> net/mac80211/debugfs.c | 1 + >> net/mac80211/ieee80211_i.h | 1 + >> net/mac80211/sta_info.h| 4 ++-- >> net/mac80211/tkip.c| 15 --- >> net/mac80211/tx.c | 38 +--- >> -- >> net/mac80211/util.c| 7 ++- >> net/mac80211/wep.c | 11 ++- >> net/mac80211/wep.h | 1 + >> net/mac80211/wpa.c | 14 ++ >> 10 files changed, 72 insertions(+), 24 deletions(-) >> > Btw, how can you get away without changing the status path? > Yes, this is still missed. > johannes -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html