diff options
author | Kuniyuki Iwashima <kuniyu@amazon.com> | 2024-04-29 18:58:13 -0700 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2024-05-01 18:37:07 -0700 |
commit | bf4ea58874df3d43f7264709cec7fe320616552c (patch) | |
tree | 54e09e532fed923864889afc954475987af31738 /net/unix/sysctl_net_unix.c | |
parent | 0840556e5a3a331b6932ef17dd4bc94445df3297 (diff) | |
download | linux-stable-bf4ea58874df3d43f7264709cec7fe320616552c.tar.gz linux-stable-bf4ea58874df3d43f7264709cec7fe320616552c.tar.bz2 linux-stable-bf4ea58874df3d43f7264709cec7fe320616552c.zip |
arp: Convert ioctl(SIOCGARP) to RCU.
ioctl(SIOCGARP) holds rtnl_lock() to get netdev by __dev_get_by_name()
and copy dev->name safely and calls neigh_lookup() later, which looks
up a neighbour entry under RCU.
Let's replace __dev_get_by_name() with dev_get_by_name_rcu() and strscpy()
with netdev_copy_name() to avoid locking rtnl_lock().
Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Link: https://lore.kernel.org/r/20240430015813.71143-8-kuniyu@amazon.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/unix/sysctl_net_unix.c')
0 files changed, 0 insertions, 0 deletions