Description of problem: os-net-config failing when configuring nic partitioning on e810c nic. It execute a command that is not supported by e810c nic: ip link set dev ens1f0 vf 0 max_tx_rate 0 [2021/06/08 08:36:37 AM] [INFO] Getting stored PCI address as devarg [2021/06/08 08:36:37 AM] [INFO] Configuring VFs now [2021/06/08 08:36:37 AM] [INFO] Configuring settings for PF: ens1f0 VF :0 VF name : ens1f0v0 [2021/06/08 08:36:37 AM] [INFO] Running ip link set dev ens1f0 vf 0 vlan 170 [2021/06/08 08:36:37 AM] [INFO] Running ip link set dev ens1f0 vf 0 max_tx_rate 0 [2021/06/08 08:36:48 AM] [ERROR] Failed to execute ip link set dev ens1f0 vf 0 max_tx_rate 0 Traceback (most recent call last): File "/bin/os-net-config", line 10, in <module> sys.exit(main()) File "/usr/lib/python3.6/site-packages/os_net_config/cli.py", line 346, in main utils.configure_sriov_vfs() File "/usr/lib/python3.6/site-packages/os_net_config/utils.py", line 609, in configure_sriov_vfs sriov_config.configure_sriov_vf() File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 538, in configure_sriov_vf run_ip_config_cmd(*cmd) File "/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py", line 451, in run_ip_config_cmd processutils.execute(*cmd, delay_on_retry=True, attempts=10, **kwargs) File "/usr/lib/python3.6/site-packages/oslo_concurrency/processutils.py", line 431, in execute cmd=sanitized_cmd) oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. Command: ip link set dev ens1f0 vf 0 max_tx_rate 0 Exit code: 2 Stdout: '' Stderr: 'RTNETLINK answers: Operation not supported\n' [root@computeovsdpdksriov-r740-0 heat-admin]# ip link set dev ens1f0 vf 0 max_tx_rate 0 RTNETLINK answers: Operation not supported See comment regarding this issue: https://bugzilla.redhat.com/show_bug.cgi?id=1892796#c44 This command is executed even if max_tx_rate is not present in the templates Version-Release number of selected component (if applicable): RHOS-16.2-RHEL-8-20210525.n.0 How reproducible: Deploy nic partitioning on e810c I used the following templates: https://gitlab.cee.redhat.com/mnietoji/deployment_templates/-/tree/bc8b0c05c0c0628a72f73febae1f8df902307b63/tht/ospd-16.2-vxlan-dpdk-sriov-ctlplane-dataplane-bonding-hybrid Actual results: nic partitioning on e810c fails Expected results: nic partitioning on e810c should work Additional info:
General question, should the tool (os-net-config) not generate a traceback when the kernel says an operation is not supported? This appears to be a general problem with the tool, not with any specific NIC.
To clarify about the purpose of this bz. This is only related to capture the exception if there is an error configuring this command: ip link set dev ens1f0 vf 0 max_tx_rate 0 os-net-config should report and error and continue executing. For supporting qos in e810 nic there is a different bz: https://bugzilla.redhat.com/show_bug.cgi?id=1973187
Fix in puddle RHOS-16.2-RHEL-8-20220427.n.3 os-net-config-11.5.1-2.20220404114957.173ef73.el8ost.noarch In this puddle, qos command is failing but os-net-config is capturing the error and not failing [heat-admin@computedpdksriov-r740-0 ~]$ sudo ip link set dev ens1f0 vf 0 max_tx_rate 0 RTNETLINK answers: Operation not supported
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 (Release of components for Red Hat OpenStack Platform 16.2.3 (Train)), 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-2022:4793