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: sta...@dpdk.org > > Signed-off-by: Yunjian Wang <wangyunj...@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 > >