diff mbox series

[2/4] mt76: fix corrupted software generated tx CCMP PN

Message ID 20190218194218.41314-2-nbd@nbd.name (mailing list archive)
State Accepted
Delegated to: Kalle Valo
Headers show
Series [1/4] mt76: fix tx status timeout processing | expand

Commit Message

Felix Fietkau Feb. 18, 2019, 7:42 p.m. UTC
Since ccmp_pn is u8 *, the second half needs to start at array index 4
instead of 0. Fixes a connection stall after a certain amount of traffic

Fixes: 23405236460b9 ("mt76: fix transmission of encrypted management frames")
Cc: stable@vger.kernel.org
Signed-off-by: Felix Fietkau <nbd@nbd.name>
---
 drivers/net/wireless/mediatek/mt76/mt76x02_mac.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Sasha Levin Feb. 22, 2019, 3:24 p.m. UTC | #1
Hi,

[This is an automated email]

This commit has been processed because it contains a "Fixes:" tag,
fixing commit: 23405236460b mt76: fix transmission of encrypted management frames.

The bot has tested the following trees: v4.20.11, v4.19.24.

v4.19.24: Failed to apply! Possible dependencies:
    047aed1c38cf ("mt76: unify mac_shared_key_setup")
    108a4861ef19 ("mt76: create new mt76x02-lib module for common mt76x{0,2} code")
    2735a6dd7df3 ("mt76: unify wait_for_mac")
    32bb405fe2bc ("mt76: unify mac_wcid_setup")
    427f9ebec682 ("mt76: move mt76x02_mac_write_txwi in mt76x02-lib module")
    46436b5ef9dd ("mt76: unify mac_wcid_set_key")
    516ea2a2a9d4 ("mt76: use mac_wcid_set_drop in mt76x0")
    797ea2407825 ("mt76: merge mt76x0/regs.h into mt76x02_regs.h")
    c378f2473466 ("mt76: unify mac_get_key_info")
    f5a7f126e5fe ("mt76: unify sta structure part 1")


How should we proceed with this patch?

--
Thanks,
Sasha
diff mbox series

Patch

diff --git a/drivers/net/wireless/mediatek/mt76/mt76x02_mac.c b/drivers/net/wireless/mediatek/mt76/mt76x02_mac.c
index bf39624c9b98..eab713723b7e 100644
--- a/drivers/net/wireless/mediatek/mt76/mt76x02_mac.c
+++ b/drivers/net/wireless/mediatek/mt76/mt76x02_mac.c
@@ -314,7 +314,7 @@  void mt76x02_mac_write_txwi(struct mt76x02_dev *dev, struct mt76x02_txwi *txwi,
 		ccmp_pn[6] = pn >> 32;
 		ccmp_pn[7] = pn >> 40;
 		txwi->iv = *((__le32 *)&ccmp_pn[0]);
-		txwi->eiv = *((__le32 *)&ccmp_pn[1]);
+		txwi->eiv = *((__le32 *)&ccmp_pn[4]);
 	}
 
 	spin_lock_bh(&dev->mt76.lock);