No need to take access lock in the vhost-user message handler when
vDPA driver controls all the data-path of the vhost device.
It allows the vDPA set_vring_state operation callback to configure
guest notifications.

Signed-off-by: Matan Azrad <ma...@mellanox.com>
Reviewed-by: Maxime Coquelin <maxime.coque...@redhat.com>
---
 lib/librte_vhost/vhost_user.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
index 4e1af91..8d8050b 100644
--- a/lib/librte_vhost/vhost_user.c
+++ b/lib/librte_vhost/vhost_user.c
@@ -2690,8 +2690,10 @@ typedef int (*vhost_message_handler_t)(struct virtio_net 
**pdev,
        case VHOST_USER_SEND_RARP:
        case VHOST_USER_NET_SET_MTU:
        case VHOST_USER_SET_SLAVE_REQ_FD:
-               vhost_user_lock_all_queue_pairs(dev);
-               unlock_required = 1;
+               if (!(dev->flags & VIRTIO_DEV_VDPA_CONFIGURED)) {
+                       vhost_user_lock_all_queue_pairs(dev);
+                       unlock_required = 1;
+               }
                break;
        default:
                break;
-- 
1.8.3.1

Reply via email to