[dpdk-dev] [PATCH v3 05/19] vhost: fix error handling when mem table gets updated

Ilya Maximets i.maximets at samsung.com
Thu Oct 4 16:59:04 CEST 2018


On 04.10.2018 11:13, Maxime Coquelin wrote:
> When the memory table gets updated, the rings addresses need
> to be translated again. If it fails, we need to exit cleanly
> by unmapping memory regions.
> 
> Fixes: d5022533c20a ("vhost: retranslate vring addr when memory table changes")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Maxime Coquelin <maxime.coquelin at redhat.com>
> ---

Acked-by: Ilya Maximets <i.maximets at samsung.com>

Minor comments inline.

>  lib/librte_vhost/vhost_user.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
> index 8ffe5aa66..b6eae8dc5 100644
> --- a/lib/librte_vhost/vhost_user.c
> +++ b/lib/librte_vhost/vhost_user.c
> @@ -964,7 +964,8 @@ vhost_user_set_mem_table(struct virtio_net **pdev, struct VhostUserMsg *msg)
>  
>  			dev = translate_ring_addresses(dev, i);
>  			if (!dev)
> -				return VH_RESULT_ERR;
> +				goto err_mmap;
> +

1. No need to have two empty lines. (You could fix this while applying)
2. In current code, error on message handling will cause disconnect and
   memory regions will be freed anyway. So, the change is not very
   important for master (maybe just for consistency with surrounding
   code) but it could be important for stable versions.

>  
>  			*pdev = dev;
>  		}
> 


More information about the dev mailing list