Comment 7 for bug 1800877

Revision history for this message
Mauricio Faria de Oliveira (mfo) wrote :

Verification successful on xenial-proposed.
Updated verification tags.

Steps
=====

Setup 1) Enable xenial-proposed and install the iproute2 package:
---

$ echo 'deb http://archive.ubuntu.com/ubuntu xenial-proposed main restricted' | sudo tee /etc/apt/sources.list.d/xenial-proposed.list
deb http://archive.ubuntu.com/ubuntu xenial-proposed main restricted

$ sudo apt-get update

$ apt-cache madison iproute2 | grep xenial-proposed
  iproute2 | 4.3.0-1ubuntu3.16.04.4 | http://archive.ubuntu.com/ubuntu xenial-proposed/main amd64 Packages

$ sudo apt-get install -y iproute2

$ dpkg -s iproute2 | grep Version
Version: 4.3.0-1ubuntu3.16.04.4

Setup 2) Configure 2 VFs in the ixgbe driver:
---

# lspci -s 08:00
08:00.0 Ethernet controller: Intel Corporation 82599 10 Gigabit TN Network Connection (rev 01)
08:00.1 Ethernet controller: Intel Corporation 82599 10 Gigabit TN Network Connection (rev 01)

# echo 2 > /sys/bus/pci/devices/0000\:08\:00.0/sriov_numvfs

# dmesg | grep Virtual
[ 817.815245] ixgbevf: Intel(R) 10 Gigabit PCI Express Virtual Function Network Driver - version 2.12.1-k
[ 818.825923] ixgbevf 0000:08:10.0: Intel(R) 82599 Virtual Function
[ 818.837931] ixgbevf 0000:08:10.2: Intel(R) 82599 Virtual Function

# lspci -s 08:10
08:10.0 Ethernet controller: Intel Corporation 82599 Ethernet Controller Virtual Function (rev 01)
08:10.2 Ethernet controller: Intel Corporation 82599 Ethernet Controller Virtual Function (rev 01)

Verification 1) Check for 'trust' in 'ip link help':
---

# ip link help 2>&1 | grep trust
                                   [ trust { on | off} ] ]

Verification 2) Check for 'trust' in 'ip link show'
---

# ip link show dev eth0
6: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 68:05:ca:28:ff:9a brd ff:ff:ff:ff:ff:ff
    vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
    vf 1 MAC aa:fd:21:3f:93:1b, spoof checking on, link-state auto, trust off

Verification 3) Set 'trust' on/off in the VFs
---

Trust setting is off by default:

# ip link show dev eth0 | grep trust
    vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
    vf 1 MAC aa:fd:21:3f:93:1b, spoof checking on, link-state auto, trust off

Enable trust setting on vf0:

# ip link set eth0 vf 0 trust on
# ip link show dev eth0 | grep trust
    vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust on
    vf 1 MAC aa:fd:21:3f:93:1b, spoof checking on, link-state auto, trust off

Enable trust setting on vf1:

# ip link set eth0 vf 1 trust on
# ip link show dev eth0 | grep trust
    vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust on
    vf 1 MAC aa:fd:21:3f:93:1b, spoof checking on, link-state auto, trust on

Disable trust setting on vf0:

# ip link set eth0 vf 0 trust off
# ip link show dev eth0 | grep trust
    vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
    vf 1 MAC aa:fd:21:3f:93:1b, spoof checking on, link-state auto, trust on

Disable trust setting on vf1:

# ip link set eth0 vf 1 trust off
# ip link show dev eth0 | grep trust
    vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
    vf 1 MAC aa:fd:21:3f:93:1b, spoof checking on, link-state auto, trust off