mt76: mt7615: add missing bh-disable around rx napi schedule
napi_schedule() can call __raise_softirq_irqoff(), which can perform softirq handling, so it must not be called in a pure process context with BH enabled. Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
c0182aa985
commit
e55c27ed9c
1 changed files with 2 additions and 0 deletions
|
@ -2094,8 +2094,10 @@ void mt7615_pm_wake_work(struct work_struct *work)
|
||||||
mt76_connac_pm_dequeue_skbs(mphy, &dev->pm);
|
mt76_connac_pm_dequeue_skbs(mphy, &dev->pm);
|
||||||
mt76_worker_schedule(&mdev->sdio.txrx_worker);
|
mt76_worker_schedule(&mdev->sdio.txrx_worker);
|
||||||
} else {
|
} else {
|
||||||
|
local_bh_disable();
|
||||||
mt76_for_each_q_rx(mdev, i)
|
mt76_for_each_q_rx(mdev, i)
|
||||||
napi_schedule(&mdev->napi[i]);
|
napi_schedule(&mdev->napi[i]);
|
||||||
|
local_bh_enable();
|
||||||
mt76_connac_pm_dequeue_skbs(mphy, &dev->pm);
|
mt76_connac_pm_dequeue_skbs(mphy, &dev->pm);
|
||||||
mt76_queue_tx_cleanup(dev, mdev->q_mcu[MT_MCUQ_WM],
|
mt76_queue_tx_cleanup(dev, mdev->q_mcu[MT_MCUQ_WM],
|
||||||
false);
|
false);
|
||||||
|
|
Loading…
Add table
Reference in a new issue