When vif_type="tap" (such as when using calico),
attempting to create an instance using an image that has
the property hw_vif_multiqueue_enabled=True fails, because
the interface is always being created without multiqueue
flags.
This change checks if the property is defined and passes
the multiqueue parameter to create the tap interface
accordingly.
In case the multiqueue parameter is passed but the
vif_model is not virtio (or unspecified), the old
behavior is maintained.
Conflicts: nova/virt/libvirt/vif.py
NOTE: The conflict is due to not having patch
Iefa6009874395cafe3121e44a48d882c38230d16 in stable/ussuri.
Change-Id: I0307c43dcd0cace1620d2ac75925651d4ee2e96c
Closes-bug: #1893263
(cherry picked from commit 84cfc8e9ab1396ec17abcfc9646c7d40f1d966ae)
Reviewed: https:/ /review. opendev. org/752245 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=a69845f3732 843ee1451b2e4eb f547d9801e898d
Committed: https:/
Submitter: Zuul
Branch: stable/ussuri
commit a69845f3732843e e1451b2e4ebf547 d9801e898d
Author: Rodrigo Barbieri <email address hidden>
Date: Thu Aug 27 17:20:19 2020 -0300
Allow tap interface with multiqueue
When vif_type="tap" (such as when using calico), multiqueue_ enabled= True fails, because
attempting to create an instance using an image that has
the property hw_vif_
the interface is always being created without multiqueue
flags.
This change checks if the property is defined and passes
the multiqueue parameter to create the tap interface
accordingly.
In case the multiqueue parameter is passed but the
vif_model is not virtio (or unspecified), the old
behavior is maintained.
Conflicts:
nova/virt/ libvirt/ vif.py
NOTE: The conflict is due to not having patch 395cafe3121e44a 48d882c38230d16 in stable/ussuri.
Iefa6009874
Change-Id: I0307c43dcd0cac e1620d2ac759256 51d4ee2e96c c17abcfc9646c7d 40f1d966ae)
Closes-bug: #1893263
(cherry picked from commit 84cfc8e9ab1396e