99abbd62c2
The driver CQ event management is done by non vhost library thread, either the dpdk host thread or the internal vDPA driver thread. When a queue is updated the CQ may be destroyed and created by the vhost library thread via the queue state operation. When the queue update feature was added, it didn't synchronize the CQ management to the queue update what may cause invalid memory access. Add the aforementioned synchronization by a new per device configuration mutex. Fixes: c47d6e83334e ("vdpa/mlx5: support queue update") Signed-off-by: Xueming Li <xuemingl@mellanox.com> Acked-by: Matan Azrad <matan@mellanox.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>