Uploaded image for project: 'Red Hat OpenStack Services on OpenShift'
  1. Red Hat OpenStack Services on OpenShift
  2. OSPRH-19321

SR-IOV port status switching between ACTIVE and BUILD

XMLWordPrintable

    • Icon: Epic Epic
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • None
    • openstack-neutron
    • None
    • SR-IOV port status switching between ACTIVE and BUILD
    • False
    • Hide

      None

      Show
      None
    • 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:

      {'status': 'ACTIVE'}

      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:

      {'status': 'BUILD'}

      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:

      {'status': 'ACTIVE'}

      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:

      {'status': 'BUILD'}

      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=

      {"devname":"ens2f0","physical_network":"sriov_a","trusted":"true"}

      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.

              rodolfo_alonso Rodolfo Alonso
              rhn-support-fpalin Francois Palin
              rhos-dfg-networking-squad-neutron
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated: