ixgbe/ixgbevf: use napi_schedule_irqoff()
The ixgbe_intr and ixgbe/ixgbevf_msix_clean_rings functions run from hard interrupt context or with interrupts already disabled in netpoll. They can use napi_schedule_irqoff() instead of napi_schedule() Signed-off-by: Alexander Duyck <aduyck@mirantis.com> Tested-by: Darin Miller <darin.j.miller@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
8a9ca1104d
commit
ef2662b2a8
|
@ -2754,7 +2754,7 @@ static irqreturn_t ixgbe_msix_clean_rings(int irq, void *data)
|
|||
/* EIAM disabled interrupts (on this vector) for us */
|
||||
|
||||
if (q_vector->rx.ring || q_vector->tx.ring)
|
||||
napi_schedule(&q_vector->napi);
|
||||
napi_schedule_irqoff(&q_vector->napi);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
@ -2948,7 +2948,7 @@ static irqreturn_t ixgbe_intr(int irq, void *data)
|
|||
ixgbe_ptp_check_pps_event(adapter, eicr);
|
||||
|
||||
/* would disable interrupts here but EIAM disabled it */
|
||||
napi_schedule(&q_vector->napi);
|
||||
napi_schedule_irqoff(&q_vector->napi);
|
||||
|
||||
/*
|
||||
* re-enable link(maybe) and non-queue interrupts, no flush.
|
||||
|
|
|
@ -1288,7 +1288,7 @@ static irqreturn_t ixgbevf_msix_clean_rings(int irq, void *data)
|
|||
|
||||
/* EIAM disabled interrupts (on this vector) for us */
|
||||
if (q_vector->rx.ring || q_vector->tx.ring)
|
||||
napi_schedule(&q_vector->napi);
|
||||
napi_schedule_irqoff(&q_vector->napi);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue