]> git.baikalelectronics.ru Git - kernel.git/commit
net/mlx5: Use a single IRQ for all async EQs
authorAriel Levkovich <lariel@mellanox.com>
Mon, 10 Jun 2019 23:38:41 +0000 (23:38 +0000)
committerSaeed Mahameed <saeedm@mellanox.com>
Thu, 13 Jun 2019 17:59:49 +0000 (10:59 -0700)
commit5f2ee12b7beea11d1b1823d05b47bd551fb72502
treec66db1bc1d8863bb9566feb5fd23fce6197e0b7c
parent192931b1bef3093f9d9418b566aae8f6c633836d
net/mlx5: Use a single IRQ for all async EQs

The patch modifies the IRQ allocation so that all async EQs are
assigned to the same IRQ resulting in more available IRQs for
completion EQs.

The changes are using the support for IRQ sharing and EQ polling budget
that was introduced in previous patches so when the shared interrupt is
triggered, the kernel will serially call the handler of each of the
sharing EQs with a certain budget of EQEs to poll in order to prevent
starvation.

Signed-off-by: Ariel Levkovich <lariel@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/infiniband/hw/mlx5/odp.c
drivers/net/ethernet/mellanox/mlx5/core/eq.c
drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c
include/linux/mlx5/eq.h