[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20190222.114629.1475722353193768939.davem@davemloft.net>
Date:   Fri, 22 Feb 2019 11:46:29 -0800 (PST)
From:   David Miller <davem@...emloft.net>
To:     pabeni@...hat.com
Cc:     netdev@...r.kernel.org, dsahern@...il.com
Subject: Re: [PATCH net v2] ipv6: route: purge exception on removal
From: Paolo Abeni <pabeni@...hat.com>
Date: Wed, 20 Feb 2019 18:18:12 +0100
> When a netdevice is unregistered, we flush the relevant exception
> via rt6_sync_down_dev() -> fib6_ifdown() -> fib6_del() -> fib6_del_route().
> 
> Finally, we end-up calling rt6_remove_exception(), where we release
> the relevant dst, while we keep the references to the related fib6_info and
> dev. Such references should be released later when the dst will be
> destroyed.
> 
> There are a number of caches that can keep the exception around for an
> unlimited amount of time - namely dst_cache, possibly even socket cache.
> As a result device registration may hang, as demonstrated by this script:
 ...
> Fixes: 93531c674315 ("net/ipv6: separate handling of FIB entries from dst based routes")
> Signed-off-by: Paolo Abeni <pabeni@...hat.com>
Applied and queued up for -stable, thanks.
Powered by blists - more mailing lists
 
