Intel® Ethernet Controller E810 Application Device Queues (ADQ)

Configuration Guide

ID 609008
Date 04/03/2023
Version 2.8
Document Table of Contents

SUT Configuration Bare Metal VF

This section describes the SUT configuration using ADQ with a bare metal VF, spawning one or more VFs on the physical server itself, not from within a Virtual Machine (VM).

  1. Unload and reload the PF and VF drivers and bring up the PF interface. rmmod iavf sleep 1 rmmod ice sleep 2 modprobe ice sleep 2 modprobe iavf sleep 2 ifup $iface_pf
  2. Spawn VFs. Use the following command to create virtual function(s). echo $numvfs > /sys/class/net/$iface_pf/device/sriov_numvfs sleep 2

    The following example creates 1 VF on the p1p2 PF network interface:

    echo 1 > /sys/class/net/p1p2/device/sriov_numvfs Note:Note:To find the maximum number of VFs supported by the PF network device: cat /sys/class/net/$iface_pf/device/sriov_totalvfs
    1. Verify the creation of the VF device(s) using the lspci utility. For example: lspci | grep -i virtual 18:11.0 Ethernet controller: Intel Corporation Ethernet Adaptive Virtual Function (rev 01)
    2. Verify the creation of the VF interface(s) using the ip addr command. The VF interface is the PF interface name with a _​0 or v0 suffix (_​1, _​2, and so on or v1, v2, and so on for multiple VFs). The VF interface is represented by $iface_​vf in this section.

    For example, if the PF interface is p1p2, the VF spawned above would create VF interface p1p2_​0:

    12: p1p2_0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 7a:79:3c:b0:8f:da brd ff:ff:ff:ff:ff:ff inet 13.100.4.21/24 scope global p1p2_0 valid_lft forever preferred_lft forever
  3. Disable spoof checking and enable trust on each of the VF interfaces. ip link set dev $iface_pf vf 0 spoofchk off ip link set dev $iface_pf vf 0 trust on

    Verify spoof checking and trust settings using ip link command:

    11: p1p2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether 68:05:ca:a3:70:71 brd ff:ff:ff:ff:ff:ff vf 0 MAC 7a:79:3c:b0:8f:da, spoof checking off, link-state auto, trust on 12: p1p2_0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether 7a:79:3c:b0:8f:da brd ff:ff:ff:ff:ff:ff Note:Trusted mode must be enabled for TC filters to be created in the hardware on the NIC. If the iavf driver is used without trusted mode enabled, TC filters are added to the software table but not offloaded to hardware, as documented in Fixed and Known Issues - Read First.
  4. Bring up the VF interface and assign an IP Address. ip addr add $ipaddr_vf dev $iface_vf ifup $iface_vf

    Verify connectivity with link partner.

    ping $ipaddrclient
Note:Some applications expect the IP Address of the VF interface to be on a separate subnet than the PF interface. If ADQ application traffic configured for a VF interface is directed to the PF interface, check the subnets.