Bug 1762691 - NIC Partitioning: Failed to configure spoofchk for VF associated with ovs user bridge
Summary: NIC Partitioning: Failed to configure spoofchk for VF associated with ovs use...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: os-net-config
Version: 16.0 (Train)
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: z2
: 16.1 (Train on RHEL 8.2)
Assignee: Karthik Sundaravel
QA Contact: nlevinki
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-10-17 09:14 UTC by Jaganathan Palanisamy
Modified: 2020-10-28 15:37 UTC (History)
12 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-10-28 15:36:47 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 727107 0 None MERGED Retries are attempted if VF configuration fails 2020-12-24 01:52:54 UTC
OpenStack gerrit 727634 0 None MERGED Retries are attempted if VF configuration fails 2020-12-24 01:53:27 UTC
Red Hat Product Errata RHEA-2020:4284 0 None None None 2020-10-28 15:37:54 UTC

Description Jaganathan Palanisamy 2019-10-17 09:14:52 UTC
Description of problem:

Failed to configure spoofchk for VF associated with ovs user bridge in NIC partitioning deployment.

fatal: [overcloud-computeovsdpdksriov-0]: FAILED! => {
    "NetworkConfig_result.stderr_lines": [
        "+ '[' -n '{\"network_config\": [{\"addresses\": [{\"ip_netmask\": \"192.168.30.30/24\"}], \"dns_servers\": [\"10.11.5.19\"], \"name\": \"eno4\", \"routes\": [{\"ip_netmask\": \"169.254.169.254/32\", \"n
ext_hop\": \"192.168.30.1\"}, {\"default\": true, \"next_hop\": \"192.168.30.1\"}], \"type\": \"interface\", \"use_dhcp\": false}, {\"defroute\": false, \"name\": \"eno3\", \"type\": \"interface\", \"use_dhcp\":
 true}, {\"defroute\": false, \"name\": \"eno1\", \"type\": \"interface\", \"use_dhcp\": false}, {\"defroute\": false, \"hotplug\": true, \"mtu\": 9000, \"name\": \"eno2\", \"nm_controlled\": true, \"numvfs\": 8
, \"type\": \"sriov_pf\", \"use_dhcp\": false}, {\"addresses\": [{\"ip_netmask\": \"182.50.32.43/24\"}], \"device\": \"eno2\", \"type\": \"sriov_vf\", \"vfid\": 2, \"vlan_id\": 304}, {\"addresses\": [{\"ip_netma
sk\": \"182.50.16.194/24\"}], \"device\": \"eno2\", \"type\": \"sriov_vf\", \"vfid\": 3, \"vlan_id\": 302}, {\"addresses\": [{\"ip_netmask\": \"182.50.0.20/24\"}], \"members\": [{\"members\": [{\"device\": \"eno
2\", \"type\": \"sriov_vf\", \"vfid\": 1}], \"name\": \"dpdk-tenant-port\", \"type\": \"ovs_dpdk_port\"}], \"name\": \"br-tenant\", \"ovs_extra\": [\"set port br-tenant tag=305\"], \"type\": \"ovs_user_bridge\",
 \"use_dhcp\": false}]}' ']'",
        "+ '[' -z '' ']'",
        "+ trap configure_safe_defaults EXIT",
        "++ date +%Y-%m-%dT%H:%M:%S",
        "+ DATETIME=2019-10-17T03:04:07",
        "+ '[' -f /etc/os-net-config/config.json ']'",
        "+ mkdir -p /etc/os-net-config",
        "+ echo '{\"network_config\": [{\"addresses\": [{\"ip_netmask\": \"192.168.30.30/24\"}], \"dns_servers\": [\"10.11.5.19\"], \"name\": \"eno4\", \"routes\": [{\"ip_netmask\": \"169.254.169.254/32\", \"nex
t_hop\": \"192.168.30.1\"}, {\"default\": true, \"next_hop\": \"192.168.30.1\"}], \"type\": \"interface\", \"use_dhcp\": false}, {\"defroute\": false, \"name\": \"eno3\", \"type\": \"interface\", \"use_dhcp\": t
rue}, {\"defroute\": false, \"name\": \"eno1\", \"type\": \"interface\", \"use_dhcp\": false}, {\"defroute\": false, \"hotplug\": true, \"mtu\": 9000, \"name\": \"eno2\", \"nm_controlled\": true, \"numvfs\": 8, 
\"type\": \"sriov_pf\", \"use_dhcp\": false}, {\"addresses\": [{\"ip_netmask\": \"182.50.32.43/24\"}], \"device\": \"eno2\", \"type\": \"sriov_vf\", \"vfid\": 2, \"vlan_id\": 304}, {\"addresses\": [{\"ip_netmask
\": \"182.50.16.194/24\"}], \"device\": \"eno2\", \"type\": \"sriov_vf\", \"vfid\": 3, \"vlan_id\": 302}, {\"addresses\": [{\"ip_netmask\": \"182.50.0.20/24\"}], \"members\": [{\"members\": [{\"device\": \"eno2\
", \"type\": \"sriov_vf\", \"vfid\": 1}], \"name\": \"dpdk-tenant-port\", \"type\": \"ovs_dpdk_port\"}], \"name\": \"br-tenant\", \"ovs_extra\": [\"set port br-tenant tag=305\"], \"type\": \"ovs_user_bridge\", \
"use_dhcp\": false}]}'",
        "++ type -t network_config_hook",
        "+ '[' '' = function ']'",
        "+ sed -i s/bridge_name/br-ex/ /etc/os-net-config/config.json",   
        "+ sed -i s/interface_name/nic1/ /etc/os-net-config/config.json", 
        "+ set +e",
        "+ os-net-config -c /etc/os-net-config/config.json -v --detailed-exit-codes",
        "[2019/10/17 03:04:08 AM] [INFO] Using config file at: /etc/os-net-config/config.json",
        "[2019/10/17 03:04:08 AM] [INFO] Ifcfg net config provider created.",
        "[2019/10/17 03:04:08 AM] [INFO] Not using any mapping file.",
        "[2019/10/17 03:04:09 AM] [INFO] Finding active nics",
        "[2019/10/17 03:04:09 AM] [INFO] eno3 is an embedded active nic", 
        "[2019/10/17 03:04:09 AM] [INFO] eno1 is an embedded active nic", 
        "[2019/10/17 03:04:09 AM] [INFO] lo is not an active nic",
        "[2019/10/17 03:04:09 AM] [INFO] eno4 is an embedded active nic", 
        "[2019/10/17 03:04:09 AM] [INFO] eno2 is an embedded active nic", 
        "[2019/10/17 03:04:09 AM] [INFO] No DPDK mapping available in path (/var/lib/os-net-config/dpdk_mapping.yaml)",
        "[2019/10/17 03:04:09 AM] [INFO] Active nics are ['eno1', 'eno2', 'eno3', 'eno4']",
        "[2019/10/17 03:04:09 AM] [INFO] nic3 mapped to: eno3",
        "[2019/10/17 03:04:09 AM] [INFO] nic4 mapped to: eno4",
        "[2019/10/17 03:04:09 AM] [INFO] nic1 mapped to: eno1",
        "[2019/10/17 03:04:09 AM] [INFO] nic2 mapped to: eno2",
        "[2019/10/17 03:04:09 AM] [INFO] adding sriov pf: eno2",
        "[2019/10/17 03:04:09 AM] [INFO] applying network configs...",
        "[2019/10/17 03:04:09 AM] [INFO] running ifdown on interface: eno2",
        "[2019/10/17 03:04:09 AM] [INFO] interface eno2 is up, trying with ip command",
        "[2019/10/17 03:04:09 AM] [INFO] Writing config /etc/sysconfig/network-scripts/ifcfg-eno2",
        "[2019/10/17 03:04:09 AM] [INFO] running ifup on interface: eno2",
        "[2019/10/17 03:04:09 AM] [INFO] Configuring PFs now",
        "[2019/10/17 03:04:09 AM] [INFO] Running ip link set dev eno2 promisc on",
        "[2019/10/17 03:04:09 AM] [INFO] Bringing up PF: eno2",
        "[2019/10/17 03:04:09 AM] [INFO] Running ip link set dev eno2 up",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event add for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.0/net/eno2v0",
        "[2019/10/17 03:04:11 AM] [INFO] VF: eno2v0 created for PF: eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event add for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.2/net/eno2v2",
        "[2019/10/17 03:04:11 AM] [INFO] VF: eno2v2 created for PF: eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event move for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.2/net/eno2v2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event move for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.0/net/eno2v0",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event add for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.1/net/eno2v1",
        "[2019/10/17 03:04:11 AM] [INFO] VF: eno2v1 created for PF: eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event move for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.1/net/eno2v1",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event add for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.3/net/eno2v3",
        "[2019/10/17 03:04:11 AM] [INFO] VF: eno2v3 created for PF: eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event move for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.3/net/eno2v3",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event add for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.5/net/eno2v5",
        "[2019/10/17 03:04:11 AM] [INFO] VF: eno2v5 created for PF: eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event add for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.7/net/eno2v7",
        "[2019/10/17 03:04:11 AM] [INFO] VF: eno2v7 created for PF: eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event move for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.5/net/eno2v5",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event add for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.4/net/eno2v4",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event move for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.7/net/eno2v7",
        "[2019/10/17 03:04:11 AM] [INFO] VF: eno2v4 created for PF: eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event move for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.4/net/eno2v4",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event add for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.6/net/eno2v6",
        "[2019/10/17 03:04:11 AM] [INFO] VF: eno2v6 created for PF: eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Required VFs are created for PF eno2",
        "[2019/10/17 03:04:11 AM] [INFO] Received udev event move for /sys/devices/pci0000:00/0000:00:03.0/0000:01:0a.6/net/eno2v6",
        "[2019/10/17 03:04:11 AM] [INFO] adding interface: eno4",
        "[2019/10/17 03:04:11 AM] [INFO] adding custom route for interface: eno4",
        "[2019/10/17 03:04:11 AM] [INFO] adding interface: eno3",
        "[2019/10/17 03:04:11 AM] [INFO] adding interface: eno1",
        "[2019/10/17 03:04:11 AM] [INFO] adding sriov vf: eno2v2 for pf: eno2, vfid: 2",
        "[2019/10/17 03:04:11 AM] [INFO] adding sriov vf: eno2v3 for pf: eno2, vfid: 3",
        "[2019/10/17 03:04:11 AM] [INFO] Trust is not set for VF eno2:1, defaulting to on",
        "[2019/10/17 03:04:11 AM] [INFO] Spoofcheck is not set for VF eno2:1, defaulting to off",
        "[2019/10/17 03:04:11 AM] [INFO] adding ovs user bridge: br-tenant",
        "[2019/10/17 03:04:11 AM] [INFO] adding ovs dpdk port: dpdk-tenant-port",
        "[2019/10/17 03:04:12 AM] [INFO] Configuring VFs now",
        "[2019/10/17 03:04:12 AM] [INFO] Configuring settings for PF: eno2 VF :2 VF name : eno2v2",
        "[2019/10/17 03:04:12 AM] [INFO] Running ip link set dev eno2 vf 2 vlan 304",
        "[2019/10/17 03:04:12 AM] [INFO] Configuring settings for PF: eno2 VF :3 VF name : eno2v3",
        "[2019/10/17 03:04:12 AM] [INFO] Running ip link set dev eno2 vf 3 vlan 302",
        "[2019/10/17 03:04:12 AM] [INFO] Configuring settings for PF: eno2 VF :1 VF name : eno2v1",
        "[2019/10/17 03:04:12 AM] [INFO] Running ip link set dev eno2 vf 1 spoofchk off",
        "[2019/10/17 03:04:12 AM] [ERROR] Failed to execute ip link set dev eno2 vf 1 spoofchk off",
        "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 340, in main",
        "    utils.configure_sriov_vfs()",
        "  File \"/usr/lib/python3.6/site-packages/os_net_config/utils.py\", line 552, in configure_sriov_vfs",
        "    sriov_config.configure_sriov_vf()",
        "  File \"/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py\", line 454, in configure_sriov_vf",
        "    run_ip_config_cmd(*cmd)",
        "  File \"/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py\", line 366, in run_ip_config_cmd",
        "    processutils.execute(*cmd, **kwargs)",
        "  File \"/usr/lib/python3.6/site-packages/oslo_concurrency/processutils.py\", line 424, in execute",
        "    cmd=sanitized_cmd)",
        "oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command.",
        "Command: ip link set dev eno2 vf 1 spoofchk off",
        "Exit code: 2",
        "Stdout: ''",
        "Stderr: 'RTNETLINK answers: Resource temporarily unavailable\\n'",
        "+ RETVAL=1",
        "+ set -e",
        "+ [[ 1 == 2 ]]",
        "+ [[ 1 != 0 ]]",
        "+ echo 'ERROR: os-net-config configuration failed.'",
        "ERROR: os-net-config configuration failed.",
        "+ exit 1",
        "+ configure_safe_defaults",
        "+ [[ 1 == 0 ]]",
        "+ cat",
        "++ ls /sys/class/net",
        "++ grep -v -e '^lo$' -e '^vnet$'",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno1/addr_assign_type",
        "+ local mac_addr_type=0",
        "+ '[' 0 '!=' 0 ']'",
        "++ cat /sys/class/net/eno1/carrier",
        "+ HAS_LINK=1",
        "+ TRIES=10",
        "+ '[' 1 == 0 -a 10 -gt 0 ']'",
        "+ '[' 1 == 1 ']'",
        "+ cat",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno2/addr_assign_type",
        "+ local mac_addr_type=0",
        "+ '[' 0 '!=' 0 ']'",
        "++ cat /sys/class/net/eno2/carrier",
        "+ HAS_LINK=1",
        "+ TRIES=10",
        "+ '[' 1 == 0 -a 10 -gt 0 ']'",
        "+ '[' 1 == 1 ']'",
        "+ cat",
        "++ ls /sys/class/net",
        "++ grep -v -e '^lo$' -e '^vnet$'",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno1/addr_assign_type",
        "+ local mac_addr_type=0",
        "+ '[' 0 '!=' 0 ']'",
        "++ cat /sys/class/net/eno1/carrier",
        "+ HAS_LINK=1",
        "+ TRIES=10",
        "+ '[' 1 == 0 -a 10 -gt 0 ']'",
        "+ '[' 1 == 1 ']'",
        "+ cat",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno2/addr_assign_type",
        "+ local mac_addr_type=0",
        "+ '[' 0 '!=' 0 ']'",
        "++ cat /sys/class/net/eno2/carrier",
        "+ HAS_LINK=1",
        "+ TRIES=10",
        "+ '[' 1 == 0 -a 10 -gt 0 ']'",
        "+ '[' 1 == 1 ']'",
        "+ cat",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno2v0/addr_assign_type",
        "+ local mac_addr_type=3",
        "+ '[' 3 '!=' 0 ']'",
        "+ echo 'Device has generated MAC, skipping.'",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno2v2/addr_assign_type",
        "+ local mac_addr_type=3",
        "+ '[' 3 '!=' 0 ']'",
        "+ echo 'Device has generated MAC, skipping.'",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno2v3/addr_assign_type",
        "+ local mac_addr_type=3",
        "+ '[' 3 '!=' 0 ']'",
        "+ echo 'Device has generated MAC, skipping.'",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno2v4/addr_assign_type",
        "+ local mac_addr_type=3",
        "+ '[' 3 '!=' 0 ']'",
        "+ echo 'Device has generated MAC, skipping.'",
        "+ for iface in $(ls /sys/class/net | grep -v -e ^lo$ -e ^vnet$)",
        "++ cat /sys/class/net/eno2v5/addr_assign_type",
        "+ local mac_addr_type=3",
        "+ '[' 3 '!=' 0 ']'",
  "+ HAS_LINK=1",
        "+ TRIES=10",
        "+ '[' 1 == 0 -a 10 -gt 0 ']'",
        "+ '[' 1 == 1 ']'",
        "+ cat",
        "+ set +e",
        "+ os-net-config -c /etc/os-net-config/dhcp_all_interfaces.yaml -v --detailed-exit-codes --cleanup",
        "[2019/10/17 03:04:13 AM] [INFO] Using config file at: /etc/os-net-config/dhcp_all_interfaces.yaml",
        "[2019/10/17 03:04:13 AM] [INFO] Ifcfg net config provider created.",
        "[2019/10/17 03:04:13 AM] [INFO] Not using any mapping file.",
        "[2019/10/17 03:04:13 AM] [INFO] Finding active nics",
        "[2019/10/17 03:04:13 AM] [INFO] eno2v7 is not an active nic",
        "[2019/10/17 03:04:13 AM] [INFO] eno2v5 is not an active nic",
        "[2019/10/17 03:04:13 AM] [INFO] eno3 is an embedded active nic", 
        "[2019/10/17 03:04:13 AM] [INFO] eno2v3 is not an active nic",
        "[2019/10/17 03:04:13 AM] [INFO] eno1 is an embedded active nic", 
        "[2019/10/17 03:04:13 AM] [INFO] lo is not an active nic",
        "[2019/10/17 03:04:13 AM] [INFO] eno2v6 is not an active nic",
        "[2019/10/17 03:04:13 AM] [INFO] eno4 is an embedded active nic", 
        "[2019/10/17 03:04:13 AM] [INFO] eno2v4 is not an active nic",
        "[2019/10/17 03:04:13 AM] [INFO] eno2 is an embedded active nic", 
        "[2019/10/17 03:04:13 AM] [INFO] eno2v2 is not an active nic",
        "[2019/10/17 03:04:13 AM] [INFO] eno2v0 is not an active nic",
        "[2019/10/17 03:04:13 AM] [INFO] eno2v1 is an embedded DPDK bound nic",
        "[2019/10/17 03:04:13 AM] [INFO] Active nics are ['eno1', 'eno2', 'eno2v1', 'eno3', 'eno4']",
        "[2019/10/17 03:04:13 AM] [INFO] nic2 mapped to: eno2",
        "[2019/10/17 03:04:13 AM] [INFO] nic5 mapped to: eno4",
        "[2019/10/17 03:04:13 AM] [INFO] nic3 mapped to: eno2v1",
        "[2019/10/17 03:04:13 AM] [INFO] nic1 mapped to: eno1",
        "[2019/10/17 03:04:13 AM] [INFO] nic4 mapped to: eno3",
        "[2019/10/17 03:04:13 AM] [INFO] adding interface: eno1",
        "[2019/10/17 03:04:13 AM] [INFO] adding interface: eno2",
        "[2019/10/17 03:04:13 AM] [INFO] adding interface: eno3",
        "[2019/10/17 03:04:13 AM] [INFO] adding interface: eno4",
        "[2019/10/17 03:04:13 AM] [INFO] applying network configs...",
        "[2019/10/17 03:04:13 AM] [INFO] running ifdown on interface: eno1",
        "[2019/10/17 03:04:13 AM] [INFO] interface eno1 is up, trying with ip command",
        "[2019/10/17 03:04:13 AM] [INFO] running ifdown on interface: eno2",
        "[2019/10/17 03:04:14 AM] [INFO] interface eno2 is up, trying with ip command",
        "[2019/10/17 03:04:14 AM] [INFO] running ifdown on interface: eno3",
        "[2019/10/17 03:04:14 AM] [INFO] interface eno3 is up, trying with ip command",
        "[2019/10/17 03:04:14 AM] [INFO] running ifdown on interface: eno4",
        "[2019/10/17 03:04:14 AM] [INFO] interface eno4 is up, trying with ip command",
        "[2019/10/17 03:04:14 AM] [INFO] Writing config /etc/sysconfig/network-scripts/ifcfg-eno1",
        "[2019/10/17 03:04:14 AM] [INFO] Writing config /etc/sysconfig/network-scripts/ifcfg-eno2",
        "[2019/10/17 03:04:14 AM] [INFO] Writing config /etc/sysconfig/network-scripts/ifcfg-eno3",
        "[2019/10/17 03:04:14 AM] [INFO] Writing config /etc/sysconfig/network-scripts/ifcfg-eno4",
        "[2019/10/17 03:04:14 AM] [INFO] running ifup on interface: eno1",
        "[2019/10/17 03:04:45 AM] [INFO] running ifup on interface: eno2",
        "[2019/10/17 03:05:16 AM] [INFO] running ifup on interface: eno3",
        "[2019/10/17 03:05:30 AM] [INFO] running ifup on interface: eno4",
        "[2019/10/17 03:05:36 AM] [ERROR] Failure(s) occurred when applying configuration",
        "[2019/10/17 03:05:36 AM] [ERROR] stdout: ",
        "Determining IP information for eno1... failed.",
        ", stderr: WARN      : [ifup] You are using 'ifup' script provided by 'network-scripts', which are now deprecated.",
        "WARN      : [ifup] 'network-scripts' will be removed in one of the next major releases of RHEL.",
        "WARN      : [ifup] It is advised to switch to 'NetworkManager' instead - it provides 'ifup/ifdown' scripts as well.",
        "",
        "[2019/10/17 03:05:36 AM] [ERROR] stdout: ",
        "Determining IP information for eno2... failed.",
        ", stderr: WARN      : [ifup] You are using 'ifup' script provided by 'network-scripts', which are now deprecated.",
        "WARN      : [ifup] 'network-scripts' will be removed in one of the next major releases of RHEL.",
        "WARN      : [ifup] It is advised to switch to 'NetworkManager' instead - it provides 'ifup/ifdown' scripts as well.",
        "",
        "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 343, in main",
        "    activate=not opts.no_activate)",
        "  File \"/usr/lib/python3.6/site-packages/os_net_config/impl_ifcfg.py\", line 1711, in apply",
        "    raise os_net_config.ConfigurationError(message)",
        "os_net_config.ConfigurationError: Failure(s) occurred when applying configuration",
        "+ RETVAL=1",
        "+ set -e",
        "+ [[ 1 != 2 ]]",
        "+ echo 'ERROR: configuration of safe defaults failed.'"
    ],
    "failed_when_result": true
}


network configs:
              - type: sriov_pf
                name: eno2
                mtu: 9000
                numvfs: 8
                use_dhcp: false
                defroute: false
                nm_controlled: true
                hotplug: true
              - type: sriov_vf
                vfid: 2
                vlan_id:
                  get_param: InternalApiNetworkVlanID
                device: eno2
                addresses:
                - ip_netmask:
                    get_param: InternalApiIpSubnet
              - type: sriov_vf
                vfid: 3
                vlan_id:
                  get_param: StorageNetworkVlanID
                device: eno2
                addresses:
                - ip_netmask:
                    get_param: StorageIpSubnet
              - type: ovs_user_bridge
                name: br-tenant
                use_dhcp: false
                addresses:
                - ip_netmask:
                    get_param: TenantIpSubnet
                ovs_extra:
                  - str_replace:
                      template: set port br-tenant tag=_VLAN_TAG_
                      params:
                        _VLAN_TAG_:
                          get_param: TenantNetworkVlanID
                members:
                - type: ovs_dpdk_port
                  name: dpdk-tenant-port
                  members:
                  - type: sriov_vf
                    device: eno2
                    vfid: 1

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Jaganathan Palanisamy 2019-10-17 09:17:55 UTC
Workaround:
In overcloud image, need to set time delay around 5 seconds in os_net_config sriov_config.py file.
/usr/lib/python3.6/site-packages/os_net_config/sriov_config.py

def configure_sriov_vf():
    time.sleep(5)
    sriov_map = _get_sriov_map()
    for item in sriov_map:
        if item['device_type'] == 'vf':
            pf_name = item['device']['name'] 
            vfid = item['device']['vfid']
            base_cmd = ('ip', 'link', 'set', 'dev', pf_name, 'vf', str(vfid))
            logger.info("Configuring settings for PF: %s VF :%d VF name : %s"
                        % (pf_name, vfid, item['name']))
            if 'macaddr' in item:
                cmd = base_cmd + ('mac', item['macaddr'])
                run_ip_config_cmd(*cmd)
            if 'vlan_id' in item:
                vlan_cmd = base_cmd + ('vlan', str(item['vlan_id']))
                if 'qos' in item:
                    vlan_cmd = vlan_cmd + ('qos', str(item['qos']))
                run_ip_config_cmd(*vlan_cmd) 
            if 'spoofcheck' in item:
                cmd = base_cmd + ('spoofchk', item['spoofcheck'])
                run_ip_config_cmd(*cmd)
            if 'state' in item:
                cmd = base_cmd + ('state', item['state'])
                run_ip_config_cmd(*cmd)
            if 'trust' in item:
                cmd = base_cmd + ('trust', item['trust'])
                run_ip_config_cmd(*cmd)
            if 'promisc' in item:
                run_ip_config_cmd('ip', 'link', 'set', 'dev', item['name'],
                                  'promisc', item['promisc'])

Comment 9 Karthik Sundaravel 2020-03-18 06:35:37 UTC
Yariv, This is on Intel cards

Comment 11 Karthik Sundaravel 2020-05-05 11:26:42 UTC
Sanjay

Can you please check if this is still reproducible ?

Comment 12 Sanjay Upadhyay 2020-05-11 15:11:25 UTC
(In reply to Karthik Sundaravel from comment #11)
> Sanjay
> 
> Can you please check if this is still reproducible ?

Karthik,

Can you please share templates to actually recreate the issue? 
I am guessing this is spoofcheck off on nic partitioned VF?
Also please share which release you were testing

Comment 13 Karthik Sundaravel 2020-05-11 15:15:09 UTC
Sanjay,

Its basic nic partitioning templates on OSP16. I am not sure of the puddle we noticed this behaviour.

Comment 21 Miguel Angel Nieto 2020-10-05 14:16:11 UTC
I verified it and it is working.

I edited /etc/os-net-config/config.json and set spoofcheck:
[{"device": "nic11", "type": "sriov_vf", "spoofcheck": true, "vfid": 2, "vlan_id": 121}]

I executed: os-net-config -c /etc/os-net-config/config.json -v --detailed-exit-codes

I didnt get any error
[2020/10/05 02:09:57 PM] [INFO] Configuring settings for PF: enp4s0f0 VF :2 VF name : enp4s0f0v2
[2020/10/05 02:09:57 PM] [INFO] Running ip link set dev enp4s0f0 vf 2 vlan 121
[2020/10/05 02:09:57 PM] [INFO] Running ip link set dev enp4s0f0 vf 2 max_tx_rate 0
[2020/10/05 02:09:57 PM] [INFO] Running ip link set dev enp4s0f0 vf 2 min_tx_rate 0
[2020/10/05 02:09:57 PM] [INFO] Running ip link set dev enp4s0f0 vf 2 spoofchk on
[2020/10/05 02:09:57 PM] [INFO] Running ip link set dev enp4s0f0 vf 2 trust on


vf 2     link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff, vlan 121, spoof checking on, link-state auto, trust on, query_rss off

later i modified againg and set off, and executed the script and disabled it, so it is working

Using RHOS-16.1-RHEL-8-20200930.n.0

Comment 22 Miguel Angel Nieto 2020-10-05 14:18:00 UTC
verified with 
os-net-config-11.3.2-0.20200804083433.f49ab16.el8ost.noarch
RHOS-16.1-RHEL-8-20200930.n.0

Comment 27 errata-xmlrpc 2020-10-28 15:36:47 UTC
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 (Red Hat OpenStack Platform 16.1 bug fix and enhancement advisory), 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/RHEA-2020:4284


Note You need to log in before you can comment on or make changes to this bug.