Skip to content

Commit

Permalink
ixgbe/ixgbevf: use napi_schedule_irqoff()
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Alexander Duyck authored and Jeff Kirsher committed Nov 23, 2015
1 parent 8a9ca11 commit ef2662b
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
4 changes: 2 additions & 2 deletions drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
Expand Down Expand Up @@ -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.
Expand Down
2 changes: 1 addition & 1 deletion drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
Expand Down

0 comments on commit ef2662b

Please sign in to comment.