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

BZ#2325931 "udevadm wait" command failing when operating system is rhel 8.4

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done-Errata
    • Icon: Undefined Undefined
    • rhos-17.1.6
    • None
    • os-net-config
    • None
    • 2
    • False
    • Hide

      None

      Show
      None
    • False
    • os-net-config-14.2.1-17.1.20250128190824.61d7bd7.el9osttrunk to rhos-17.1-rhel-9
    • os-net-config-14.2.1-17.1.20250128190824.61d7bd7.el9ost
    • rhos-dfg-nfv
    • None
    • Hide
      Cause:
      Consequence:
      Fix:
      Result:
      Show
      Cause: Consequence: Fix: Result:
    • Release Note Not Required
    • Proposed
    • NFV 008
    • 1
    • Critical

      Description of problem:
      While configuring vfs, os-net-config executes:
      /usr/bin/udevadm wait -t 60 /sys/class/net/enp4s0f0/

      This command works with rhel 9.2 but fails with rhel 8.4 because the version of udevadm is different and wait argument is not supported in rhel 8.4

      RHEL 8.4
      [heat-admin@computedpdksriov-1 ~]$ /usr/bin/udevadm --version
      239 (239-45.el8_4.15)

      RHEL 9.2
      [heat-admin@computedpdksriov-0 ~]$ /usr/bin/udevadm --version
      252

      supported parameters in rhel 8.4

      [heat-admin@computedpdksriov-1 ~]$ /usr/bin/udevadm -h
      udevadm [--help] [--version] [--debug] COMMAND [COMMAND OPTIONS]

      Send control commands or test the device manager.

      Commands:
      info Query sysfs or the udev database
      trigger Request events from the kernel
      settle Wait for pending udev events
      control Control the udev daemon
      monitor Listen to kernel and udev events
      test Test an event run
      test-builtin Test a built-in command

      This issue is causing that when executing FFU from 16.2 to 17.1 in a multirhel environment, rhel 9.2 computes are updated properly, but vfs are not configured in rhel 8.4. os-net-config does not raise any exception, so the ffu will be completed, but network configuration will not be good in the compute.

      This is os-net-config error:
      oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command.
      Command: /usr/bin/udevadm wait -t 60 /sys/class/net/enp4s0f1/
      Exit code: 2
      Stdout: ''
      Stderr: 'udevadm: missing or unknown command\n'
      NoneType: None
      2024-11-13 10:26:50.500 ERROR os_net_config.common.log_exceptions Traceback (most recent call last):
      File "/bin/os-net-config-sriov", line 10, in <module>
      sys.exit(main())
      File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 918, in main
      set_numvfs(device_name, int(numvfs), autoprobe)
      File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 283, in set_numvfs
      curr_numvfs = get_numvfs(ifname)
      File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 224, in get_numvfs
      processutils.execute(*cmd)
      File "/usr/lib/python3.6/site-packages/oslo_concurrency/processutils.py", line 441, in execute
      cmd=sanitized_cmd)
      oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command.
      Command: /usr/bin/udevadm wait -t 60 /sys/class/net/enp4s0f0/
      Exit code: 2
      Stdout: ''
      Stderr: 'udevadm: missing or unknown command\n'
      NoneType: None
      2024-11-13 10:26:52.021 ERROR os_net_config.common.log_exceptions Traceback (most recent call last):
      File "/usr/bin/os-net-config-sriov", line 10, in <module>
      sys.exit(main())
      File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 924, in main
      configure_sriov_pf()
      File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 400, in configure_sriov_pf
      if pf_configure_status(item):
      File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 772, in pf_configure_status
      return pf_device['numvfs'] == get_numvfs(pf_device['name'])
      File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 224, in get_numvfs
      processutils.execute(*cmd)
      File "/usr/lib/python3.6/site-packages/oslo_concurrency/processutils.py", line 441, in execute
      cmd=sanitized_cmd)
      oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command.
      Command: /usr/bin/udevadm wait -t 60 /sys/class/net/enp6s0f2/
      Exit code: 2
      Stdout: ''
      Stderr: 'udevadm: missing or unknown command\n'
      NoneType: None

      Version-Release number of selected component (if applicable):
      RHOS-17.1-RHEL-8-20241030.n.1

      How reproducible:
      Run ffu job DFG-nfv-ffu-ospd-17.1-ext-ceph-hybrid-ovn
      It will fail in second tempest execution because vfs are not found because they are not configured in one of the compute nodes
      tempest.exceptions.BuildErrorException: Server 128dc644-3872-425f-89ac-4f246b4b2fc9 failed to build and is in ERROR status
      Details: Fault:

      {'code': 500, 'created': '2024-11-13T10:55:42Z', 'message': 'PCI device 0000:06:0b.1 not found', 'details': 'Traceback (most recent call last):\n File "/usr/lib/python3.9/site-packages/nova/pci/utils.py", line 155, in get_ifname_by_pci_address\n dev_info = os.listdir(dev_path)\nFileNotFoundError: [Errno 2] No such file or directory: \'/sys/bus/pci/devices/0000:06:0b.1/physfn/net\'\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 2512, in _build_and_run_instance\n self.driver.spawn(context, instance, image_meta,\n File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 4284, in spawn\n self._create_guest_with_network(\n File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 7407, in _create_guest_with_network\n self._cleanup(\n File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 227, in __exit__\n self.force_reraise()\n File "/usr/lib/python3.9/site-packages/oslo_utils/excutils.py", line 200, in force_reraise\n raise self.value\n File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 7372, in _create_guest_with_network\n self.plug_vifs(instance, network_info)\n File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/driver.py", line 1366, in plug_vifs\n self.vif_driver.plug(instance, vif)\n File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/vif.py", line 732, in plug\n self.plug_hw_veb(instance, vif)\n File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/vif.py", line 640, in plug_hw_veb\n set_vf_trusted(vif[\'profile\'][\'pci_slot\'], True)\n File "/usr/lib/python3.9/site-packages/nova/virt/libvirt/vif.py", line 120, in set_vf_trusted\n pf_ifname = pci_utils.get_ifname_by_pci_address(pci_addr,\n File "/usr/lib/python3.9/site-packages/nova/pci/utils.py", line 158, in get_ifname_by_pci_address\n raise exception.PciDeviceNotFoundById(id=pci_addr)\nnova.exception.PciDeviceNotFoundById: PCI device 0000:06:0b.1 not found\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 2329, in _do_build_and_run_instance\n self._build_and_run_instance(context, instance, image,\n File "/usr/lib/python3.9/site-packages/nova/compute/manager.py", line 2619, in _build_and_run_instance\n raise exception.RescheduledException(\nnova.exception.RescheduledException: Build of instance 128dc644-3872-425f-89ac-4f246b4b2fc9 was re-scheduled: PCI device 0000:06:0b.1 not found\n'}

      .

      Actual results:
      os-net-config fails due to udevadm command

      Expected results:
      os-net-config should run sucessfully

      Additional info:

              rdiazcam@redhat.com Ricardo Diaz Campos
              jira-bugzilla-migration RH Bugzilla Integration
              RH Bugzilla Integration RH Bugzilla Integration
              rhos-dfg-nfv
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: