X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fdevices%2Fvirtio%2Fdevice.c;h=856e5f275e3d42f0f1f27da8eaf579016962cd33;hb=529f0e97b6064039c500adce0d54b738954b2ffa;hp=588c84b7275d40dca9dd34a4ec4e8455f7f3e6fc;hpb=e5d34919b4561a5ee11e41dec6b0184537b39696;p=vpp.git diff --git a/src/vnet/devices/virtio/device.c b/src/vnet/devices/virtio/device.c index 588c84b7275..856e5f275e3 100644 --- a/src/vnet/devices/virtio/device.c +++ b/src/vnet/devices/virtio/device.c @@ -531,10 +531,16 @@ virtio_interface_admin_up_down (vnet_main_t * vnm, u32 hw_if_index, u32 flags) virtio_if_t *vif = pool_elt_at_index (mm->interfaces, hw->dev_instance); if (flags & VNET_SW_INTERFACE_FLAG_ADMIN_UP) - vif->flags |= VIRTIO_IF_FLAG_ADMIN_UP; + { + vif->flags |= VIRTIO_IF_FLAG_ADMIN_UP; + vnet_hw_interface_set_flags (vnm, vif->hw_if_index, + VNET_HW_INTERFACE_FLAG_LINK_UP); + } else - vif->flags &= ~VIRTIO_IF_FLAG_ADMIN_UP; - + { + vif->flags &= ~VIRTIO_IF_FLAG_ADMIN_UP; + vnet_hw_interface_set_flags (vnm, vif->hw_if_index, 0); + } return 0; }