[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ecc5c683-0331-42a8-9061-3a4eef96e5bb@kernel.org>
Date: Tue, 26 Nov 2024 08:34:34 -0700
From: David Ahern <dsahern@...nel.org>
To: Paolo Abeni <pabeni@...hat.com>, netdev@...r.kernel.org
Cc: Eric Dumazet <edumazet@...gle.com>, "David S. Miller"
<davem@...emloft.net>, Jakub Kicinski <kuba@...nel.org>,
Simon Horman <horms@...nel.org>, stefan.wiehler@...ia.com
Subject: Re: [PATCH v2 net 1/3] ipmr: add debug check for mr table cleanup
On 11/24/24 8:40 AM, Paolo Abeni wrote:
> The multicast route tables lifecycle, for both ipv4 and ipv6, is
> protected by RCU using the RTNL lock for write access. In many
> places a table pointer escapes the RCU (or RTNL) protected critical
> section, but such scenarios are actually safe because tables are
> deleted only at namespace cleanup time or just after allocation, in
> case of default rule creation failure.
>
> Tables freed at namespace cleanup time are assured to be alive for the
> whole netns lifetime; tables freed just after creation time are never
> exposed to other possible users.
>
> Ensure that the free conditions are respected in ip{,6}mr_free_table, to
> document the locking schema and to prevent future possible introduction
> of 'table del' operation from breaking it.
>
> Signed-off-by: Paolo Abeni <pabeni@...hat.com>
> ---
> v1 -> v2:
> - fix build errors with CONFIG_IP{,V6}_MROUTE_MULTIPLE_TABLES=n
> ---
> net/ipv4/ipmr.c | 14 ++++++++++++++
> net/ipv6/ip6mr.c | 14 ++++++++++++++
> 2 files changed, 28 insertions(+)
>
Reviewed-by: David Ahern <dsahern@...nel.org>
Powered by blists - more mailing lists