amd-xgbe: Use disable_irq_nosync from within timer function
Since the Tx timer function runs in softirq context the driver needs to call disable_irq_nosync instead of a disable_irq. Reported-by: Josh Stone <jistone@redhat.com> Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
6d7954130c
commit
078b29d7e9
@ -423,7 +423,7 @@ static void xgbe_tx_timer(unsigned long data)
|
|||||||
if (napi_schedule_prep(napi)) {
|
if (napi_schedule_prep(napi)) {
|
||||||
/* Disable Tx and Rx interrupts */
|
/* Disable Tx and Rx interrupts */
|
||||||
if (pdata->per_channel_irq)
|
if (pdata->per_channel_irq)
|
||||||
disable_irq(channel->dma_irq);
|
disable_irq_nosync(channel->dma_irq);
|
||||||
else
|
else
|
||||||
xgbe_disable_rx_tx_ints(pdata);
|
xgbe_disable_rx_tx_ints(pdata);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user