[dpdk-stable] [dpdk-dev] [PATCH v2] net/virtio-user: fix return value of tap offload sets not checked

Tiwei Bie tiwei.bie at intel.com
Mon Jan 13 03:16:05 CET 2020


On Thu, Jan 09, 2020 at 08:18:24PM +0800, Yunjian Wang wrote:
> The function vhost_kernel_tap_set_offload() could return errors,
> the return value need to be checked. And there is no need to fail
> when error is -ENOTSUP.
> 
> Fixes: 1db4d2330bc8 ("net/virtio-user: check negotiated features before set")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Yunjian Wang <wangyunjian at huawei.com>
> ---
> v2:
>  * No need to fail when error is -ENOTSUP.
> ---
>  drivers/net/virtio/virtio_user/vhost_kernel_tap.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/virtio/virtio_user/vhost_kernel_tap.c b/drivers/net/virtio/virtio_user/vhost_kernel_tap.c
> index 76bf75423..2a0c2106d 100644
> --- a/drivers/net/virtio/virtio_user/vhost_kernel_tap.c
> +++ b/drivers/net/virtio/virtio_user/vhost_kernel_tap.c
> @@ -66,6 +66,7 @@ vhost_kernel_open_tap(char **p_ifname, int hdr_size, int req_mq,
>  	int sndbuf = INT_MAX;
>  	struct ifreq ifr;
>  	int tapfd;
> +	int ret;
>  
>  	/* TODO:
>  	 * 1. verify we can get/set vnet_hdr_len, tap_probe_vnet_hdr_len
> @@ -131,7 +132,9 @@ vhost_kernel_open_tap(char **p_ifname, int hdr_size, int req_mq,
>  		goto error;
>  	}
>  
> -	vhost_kernel_tap_set_offload(tapfd, features);
> +	ret = vhost_kernel_tap_set_offload(tapfd, features);
> +	if (ret < 0 && ret != ENOTSUP)

s/ENOTSUP/-ENOTSUP/

> +		goto error;
>  
>  	memset(&ifr, 0, sizeof(ifr));
>  	ifr.ifr_hwaddr.sa_family = ARPHRD_ETHER;
> -- 
> 2.19.1
> 
> 


More information about the stable mailing list