diff options
author | 2025-04-17 17:03:46 -0700 | |
---|---|---|
committer | 2025-04-24 09:29:56 +0200 | |
commit | c9cabe05e450b4a23072b248db33e6d97c986933 (patch) | |
tree | 5a9db906e2f7fa2f3689771b4b73769765a8b051 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | ipv6: Check GATEWAY in rtm_to_fib6_multipath_config(). (diff) | |
download | wireguard-linux-c9cabe05e450b4a23072b248db33e6d97c986933.tar.xz wireguard-linux-c9cabe05e450b4a23072b248db33e6d97c986933.zip |
ipv6: Move nexthop_find_by_id() after fib6_info_alloc().
We will get rid of RTNL from RTM_NEWROUTE and SIOCADDRT.
Then, we must perform two lookups for nexthop and dev under RCU
to guarantee their lifetime.
ip6_route_info_create() calls nexthop_find_by_id() first if
RTA_NH_ID is specified, and then allocates struct fib6_info.
nexthop_find_by_id() must be called under RCU, but we do not want
to use GFP_ATOMIC for memory allocation here, which will be likely
to fail in ip6_route_multipath_add().
Let's move nexthop_find_by_id() after the memory allocation so
that we can later split ip6_route_info_create() into two parts:
the sleepable part and the RCU part.
Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Acked-by: Paolo Abeni <pabeni@redhat.com>
Link: https://patch.msgid.link/20250418000443.43734-6-kuniyu@amazon.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions