mt76: mt7663u: copy key pointer in mt7663u_mac_write_txwi
authorLorenzo Bianconi <lorenzo@kernel.org>
Fri, 8 May 2020 16:26:29 +0000 (18:26 +0200)
committerFelix Fietkau <nbd@nbd.name>
Tue, 12 May 2020 17:52:36 +0000 (19:52 +0200)
Copy key pointer value before running mt76_tx_status_skb_add() in
mt7663u_mac_write_txwi since it will be overwritten setting
mt76_tx_cb for probing frames

Co-developed-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7615/usb.c

index f2825b8..06235f8 100644 (file)
@@ -66,6 +66,7 @@ mt7663u_mac_write_txwi(struct mt7615_dev *dev, struct mt76_wcid *wcid,
                       struct sk_buff *skb)
 {
        struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
+       struct ieee80211_key_conf *key = info->control.hw_key;
        __le32 *txwi;
        int pid;
 
@@ -76,8 +77,7 @@ mt7663u_mac_write_txwi(struct mt7615_dev *dev, struct mt76_wcid *wcid,
 
        txwi = (__le32 *)(skb->data - MT_USB_TXD_SIZE);
        memset(txwi, 0, MT_USB_TXD_SIZE);
-       mt7615_mac_write_txwi(dev, txwi, skb, wcid, sta,
-                             pid, info->control.hw_key, false);
+       mt7615_mac_write_txwi(dev, txwi, skb, wcid, sta, pid, key, false);
        skb_push(skb, MT_USB_TXD_SIZE);
 }