diff options
| author | Kuniyuki Iwashima <[email protected]> | 2025-07-16 22:08:09 +0000 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2025-07-17 23:25:20 +0000 |
| commit | 0e5ac19c78654abbf43dc4ffdae290c8cb81c59c (patch) | |
| tree | 8903446233de02c2ee89f789d24cecdc3ec2ce5f /drivers/fpga/fpga-mgr.c | |
| parent | neighbour: Allocate skb in neigh_get(). (diff) | |
| download | kernel-0e5ac19c78654abbf43dc4ffdae290c8cb81c59c.tar.gz kernel-0e5ac19c78654abbf43dc4ffdae290c8cb81c59c.zip | |
neighbour: Move neigh_find_table() to neigh_get().
neigh_valid_get_req() calls neigh_find_table() to fetch neigh_tables[].
neigh_find_table() uses rcu_dereference_rtnl(), but RTNL actually does
not protect it at all; neigh_table_clear() can be called without RTNL
and only waits for RCU readers by synchronize_rcu().
Fortunately, there is no bug because IPv4 is built-in, IPv6 cannot be
unloaded, and DECNET was removed.
To fetch neigh_tables[] by rcu_dereference() later, let's move
neigh_find_table() from neigh_valid_get_req() to neigh_get().
Signed-off-by: Kuniyuki Iwashima <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'drivers/fpga/fpga-mgr.c')
0 files changed, 0 insertions, 0 deletions
