mac80211: allow checksum offload only in fast-xmit
authorJohannes Berg <johannes.berg@intel.com>
Fri, 10 Apr 2015 12:10:10 +0000 (14:10 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 22 Apr 2015 09:25:29 +0000 (11:25 +0200)
commit2d981fddb0e4a5a4097d926f3b9fd3eaf25867a8
tree67e748ee9845d2f171281c9fd2a6f92a75ad4671
parent41fbf6e4f317964ec9005dd613bcb3c262db0a8a
mac80211: allow checksum offload only in fast-xmit

When we go through the complete TX processing, there are a number
of things like fragmentation and software crypto that require the
checksum to be calculated already.

In favour of maintainability, instead of adding the necessary call
to skb_checksum_help() in all the places that need it, just do it
once before the regular TX processing.

Right now this only affects the TI wlcore and QCA ath10k drivers
since they're the only ones using checksum offload. The previous
commits enabled fast-xmit for them in almost all cases.

For wlcore this even fixes a corner case: when a key fails to be
programmed to hardware software encryption gets used, encrypting
frames with a bad checksum.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/tx.c