Hi,
I am using DPDK 16.11 with Mellanox 4.0-1.5.2.0 kernel drivers w/ linux 3.4 kernel (also tried 4.4 kernel)
in a VM running on QEMU/KVM w/ PCI passthru.
ConnectX-3 Pro EN
Firmware: 2.40.5000
Board ID: MT_1060111023
ConnectX-4 EN
Firmware: 12.18.2000
Board ID: MT_2150110033
I have both the ConnectX-3 and ConnectX-4 DPDK drivers working but one major issue for our software is that
multicast traffic is getting looped back to the same port that sends the packets.
The ConnectX-3 (mlx4) driver seems to have issues when traffic is sent from a SR-IOV VF.
Multicast traffic from the PF interface does not have any issues.
The ConnectX-4 (mlx5) driver PF and VF seems to have issues when sending multicast traffic from secondary processes.
I have seen the issue also happen with multiple tx queues in the primary process, but it is not easy to reproduce this issue
with only a primary process.
The ConnectX-3 issue is mentioned in the Mellanox DPDK release notes, but there is no issue mentioned for ConnectX-4.
Is there any way to prevent this from happening?
If we have to filter packets in software this will be a performance hit.
I tried modifying the dpdk/kernel driver code for the ConnectX-3 to enable the block IBV multicast loopback option,
but it wasn’t working reliably. It stopped working when I reboot the VMs sometimes.
The ConnectX-4 doesn’t seem to have an explicit options to block multicast loopback traffic,
so it is not clear why secondary processes are having issues.
Thanks,
Charles