[PATCH net] ipv6: don't auto-add link-local address to lag ports

From: Jarod Wilson
Date: Wed Mar 18 2020 - 10:06:32 EST


Bonding slave and team port devices should not have link-local addresses
automatically added to them, as it can interfere with openvswitch being
able to properly add tc ingress.

Reported-by: Moshe Levi <moshele@xxxxxxxxxxxx>
CC: Marcelo Ricardo Leitner <mleitner@xxxxxxxxxx>
CC: netdev@xxxxxxxxxxxxxxx
Signed-off-by: Jarod Wilson <jarod@xxxxxxxxxx>
---
net/ipv6/addrconf.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 46d614b611db..aed891695084 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -3296,6 +3296,10 @@ static void addrconf_addr_gen(struct inet6_dev *idev, bool prefix_route)
if (netif_is_l3_master(idev->dev))
return;

+ /* no link local addresses on bond slave or team port devices */
+ if (netif_is_lag_port(idev->dev))
+ return;
+
ipv6_addr_set(&addr, htonl(0xFE800000), 0, 0, 0);

switch (idev->cnf.addr_gen_mode) {
--
2.20.1