mac80211: move WEP tailroom size check
authorJanusz Dziedzic <janusz.dziedzic@tieto.com>
Mon, 11 May 2015 09:31:15 +0000 (11:31 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 11 May 2015 12:51:29 +0000 (14:51 +0200)
commit47b4e1fc4972cc43a19121bc2608a60aef3bf216
tree30e073ff07e403ad2586784cde8bbad2d921b67a
parentff419b3f95ab7a97c5f72876b53f12a249dacc2a
mac80211: move WEP tailroom size check

Remove checking tailroom when adding IV as it uses only
headroom, and move the check to the ICV generation that
actually needs the tailroom.

In other case I hit such warning and datapath don't work,
when testing:
- IBSS + WEP
- ath9k with hw crypt enabled
- IPv6 data (ping6)

WARNING: CPU: 3 PID: 13301 at net/mac80211/wep.c:102 ieee80211_wep_add_iv+0x129/0x190 [mac80211]()
[...]
Call Trace:
[<ffffffff817bf491>] dump_stack+0x45/0x57
[<ffffffff8107746a>] warn_slowpath_common+0x8a/0xc0
[<ffffffff8107755a>] warn_slowpath_null+0x1a/0x20
[<ffffffffc09ae109>] ieee80211_wep_add_iv+0x129/0x190 [mac80211]
[<ffffffffc09ae7ab>] ieee80211_crypto_wep_encrypt+0x6b/0xd0 [mac80211]
[<ffffffffc09d3fb1>] invoke_tx_handlers+0xc51/0xf30 [mac80211]
[...]

Cc: stable@vger.kernel.org
Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/wep.c