[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <91aab3d6-1167-fc19-4bbf-f679de1418c5@kernel.org>
Date: Tue, 31 Jan 2023 09:03:45 -0700
From: David Ahern <dsahern@...nel.org>
To: Thomas Winter <Thomas.Winter@...iedtelesis.co.nz>,
davem@...emloft.net, yoshfuji@...ux-ipv6.org, pabeni@...hat.com,
edumazet@...gle.com, kuba@...nel.org, a@...table.cc,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v5 1/2] ip/ip6_gre: Fix changing addr gen mode not
generating IPv6 link local address
On 1/30/23 8:46 PM, Thomas Winter wrote:
> For our point-to-point GRE tunnels, they have IN6_ADDR_GEN_MODE_NONE
> when they are created then we set IN6_ADDR_GEN_MODE_EUI64 when they
> come up to generate the IPv6 link local address for the interface.
> Recently we found that they were no longer generating IPv6 addresses.
> This issue would also have affected SIT tunnels.
>
> Commit e5dd729460ca changed the code path so that GRE tunnels
> generate an IPv6 address based on the tunnel source address.
> It also changed the code path so GRE tunnels don't call addrconf_addr_gen
> in addrconf_dev_config which is called by addrconf_sysctl_addr_gen_mode
> when the IN6_ADDR_GEN_MODE is changed.
>
> This patch aims to fix this issue by moving the code in addrconf_notify
> which calls the addr gen for GRE and SIT into a separate function
> and calling it in the places that expect the IPv6 address to be
> generated.
>
> The previous addrconf_dev_config is renamed to addrconf_eth_config
> since it only expected eth type interfaces and follows the
> addrconf_gre/sit_config format.
>
> A part of this changes means that the loopback address will be
> attempted to be configured when changing addr_gen_mode for lo.
> This should not be a problem because the address should exist anyway
> and if does already exist then no error is produced.
>
> Fixes: e5dd729460ca ("ip/ip6_gre: use the same logic as SIT interfaces when computing v6LL address")
> Signed-off-by: Thomas Winter <Thomas.Winter@...iedtelesis.co.nz>
> ---
> net/ipv6/addrconf.c | 49 +++++++++++++++++++++++++--------------------
> 1 file changed, 27 insertions(+), 22 deletions(-)
>
Reviewed-by: David Ahern <dsahern@...nel.org>
Powered by blists - more mailing lists