Message ID | 95af0d013281282f48ad3f47f6ad1ac4ca9e52eb.1690100802.git.yin31149@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Vhost-vdpa Shadow Virtqueue VLAN support | expand |
On 2023/7/23 17:26, Hawkins Jiawei wrote: > From: Eugenio Pérez <eperezma@redhat.com> There was a wrong "From" line by mistake, I will send the v3 patch to fix this. Thanks! > > This function is called after virtio_load, so all vlan configuration is > lost in migration case. > > Just allow all the vlan-tagged packets if vlan is not configured, and > trust device reset to clear all filtered vlans. > > Fixes: 0b1eaa8803 ("virtio-net: Do not filter VLANs without F_CTRL_VLAN") > Signed-off-by: Eugenio Pérez <eperezma@redhat.com> > Reviewed-by: Hawkins Jiawei <yin31149@gmail.com> > Signed-off-by: Hawkins Jiawei <yin31149@gmail.com> > --- > hw/net/virtio-net.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c > index 7102ec4817..d20d5a63cd 100644 > --- a/hw/net/virtio-net.c > +++ b/hw/net/virtio-net.c > @@ -1006,9 +1006,7 @@ static void virtio_net_set_features(VirtIODevice *vdev, uint64_t features) > vhost_net_save_acked_features(nc->peer); > } > > - if (virtio_has_feature(features, VIRTIO_NET_F_CTRL_VLAN)) { > - memset(n->vlans, 0, MAX_VLAN >> 3); > - } else { > + if (!virtio_has_feature(features, VIRTIO_NET_F_CTRL_VLAN)) { > memset(n->vlans, 0xff, MAX_VLAN >> 3); > } >
On Sun, Jul 23, 2023 at 5:27 PM Hawkins Jiawei <yin31149@gmail.com> wrote: > > From: Eugenio Pérez <eperezma@redhat.com> > > This function is called after virtio_load, so all vlan configuration is > lost in migration case. > > Just allow all the vlan-tagged packets if vlan is not configured, and > trust device reset to clear all filtered vlans. > > Fixes: 0b1eaa8803 ("virtio-net: Do not filter VLANs without F_CTRL_VLAN") > Signed-off-by: Eugenio Pérez <eperezma@redhat.com> > Reviewed-by: Hawkins Jiawei <yin31149@gmail.com> > Signed-off-by: Hawkins Jiawei <yin31149@gmail.com> Acked-by: Jason Wang <jasowang@redhat.com> Thanks > --- > hw/net/virtio-net.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c > index 7102ec4817..d20d5a63cd 100644 > --- a/hw/net/virtio-net.c > +++ b/hw/net/virtio-net.c > @@ -1006,9 +1006,7 @@ static void virtio_net_set_features(VirtIODevice *vdev, uint64_t features) > vhost_net_save_acked_features(nc->peer); > } > > - if (virtio_has_feature(features, VIRTIO_NET_F_CTRL_VLAN)) { > - memset(n->vlans, 0, MAX_VLAN >> 3); > - } else { > + if (!virtio_has_feature(features, VIRTIO_NET_F_CTRL_VLAN)) { > memset(n->vlans, 0xff, MAX_VLAN >> 3); > } > > -- > 2.25.1 >
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 7102ec4817..d20d5a63cd 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -1006,9 +1006,7 @@ static void virtio_net_set_features(VirtIODevice *vdev, uint64_t features) vhost_net_save_acked_features(nc->peer); } - if (virtio_has_feature(features, VIRTIO_NET_F_CTRL_VLAN)) { - memset(n->vlans, 0, MAX_VLAN >> 3); - } else { + if (!virtio_has_feature(features, VIRTIO_NET_F_CTRL_VLAN)) { memset(n->vlans, 0xff, MAX_VLAN >> 3); }