diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2015-05-14 10:34:48 +0200 |
---|---|---|
committer | Kalle Valo <kvalo@codeaurora.org> | 2015-05-26 12:54:23 +0200 |
commit | 191f1aeeb93bb58e56f4d1868294ae22f3f67d4e (patch) | |
tree | 167648df470def9ae6b4569a3db6cfe851387349 /drivers/net/wireless/rndis_wlan.c | |
parent | brcmfmac: avoid gcc-5.1 warning (diff) | |
download | linux-191f1aeeb93bb58e56f4d1868294ae22f3f67d4e.tar.xz linux-191f1aeeb93bb58e56f4d1868294ae22f3f67d4e.zip |
ath9k_htc: memory corruption calling set_bit()
In d8a2c51cdcae ('ath9k_htc: Use atomic operations for op_flags') we
changed things like this:
- if (priv->op_flags & OP_TSF_RESET) {
+ if (test_bit(OP_TSF_RESET, &priv->op_flags)) {
The problem is that test_bit() takes a bit number and not a mask. It
means that when we do:
set_bit(OP_TSF_RESET, &priv->op_flags);
Then it sets the (1 << 6) bit instead of the 6 bit so we are setting a
bit which is past the end of the unsigned long.
Fixes: d8a2c51cdcae ('ath9k_htc: Use atomic operations for op_flags')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/rndis_wlan.c')
0 files changed, 0 insertions, 0 deletions