OSDN Git Service

mt76: mt7615: only free skbs after mt7615_dma_reset() when reset happens
authorRyder Lee <ryder.lee@mediatek.com>
Tue, 13 Apr 2021 08:00:06 +0000 (16:00 +0800)
committerFelix Fietkau <nbd@nbd.name>
Wed, 21 Apr 2021 09:42:20 +0000 (11:42 +0200)
In mt7615_mac_reset_work(), make sure freeing skbs after mt7615_dma_reset().

Signed-off-by: Ryder Lee <ryder.lee@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7615/pci_mac.c

index 1b206cc..9ac4bda 100644 (file)
@@ -303,12 +303,12 @@ void mt7615_mac_reset_work(struct work_struct *work)
 
        mt7615_hif_int_event_trigger(dev, MT_MCU_INT_EVENT_PDMA_STOPPED);
 
-       mt7615_tx_token_put(dev);
-       idr_init(&dev->token);
-
        if (mt7615_wait_reset_state(dev, MT_MCU_CMD_RESET_DONE)) {
                mt7615_dma_reset(dev);
 
+               mt7615_tx_token_put(dev);
+               idr_init(&dev->token);
+
                mt76_wr(dev, MT_WPDMA_MEM_RNG_ERR, 0);
 
                mt7615_hif_int_event_trigger(dev, MT_MCU_INT_EVENT_PDMA_INIT);