numam-dpdk/lib/librte_vhost
Patrick Fu eb666d2408 vhost: fix async unregister deadlock
When async unregister function is invoked in certain vhost event
callbacks (e.g. vring state change), deadlock may occur due to
recursive spinlock acquire. This patch uses trylock() primitive in
the unregister API to avoid deadlock.

Fixes: 78639d5456 ("vhost: introduce async enqueue registration API")
Cc: stable@dpdk.org

Signed-off-by: Patrick Fu <patrick.fu@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
2020-10-16 19:48:19 +02:00
..
fd_man.c vhost: fix race condition when adding fd in the fdset 2018-12-21 16:22:40 +01:00
fd_man.h vhost: fix race condition when adding fd in the fdset 2018-12-21 16:22:40 +01:00
iotlb.c vhost: fix IOTLB mempool single-consumer flag 2020-09-18 18:55:12 +02:00
iotlb.h vhost: replace IOTLB license with SPDX tag 2019-08-05 16:06:11 +02:00
meson.build vhost: introduce async enqueue registration API 2020-07-07 23:38:28 +02:00
rte_vdpa_dev.h vhost: promote vDPA API as stable 2020-09-30 23:16:55 +02:00
rte_vdpa.h vhost: promote vDPA API as stable 2020-09-30 23:16:55 +02:00
rte_vhost_async.h vhost: simplify async copy completion 2020-10-16 19:48:19 +02:00
rte_vhost_crypto.h vhost/crypto: fix feature negotiation 2020-10-16 19:18:47 +02:00
rte_vhost_version.map vhost/crypto: fix feature negotiation 2020-10-16 19:18:47 +02:00
rte_vhost.h vhost: remove dequeue zero-copy support 2020-09-30 23:16:56 +02:00
socket.c vhost: remove dequeue zero-copy support 2020-09-30 23:16:56 +02:00
vdpa.c vhost: make some vDPA callbacks mandatory 2020-07-11 06:18:52 +02:00
vhost_crypto.c vhost/crypto: fix feature negotiation 2020-10-16 19:18:47 +02:00
vhost_user.c vhost: fix async unregister deadlock 2020-10-16 19:48:19 +02:00
vhost_user.h vhost: support virtio status message 2020-07-11 06:18:52 +02:00
vhost.c vhost: fix async unregister deadlock 2020-10-16 19:48:19 +02:00
vhost.h vhost: fix async vector buffer overrun 2020-10-16 19:48:19 +02:00
virtio_crypto.h vhost: add virtio crypto header file 2018-04-14 00:43:30 +02:00
virtio_net.c vhost: fix async vector buffer overrun 2020-10-16 19:48:19 +02:00