]> www.infradead.org Git - users/hch/misc.git/commit
net/ipv6: Remove expired routes with a separated list of routes.
authorKui-Feng Lee <thinker.li@gmail.com>
Thu, 8 Feb 2024 22:06:51 +0000 (14:06 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 12 Feb 2024 10:24:12 +0000 (10:24 +0000)
commit5eb902b8e7193cdcb33242af0a56502e6b5206e9
tree8aaad37743b6698aa51eca28b8021c012a04f552
parent60df43d3a72c5fc50ff854cca17c9935c4398794
net/ipv6: Remove expired routes with a separated list of routes.

FIB6 GC walks trees of fib6_tables to remove expired routes. Walking a tree
can be expensive if the number of routes in a table is big, even if most of
them are permanent. Checking routes in a separated list of routes having
expiration will avoid this potential issue.

Reviewed-by: David Ahern <dsahern@kernel.org>
Signed-off-by: Kui-Feng Lee <thinker.li@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/ip6_fib.h
net/ipv6/addrconf.c
net/ipv6/ip6_fib.c
net/ipv6/ndisc.c
net/ipv6/route.c