[dpdk-dev] [PATCH v4 04/19] vhost: fix payload size of reply

Tiwei Bie tiwei.bie at intel.com
Tue Oct 9 12:21:25 CEST 2018


On Mon, Oct 08, 2018 at 05:25:42PM +0200, Maxime Coquelin wrote:
> QEMU doesn't expect any payload for the reply of
> VHOST_USER_SET_LOG_BASE request, so don't send any.
> Note that the Vhost-user specification isn't clear about
> it and would need to be fixed.
> 
> Fixes: 54f9e32305d4 ("vhost: handle dirty pages logging request")
> Cc: stable at dpdk.org
> 
> Reported-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>
> ---
>  lib/librte_vhost/vhost_user.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
> index 7f3e86778..71a0e7dd7 100644
> --- a/lib/librte_vhost/vhost_user.c
> +++ b/lib/librte_vhost/vhost_user.c
> @@ -1296,7 +1296,11 @@ vhost_user_set_log_base(struct virtio_net **pdev, struct VhostUserMsg *msg)
>  	dev->log_base = dev->log_addr + off;
>  	dev->log_size = size;
>  
> -	msg->size = sizeof(msg->payload.u64);
> +	/*
> +	 * The spec is not clear about it (yet), but QEMU doesn't expect
> +	 * any payload in the reply.
> +	 */
> +	msg->size = 0;

I think the spec is clear about it that no payload is
expected in the reply:

https://github.com/qemu/qemu/blob/7c69b7c84964/docs/interop/vhost-user.txt#L496

But below line in the spec needs to be fixed:

https://github.com/qemu/qemu/blob/7c69b7c84964/docs/interop/vhost-user.txt#L495


>  
>  	return VH_RESULT_REPLY;
>  }
> -- 
> 2.17.1
> 


More information about the dev mailing list