Public bug reported: Bug #1789074 addressed an issue with booting a guest with vnic_type direct when rx_queue_size and tx_queue_size. However, this failed to address an additional permutation: the user specifying hw_vif_type=virtio. If the user does this, the problem occurs once again.
Reproduction steps are the same noted in bug #1789074 with one additional step needed: openstack image set --property hw_vif_type=virtio $IMAGE Once configured, boot an instance with this image and an SRIOV (PF or VF) interface and the instance will fail to spawn. This is because we first read and set the VIF model from the image metadata property: https://github.com/openstack/nova/blob/622ebf2fab0a9bf75ee12437bef28f60e083f849/nova/virt/libvirt/vif.py#L134-L135 Which means a later check passes: https://github.com/openstack/nova/blob/622ebf2fab0a9bf75ee12437bef28f60e083f849/nova/virt/libvirt/vif.py#L172 Without setting this property, that check would fail as we never configure the model for direct SR-IOV interfaces. https://github.com/openstack/nova/blob/622ebf2fab0a9bf75ee12437bef28f60e083f849/nova/virt/libvirt/vif.py#L139 ** Affects: nova Importance: Medium Status: Confirmed -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1797146 Title: failed to boot guest with vnic_type direct when rx_queue_size, tx_queue_size and hw_vif_type are set Status in OpenStack Compute (nova): Confirmed Bug description: Bug #1789074 addressed an issue with booting a guest with vnic_type direct when rx_queue_size and tx_queue_size. However, this failed to address an additional permutation: the user specifying hw_vif_type=virtio. If the user does this, the problem occurs once again. Reproduction steps are the same noted in bug #1789074 with one additional step needed: openstack image set --property hw_vif_type=virtio $IMAGE Once configured, boot an instance with this image and an SRIOV (PF or VF) interface and the instance will fail to spawn. This is because we first read and set the VIF model from the image metadata property: https://github.com/openstack/nova/blob/622ebf2fab0a9bf75ee12437bef28f60e083f849/nova/virt/libvirt/vif.py#L134-L135 Which means a later check passes: https://github.com/openstack/nova/blob/622ebf2fab0a9bf75ee12437bef28f60e083f849/nova/virt/libvirt/vif.py#L172 Without setting this property, that check would fail as we never configure the model for direct SR-IOV interfaces. https://github.com/openstack/nova/blob/622ebf2fab0a9bf75ee12437bef28f60e083f849/nova/virt/libvirt/vif.py#L139 To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1797146/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

