[dpdk-dev] [PATCH v5 03/19] vhost: clarify reply-ack in case a reply was already sent

Maxime Coquelin maxime.coquelin at redhat.com
Tue Oct 9 22:54:10 CEST 2018

For messages that require a reply, a second ack should not be
sent when reply-ack protocol feature is negotiated, even if
the corresponding flag is set in the message.

The code is compliant with the spec but it isn't clear it is,
so this patch adds a comment to make it explicit.

Suggested-by: Ilya Maximets <i.maximets at samsung.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin at redhat.com>
Acked-by: Ilya Maximets <i.maximets at samsung.com>
Reviewed-by: Tiwei Bie <tiwei.bie at intel.com>
 lib/librte_vhost/vhost_user.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
index 09a90a20b..a7729990d 100644
--- a/lib/librte_vhost/vhost_user.c
+++ b/lib/librte_vhost/vhost_user.c
@@ -1783,6 +1783,11 @@ vhost_user_msg_handler(int vid, int fd)
 	if (unlock_required)
+	/*
+	 * If the request required a reply that was already sent,
+	 * this optional reply-ack won't be sent as the
+	 * VHOST_USER_NEED_REPLY was cleared in send_vhost_reply().
+	 */
 	if (msg.flags & VHOST_USER_NEED_REPLY) {
 		msg.payload.u64 = ret == VH_RESULT_ERR;
 		msg.size = sizeof(msg.payload.u64);

More information about the dev mailing list