Controlling Host PF and VF Parameters

NVIDIA® BlueField® allows control over some of the networking parameters of the PFs and VFs running on the host side.

From the Arm, users may configure the MAC address of the physical function in the host. After sending the command, users must reload the NVIDIA driver in the host to see the newly configured MAC address. The MAC address goes back to the default value in the FW after system reboot.

Example:

Copy
Copied!
            

$ echo "c4:8a:07:a5:29:59" > /sys/class/net/p0/smart_nic/pf/mac $ echo "c4:8a:07:a5:29:61" > /sys/class/net/p0/smart_nic/vf0/mac

vPort state can be configured to Up, Down, or Follow. For example:

Copy
Copied!
            

$ echo "Follow" > /sys/class/net/p0/smart_nic/pf/vport_state

To query the current configuration, run:

Copy
Copied!
            

$ cat /sys/class/net/p0/smart_nic/pf/config MAC : e4:8b:01:a5:79:5e MaxTxRate : 0 State : Follow

Zero signifies that the rate limit is unlimited.

It is possible to not expose ConnectX networking functions to the host for users interested in using storage or VirtIO functions only. When this feature is enabled, the host PF representors (i.e. pf0hpf and pf1hpf) will not be seen on the Arm.

  • Without a PF on the host, it is not possible to enable SR-IOV, so VF representors will not be seen on the Arm either

  • Without PFs on the host, there can be no SFs on it

To disable host networking PFs, run:

Copy
Copied!
            

mlxconfig -d /dev/mst/mt41686_pciconf0 s NUM_OF_PF=0

To reactivate host networking PFs:

  • For single-port DPUs, run:

    Copy
    Copied!
                

    mlxconfig -d /dev/mst/mt41686_pciconf0 s NUM_OF_PF=1

  • For dual-port DPUs, run:

    Copy
    Copied!
                

    mlxconfig -d /dev/mst/mt41686_pciconf0 s NUM_OF_PF=2

Warning

When there are no networking functions exposed on the host, the reactivation command must be run from the Arm.

Warning

Graceful shutdown and power cycle are required to apply configuration changes.

© Copyright 2023, NVIDIA. Last updated on Mar 6, 2024.