Description of problem: ----------------------- Interface names with capital letters cannot be configured to be used as SR-IOV interfaces Version-Release number of selected component (if applicable): RHSOP13 How reproducible: ----------------- Always reproducible Steps to Reproduce: -------------------- 1.Get interfaces containing capital letters, in my case "Intel Corporation Ethernet Controller XL710 for 40GbE QSFP+" 2.Configure those interfaces for SR-IOV: NeutronPhysicalDevMappings: - sriov:enP65536p3s0f0 NeutronSriovNumVFs: - enP65536p3s0f0:32 NovaPCIPassthrough: - devname: "enP65536p3s0f0" physical_network: "sriov 3.try to deploy Actual results: ---------------- Deployment fails with this error: overcloud.AllNodesDeploySteps.ComputeHCIDeployment_Step1.2: resource_type: OS::Heat::StructuredDeployment physical_resource_id: f45149ec-158f-418a-8fcb-90a1d055733b status: UPDATE_FAILED status_reason: | Error: resources[2]: Deployment to server failed: deploy_status_code : Deployment exited with non-zero status code: 2 deploy_stdout: | ... " with Stdlib::Compat::Hash. There is further documentation for validate_legacy function in the README. at [\"/etc/puppet/modules/ssh/manifests/server.pp\", 12]:[\"/var/lib/tripleo-config/puppet_step_config.pp\", 42]", "Warning: tag is a metaparam; this value will inherit to all contained resources in the tripleo::firewall::rule definition", "Error: Parameter name failed on Sriov_vf_config[enP65536p3s0f0:32]: Invalid value \"enP65536p3s0f0:32\". Valid values match /^[a-z0-9\\-_]+:[0-9]+(:(switchdev|legacy))?$/. at /etc/puppet/modules/tripleo/manifests/host/sriov.pp:22" ] } to retry, use: --limit @/var/lib/heat-config/heat-config-ansible/d024d019-6bdc-4233-aa50-7d86b66868ef_playbook.retry PLAY RECAP ********************************************************************* localhost : ok=23 changed=9 unreachable=0 failed=1 (truncated, view all with --long) deploy_stderr: | Expected results: Deployment completes with these interfaces configured for SR-IOV Additional info: ---------------- If you change to underscore letters the error does not happen but the SR-IOV configuration is not right: [root@computehci-1 ~]# cat /sys/class/net/enP65536p3s0f0/device/sriov_numvfs 0 I looked for the file that is preventing to use capital letters: (undercloud) [stack@director ~]$ grep -Ri "switchdev|legacy" /etc/puppet/modules/tripleo/ /etc/puppet/modules/tripleo/lib/puppet/type/sriov_vf_config.rb: newvalues(/^[a-z0-9\-_]+:[0-9]+(:(switchdev|legacy))?$/) I changed the filter to: newvalues(/^[a-zA-Z0-9\-_]+:[0-9]+(:(switchdev|legacy))?$/) I tried to deploy again and the error disappeared and now the VFs appear in the interface configuration: [root@computehci-1 ~]# cat /sys/class/net/enP65536p3s0f0/device/sriov_numvfs 32
Please, if you are using these XL710 NIC be aware of https://bugzilla.redhat.com/show_bug.cgi?id=1729485
According to our records, this should be resolved by puppet-tripleo-8.5.1-8.el7ost. This build is available now.
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 120 days