Re: [PATCH net] ipv6: prevent only DAD and RS sending for IFF_NO_ADDRCONF
From: Xin Long <lucien.xin@gmail.com>
Date: 2023-01-08 16:59:27
On Sat, Jan 7, 2023 at 9:04 PM David Ahern [off-list ref] wrote:
On 1/6/23 9:51 AM, Xin Long wrote:quoted
Currently IFF_NO_ADDRCONF is used to prevent all ipv6 addrconf for the slave ports of team, bonding and failover devices and it means no ipv6 packets can be sent out through these slave ports. However, for team device, "nsna_ping" link_watch requires ipv6 addrconf. Otherwise, the link will be marked failure. The orginal issue fixed by IFF_NO_ADDRCONF was caused by DAD and RS packets sent by slave ports in commit c2edacf80e15 ("bonding / ipv6: no addrconf for slaves separately from master") where it's using IFF_SLAVE and later changed to IFF_NO_ADDRCONF in commit 8a321cf7becc ("net: add IFF_NO_ADDRCONF and use it in bonding to prevent ipv6 addrconf").That patch is less than a month old, and you are making changes again.
Hi, David,
That patch will not change anything, and it's an improvement. the
problem is the commit:
0aa64df30b38 ("net: team: use IFF_NO_ADDRCONF flag to prevent ipv6 addrconf")
So it affects the team driver only, and I should've done more team driver tests.
Sorry for having to touch the IPv6 code for this problem in the team driver.
I think you should add some test cases that cover the permutations you want along with any possible alternative / negative use cases.
IFF_NO_ADDRCONF are used by team/bonding/failover, I will try to add a kselftest for this with team/bonding. Thanks for the suggestion.