Bug 2279977
| Summary: | "Failed to set QoS type linux-noop on port vhuID: Operation not supported" errors are logged in RHOSP 17.1 DPDK environment | ||
|---|---|---|---|
| Product: | Red Hat OpenStack | Reporter: | Alex Stupnikov <astupnik> |
| Component: | openstack-neutron | Assignee: | Miro Tomaska <mtomaska> |
| Status: | CLOSED ERRATA | QA Contact: | Miguel Angel Nieto <mnietoji> |
| Severity: | medium | Docs Contact: | |
| Priority: | high | ||
| Version: | 17.1 (Wallaby) | CC: | chrisw, jjoyce, jschluet, mariel, mtomaska, scohen, slinaber, smooney, tvignaud, xili, ykarel |
| Target Milestone: | z4 | Keywords: | Triaged |
| Target Release: | 17.1 | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
| Fixed In Version: | openstack-neutron-18.6.1-17.1.20240726190742.85ff760.el9ost | Doc Type: | No Doc Update |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2024-11-21 09:40:24 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
Alex Stupnikov
2024-05-10 10:27:22 UTC
reviewing the code we explictly skip ovs-dpdk
def supports_tc_qdisc(self, vif) -> bool:
if self._get_vif_datapath_type(vif) != constants.OVS_DATAPATH_SYSTEM:
return False
if sys.platform == constants.PLATFORM_WIN32:
return False
return True
https://github.com/openstack/os-vif/blob/master/vif_plug_ovs/ovs.py#L181-L187
and we have functional test coverage to ensure that
def test_create_ovs_vif_port(self):
port_name = 'port2-' + self.interface
iface_id = 'iface_id'
mac = 'ca:fe:ca:fe:ca:fe'
instance_id = uuidutils.generate_uuid()
interface_type = constants.OVS_VHOSTUSER_INTERFACE_TYPE
vhost_server_path = '/fake/path'
mtu = 1500
self._add_bridge(self.brname)
self.addCleanup(self._del_bridge, self.brname)
self.ovs.create_ovs_vif_port(self.brname, port_name, iface_id, mac,
instance_id, mtu=mtu,
interface_type=interface_type,
vhost_server_path=vhost_server_path,
tag=2000)
expected_external_ids = {'iface-status': 'active',
'iface-id': iface_id,
'attached-mac': mac,
'vm-uuid': instance_id}
self._check_parameter('Interface', port_name, 'external_ids',
expected_external_ids)
self._check_parameter('Interface', port_name, 'type', interface_type)
expected_vhost_server_path = {'vhost-server-path': vhost_server_path}
self._check_parameter(
'Interface', port_name, 'options', expected_vhost_server_path
)
self._check_parameter('Port', port_name, 'tag', 2000)
self._check_parameter('Port', port_name, 'qos', [])
https://github.com/openstack/os-vif/blob/c0d101aa81cff200e1db2a0746598b72e26748e4/vif_plug_ovs/tests/functional/ovsdb/test_ovsdb_lib.py#L109C1-L130C60
the os-vif functional test actually create ports on a real ovs bridge and use the ovs cli to confirm that the operations were performed correctly
so that implies that the datapath type is not set to netdev or was set to a different value at some point in the past.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (RHOSP 17.1.4 bug fix and enhancement advisory), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2024:9974 |