[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20151016115457.GE2194@nanopsycho.orion>
Date: Fri, 16 Oct 2015 13:54:58 +0200
From: Jiri Pirko <jiri@...nulli.us>
To: Jan Blunck <jblunck@...radead.org>
Cc: davem@...emloft.net, kuznet@....inr.ac.ru, jmorris@...ei.org,
yoshfuji@...ux-ipv6.org, kaber@...sh.net, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, fubar@...ibm.com
Subject: Re: [PATCH] ipv6: no addrconf for slave devices
Fri, Oct 16, 2015 at 12:21:51PM CEST, jblunck@...radead.org wrote:
>If a device without the IFF_SLAVE flag set (e.g. team, bridge, openvswitch
>vport, batman) is enslaved and IPv6 is active then addrconf will be
>initiated and a link-local address is added to the slave interface.
>
>This patch alters the behavior so that addrconf will only run on the master
>device itself. This is achieved by checking the device tree instead of
>checking for a specific flag.
>
>Signed-off-by: Jan Blunck <jblunck@...radead.org>
>---
> net/ipv6/addrconf.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
>diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
>index 9001133..26d61f0 100644
>--- a/net/ipv6/addrconf.c
>+++ b/net/ipv6/addrconf.c
>@@ -3141,8 +3141,12 @@ static int addrconf_notify(struct notifier_block *this, unsigned long event,
>
> case NETDEV_UP:
> case NETDEV_CHANGE:
>- if (dev->flags & IFF_SLAVE)
>+ /* If a master is set stop IPv6 on this interface */
>+ if (netdev_master_upper_dev_get(dev)) {
>+ if (idev)
>+ addrconf_ifdown(dev, 1);
This breaks teamd if it's using NS/NA ping link-watch on link-local addresses.
What is the reason for this patch? Does it recolve any issue you are
having?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists