-
Epic
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
SR-IOV port status switching between ACTIVE and BUILD
-
False
-
-
False
-
Not Selected
-
?
-
?
-
To Do
-
?
-
rhos-dfg-networking
-
?
-
0% To Do, 0% In Progress, 100% Done
-
-
-
-
Important
Multiple SR-IOV ports in this RHOSP 16.2.5 environment are flipping between ACTIVE and BUILD state.
For example on compute host we see the following for port 0ba01b92-f66d-4695-a0ac-28d84198dc64
openvswitch-agent.log: (grep for port ba01b92-f66d-4695-a0ac-28d84198dc64 ACTIVE and BUILD - data ouput truncated as this keeps occuring)
~~~
2025-08-21 16:04:53.824 808449 DEBUG neutron.agent.resource_cache [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] Resource Port 0ba01b92-f66d-4695-a0ac-28d84198dc64 updated (revision_number 964651->964652). Old fields:
New fields:
{'status': 'BUILD'} record_resource_update /usr/lib/python3.6/site-packages/neutron/agent/resource_cache.py:190
2025-08-21 16:05:00.068 808449 DEBUG neutron.agent.resource_cache [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] Resource Port 0ba01b92-f66d-4695-a0ac-28d84198dc64 updated (revision_number 964652->964653). Old fields:
New fields:
{'status': 'ACTIVE'} record_resource_update /usr/lib/python3.6/site-packages/neutron/agent/resource_cache.py:190
2025-08-21 16:05:04.327 808449 DEBUG neutron.agent.resource_cache [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] Resource Port 0ba01b92-f66d-4695-a0ac-28d84198dc64 updated (revision_number 964653->964654). Old fields:
New fields:
{'status': 'BUILD'} record_resource_update /usr/lib/python3.6/site-packages/neutron/agent/resource_cache.py:190
2025-08-21 16:05:10.346 808449 DEBUG neutron.agent.resource_cache [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] Resource Port 0ba01b92-f66d-4695-a0ac-28d84198dc64 updated (revision_number 964654->964655). Old fields:
New fields:
{'status': 'ACTIVE'}record_resource_update /usr/lib/python3.6/site-packages/neutron/agent/resource_cache.py:190
sriov-nic-agent.log:
~~~
2025-08-21 16:04:45.346 808390 WARNING neutron.plugins.ml2.drivers.mech_sriov.agent.eswitch_manager [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] device pci mismatch: 02:01:05:01:02:01 - 0000:37:03.3
2025-08-21 16:04:53.791 808390 WARNING neutron.plugins.ml2.drivers.mech_sriov.agent.eswitch_manager [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] device pci mismatch: 02:01:05:01:02:fe - 0000:37:0b.3
2025-08-21 16:04:55.398 808390 WARNING neutron.plugins.ml2.drivers.mech_sriov.agent.eswitch_manager [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] device pci mismatch: 02:01:05:01:02:01 - 0000:37:03.3
2025-08-21 16:05:04.300 808390 WARNING neutron.plugins.ml2.drivers.mech_sriov.agent.eswitch_manager [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] device pci mismatch: 02:01:05:01:02:fe - 0000:37:0b.3
2025-08-21 16:05:06.011 808390 WARNING neutron.plugins.ml2.drivers.mech_sriov.agent.eswitch_manager [req-2c519140-1067-4d1c-8485-7e7c0601f440 - - - - -] device pci mismatch: 02:01:05:01:02:01 - 0000:37:03.3
The config is consistent:
~~~
$ grep ^passthrough_whitelist var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf
passthrough_whitelist=
passthrough_whitelist=
{"devname":"ens2f1","physical_network":"sriov_b","trusted":"true"}passthrough_whitelist=
{"devname":"ens3f0","physical_network":"sriov_a","trusted":"true"}passthrough_whitelist=
{"devname":"ens3f1","physical_network":"sriov_b","trusted":"true"}$ grep ^physical_device_mappings var/lib/config-data/puppet-generated/neutron/etc/neutron/plugins/ml2/sriov_agent.ini
physical_device_mappings=sriov_a:ens2f0,sriov_b:ens2f1,sriov_a:ens3f0,sriov_b:ens3f1
~~~
We also ran the script provided in BZ https://bugzilla.redhat.com/show_bug.cgi?id=2095836#c16
and found no discrepancies in database. The script detects potential mismatches between the PCI information in the Nova database,
and the PCI information in the Neutron ports that are attached to the instance.