Re: [dpdk-dev] [PATCH v2 4/5] vhost: notify virtq file descriptor update
From: Maxime Coquelin <hidden>
Date: 2020-06-26 12:20:07
On 6/25/20 3:38 PM, Matan Azrad wrote:
quoted hunk ↗ jump to hunk
When virtq call or kick file descriptors are changed in the device configuration when the queue is ready, the application and the vDPA driver should be notified to be aligned to the new file descriptors. Notify the state to be disabled before the file descriptor update and return it back to be enabled after the update. Signed-off-by: Matan Azrad <redacted> --- lib/librte_vhost/vhost_user.c | 11 +++++++++++ 1 file changed, 11 insertions(+)diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c index f690fdb..f3966b6 100644 --- a/lib/librte_vhost/vhost_user.c +++ b/lib/librte_vhost/vhost_user.c@@ -1624,6 +1624,12 @@ "vring call idx:%d file:%d\n", file.index, file.fd); vq = dev->virtqueue[file.index]; + + if (vq->ready) { + vhost_user_notify_queue_state(dev, file.index, 0); + vq->ready = 0; + } + if (vq->callfd >= 0) close(vq->callfd);@@ -1882,6 +1888,11 @@ static int vhost_user_set_vring_err(struct virtio_net **pdev __rte_unused, dev->vid, file.index, 1); } + if (vq->ready) { + vhost_user_notify_queue_state(dev, file.index, 0); + vq->ready = 0; + } + if (vq->kickfd >= 0) close(vq->kickfd); vq->kickfd = file.fd;
Reviewed-by: Maxime Coquelin <redacted> Thanks, Maxime