-
Notifications
You must be signed in to change notification settings - Fork 149
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revert "Add support for allmulticast flag" #272
Conversation
Pull Request Test Coverage Report for Build 5330893244
💛 - Coveralls |
That's correct @adrianchiris. Thanks for pointing it out. The reason to have the allmulticast here (besides facilitating configuration) was to have additional checks related to sriov/dpdk. Mainly, the setting of the trust parameter. It is possible to enable allmulticast on the VF without trust being on. No error is returned, the device simply won't enter to the allmulti rx mode. We wanted to restrict this and avoid having users coming up to us asking why allmulti doesn't work. Also, for non netdev VF, we wanted to return a specific error saying that it is not possible to set it on for dpdk drivers (although my initial idea was to ignore it) instead of having the tuning plugin return "failed to get ifname". I understand your point. It's valid. We should have discussed this initially. |
This is not the case for MLNX NICs, PF:
VF 0:
Set all multicast:
So it seems to be driver implementation specific, and should not be enforced in sriov-cni.
i dont think this one is critical to mandate the logic being in sriov-cni. users who run dpdk applications are expected to know their desired cni configuration. there are also other parameters in cni that are not applicable to dpdk.
Indeed, please do so next time. |
Both sides make good points. I personally am more inclined to have the option in the SR-IOV CNI (and SR-IOV Network Operator) for the same reasons @mlguerrero12 mentioned (greater validation and user experience). Parameters Also, requiring cluster administrators to support and allow users to use the Tuning CNI can pose a security risk as it allows any sysctl to be changed (the newly introduced sysctl allow list feature requires could ease security attack surface but still). |
@cgoncalves allmulticast apparently is NOT related to to sriov, but is general for netdev.
Administrators should define the networks and not let users define them :) |
you can configure it, but does it work? "VF All-Multi Mode https://docs.nvidia.com/networking/pages/viewpage.action?pageId=61869558 |
it didn't work for me, but if it works for you, then yeah, let's revert it. That was my main motivation. |
From my side again if it as a correlation with something that is part of the sriov-cni then it must be in the sriov-cni. |
Just to be clear, I'm claiming that it is possible to configure it (allmulti flag is set) but it doesn't really work |
then it's even worse than getting an error if you ask me :P |
how do i test this one ? do you have some instructions ? if it doesnt, and it silently fails, then still id expect driver to fix it (and actually fail when turning on all-multi) |
Using a mellanox nic, I have POD A POD B POD C Pod A pings a multicast address Pod B doesn't see this (nor other mulitcast traffic) Pod C sees this and ipv6 router solicitations which is what our customer is asking for |
i see, thx for checking this. so it behaves the same for mlnx (silently fails). |
does this mean that you are ok with this or that you will push internally for a fix? By the way, I saw the same behavior with an Intel card. |
|
so I wanted to check this on my side and review properly as well:
so I am able to set allmulticast to on, even with trust off. @mlguerrero12 you mentioned you saw similar issue with Intel cards too right? as for adding allmulticast option to sriov-cni, since it doesn't relate specifically to sriov, and just to netdev in general, I am not sure it should be added here... this sounds like a driver issue, which should log this failure instead of being silent. |
17:00.0 Ethernet controller: Intel Corporation Ethernet Controller E810-C for SFP (rev 02) Indeed, it is possible to configure it, but the interface won't see the multicast traffic. Please test it from your side. I totally agree. If this can be solved at the driver level, then we don't need this check. The main motivation of the PR was to address this issue. |
ive rebased PR to resolve conflicts. LMK if we can move forward with this revert. |
LGTM |
@SchSeba you on board with reverting this ? |
Reverts #268
tuning CNI already provides a way to set/resotre all multicast for a netdev.
this configuration is general for netdevs not necessarily VFs
https://github.com/containernetworking/cni.dev/blob/main/content/plugins/current/meta/tuning.md#interface-attribute-configuration-reference
my preference is to not bloat sriov-cni config if there is an alternative.
@SchSeba @Eoghan1232 @mlguerrero12