vdpa/mlx5: Support interrupt bypassing
authorEli Cohen <elic@nvidia.com>
Wed, 7 Jun 2023 19:00:06 +0000 (22:00 +0300)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 27 Jun 2023 14:47:09 +0000 (10:47 -0400)
commitbc9a2b3e686e32ebd764d92e66e21c01e23ffb16
tree4cba099bd513b3c5b73fb6619f54dfc6c6899187
parent33bd91fd24367ad664de6c05d0e0206d0b149767
vdpa/mlx5: Support interrupt bypassing

Add support for generation of interrupts from the device directly to the
VM to the VCPU thus avoiding the overhead on the host CPU.

When supported, the driver will attempt to allocate vectors for each
data virtqueue. If a vector for a virtqueue cannot be provided it will
use the QP mode where notifications go through the driver.

In addition, we add a shutdown callback to make sure allocated
interrupts are released in case of shutdown to allow clean shutdown.

Signed-off-by: Eli Cohen <elic@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Message-Id: <20230607190007.290505-1-dtatulea@nvidia.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/vdpa/mlx5/net/mlx5_vnet.c
drivers/vdpa/mlx5/net/mlx5_vnet.h