> -----Original Message----- > From: Tiwei Bie [mailto:tiwei....@intel.com] > Sent: Monday, January 13, 2020 10:16 AM > To: wangyunjian <wangyunj...@huawei.com> > Cc: dev@dpdk.org; maxime.coque...@redhat.com; zhihong.w...@intel.com; > xudingke <xudin...@huawei.com>; sta...@dpdk.org > Subject: Re: [dpdk-dev] [PATCH v2] net/virtio-user: fix return value of tap > offload > sets not checked > > 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/
Thanks, I will fix it in v3. Yunjian > > > + goto error; > > > > memset(&ifr, 0, sizeof(ifr)); > > ifr.ifr_hwaddr.sa_family = ARPHRD_ETHER; > > -- > > 2.19.1 > > > >