On Fri, Feb 10, 2017 at 2:27 PM, Eric Dumazet <[email protected]> wrote:
> From: Eric Dumazet <[email protected]>
>
> All rx and rx netdev interrupts are handled by respectively
> by mlx4_en_rx_irq() and mlx4_en_tx_irq() which simply schedule a NAPI.
>
> But mlx4_eq_int() also fires a tasklet to service all items that were
> queued via mlx4_add_cq_to_tasklet(), but this handler was not called
> unless user cqe was handled.
>
> This is very confusing, as "mpstat -I SCPU ..." show huge number of
> tasklet invocations.
>
> This patch saves this overhead, by carefully firing the tasklet directly
> from mlx4_add_cq_to_tasklet(), removing four atomic operations per IRQ.
>
> Signed-off-by: Eric Dumazet <[email protected]>
> Cc: Tariq Toukan <[email protected]>
> Cc: Saeed Mahameed <[email protected]>

Acked-by: Saeed Mahameed <[email protected]>

Reply via email to