Hi, i had the same issue on Alpine Linux with an Supermicro X10SLL-F. CPU is a Xeon E3-1270 V3 (a QS actually) Using that parameter worked for me!
x10:~# cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-lts root=UUID=zzzz ro modules=sd-mod,usb-storage,ext4 quiet modules=sd-mod,usb-storage,ext4 quiet intel_iommu=on iommu=pti pci=realloc,assign-busses rootfstype=ext4
Intel NIC is
02:00.0 Ethernet controller: Intel Corporation Ethernet Controller 10-Gigabit X540-AT2 (rev 01)
02:00.1 Ethernet controller: Intel Corporation Ethernet Controller 10-Gigabit X540-AT2 (rev 01)
I'll include all NICs below for better understanding.
- Mellanox ConnectX-3 EN needed pti+realloc,
- Intel X540 needed assign-busses
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I217-LM (rev 05)
02:00.0 Ethernet controller: Intel Corporation Ethernet Controller 10-Gigabit X540-AT2 (rev 01)
02:00.1 Ethernet controller: Intel Corporation Ethernet Controller 10-Gigabit X540-AT2 (rev 01)
03:10.0 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:10.1 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:10.2 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:10.3 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:10.4 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:10.5 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:10.6 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:10.7 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:11.0 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:11.1 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:11.2 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:11.3 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:11.4 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:11.5 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:11.6 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
03:11.7 Ethernet controller: Intel Corporation X540 Ethernet Controller Virtual Function (rev 01)
06:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
07:00.0 Ethernet controller: Mellanox Technologies MT27520 Family [ConnectX-3 Pro]
07:00.1 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:00.2 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:00.3 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:00.4 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:00.5 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:00.6 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:00.7 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:01.0 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:01.1 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:01.2 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:01.3 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:01.4 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:01.5 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:01.6 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:01.7 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
07:02.0 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
x10:/etc/modprobe.d# cat mlx4.conf
#blacklist mlx4_core
#blacklist mlx4_en
blacklist mlx5_core
blacklist mlx5_ib
options mlx4_core debug_level=1 num_vfs=8,8,0 probe_vf=8,8,0
options mlx4_core enable_sys_tune=1
options mlx4_en inline_thold=0
options mlx4_core log_num_mgm_entry_size=-7
# Enable per priority flow control for send and receive, setting both priority
# 1 and 2 as no drop priorities
#options mlx4_en pfctx=3 pfcrx=3
x10:/etc/modprobe.d# cat mlx4.conf ixgbe.conf
#blacklist mlx4_core
#blacklist mlx4_en
blacklist mlx5_core
blacklist mlx5_ib
options mlx4_core debug_level=1 num_vfs=8,8,0 probe_vf=8,8,0
options mlx4_core enable_sys_tune=1
options mlx4_en inline_thold=0
options mlx4_core log_num_mgm_entry_size=-7
# Enable per priority flow control for send and receive, setting both priority
# 1 and 2 as no drop priorities
#options mlx4_en pfctx=3 pfcrx=3
# deprecated
#options ixgbe max_vfs=16
This is the first time I got this f*****ing stuff to work in half a decade, and the last time was a disaster anyway (very old Mellanox ConnectX2 or X3 that totally trashed performance when VF were active)
intel gets enabled via sysfs, adding tomorrow I lost it here
echo num > /sys/class/net/ethXXX/device/sriov_numvfs I think