At my OVS-DPDK code, if I call "rte_eth_allmulticast_enable(dev->port_id);"
then my rxq always receives 0 packets (rte_eth_rx_burst() always returns 0).
"mlx5_net: port 0 cannot enable allmulicast mode: Invalid argument"
https://github.com/openvswitch/ovs/blob/master/lib/netdev-dpdk.c#L1165
Only when I removed that line, OVS starts to see rx packets
(rte_eth_rx_burst() return > 0.)
You’re getting no traffic because rte_eth_allmulticast_enable is not supported yet on WINOF2.70, the inner implementation tried to restart the port with all_multicast rules and failed, since you do not check the output of the function and continue the result is no traffic.
BTW, why do you need to call rte_eth_allmulticast_enable if you already called rte_eth_promiscuous_enable beforehand?
At my OVS-DPDK code, if I call "rte_eth_allmulticast_enable(dev->port_id);" then my rxq always receives 0 packets (rte_eth_rx_burst() always returns 0). "mlx5_net: port 0 cannot enable allmulicast mode: Invalid argument" https://github.com/openvswitch/ovs/blob/master/lib/netdev-dpdk.c#L1165
Only when I removed that line, OVS starts to see rx packets (rte_eth_rx_burst() return > 0.)
You’re getting no traffic because rte_eth_allmulticast_enable is not supported yet on WINOF2.70, the inner implementation tried to restart the port with all_multicast rules and failed, since you do not check the output of the function and continue the result is no traffic.
BTW, why do you need to call rte_eth_allmulticast_enable if you already called rte_eth_promiscuous_enable beforehand?