mirror of
https://github.com/outbackdingo/mt76.git
synced 2026-10-24 13:26:48 +00:00
mt76: mt76x02: do not access uninitialized NAPI structs
Fixes a crash on MMIO devices when running into the watchdog reset
Fixes: d3377b78cec6 ("mt76: add HE phy modes and hardware queue")
Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
+3
-2
@@ -455,8 +455,9 @@ static void mt76x02_watchdog_reset(struct mt76x02_dev *dev)
|
|||||||
tasklet_disable(&dev->mt76.tx_tasklet);
|
tasklet_disable(&dev->mt76.tx_tasklet);
|
||||||
napi_disable(&dev->mt76.tx_napi);
|
napi_disable(&dev->mt76.tx_napi);
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(dev->mt76.napi); i++)
|
mt76_for_each_q_rx(&dev->mt76, i) {
|
||||||
napi_disable(&dev->mt76.napi[i]);
|
napi_disable(&dev->mt76.napi[i]);
|
||||||
|
}
|
||||||
|
|
||||||
mutex_lock(&dev->mt76.mutex);
|
mutex_lock(&dev->mt76.mutex);
|
||||||
|
|
||||||
@@ -514,7 +515,7 @@ static void mt76x02_watchdog_reset(struct mt76x02_dev *dev)
|
|||||||
|
|
||||||
tasklet_enable(&dev->mt76.pre_tbtt_tasklet);
|
tasklet_enable(&dev->mt76.pre_tbtt_tasklet);
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(dev->mt76.napi); i++) {
|
mt76_for_each_q_rx(&dev->mt76, i) {
|
||||||
napi_enable(&dev->mt76.napi[i]);
|
napi_enable(&dev->mt76.napi[i]);
|
||||||
napi_schedule(&dev->mt76.napi[i]);
|
napi_schedule(&dev->mt76.napi[i]);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user