diff options
| author | Eric Dumazet <[email protected]> | 2025-03-02 12:42:34 +0000 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2025-03-05 01:46:26 +0000 |
| commit | ae9d5b19b322d4b557efda684da2f4df21670ef8 (patch) | |
| tree | e79540fcc50c21b6d6b9547ca2da86694719fcc1 /rust/helpers/task.c | |
| parent | net: ethernet: ti: cpsw_new: populate netdev of_node (diff) | |
| download | kernel-ae9d5b19b322d4b557efda684da2f4df21670ef8.tar.gz kernel-ae9d5b19b322d4b557efda684da2f4df21670ef8.zip | |
tcp: use RCU in __inet{6}_check_established()
When __inet_hash_connect() has to try many 4-tuples before
finding an available one, we see a high spinlock cost from
__inet_check_established() and/or __inet6_check_established().
This patch adds an RCU lookup to avoid the spinlock
acquisition when the 4-tuple is found in the hash table.
Note that there are still spin_lock_bh() calls in
__inet_hash_connect() to protect inet_bind_hashbucket,
this will be fixed later in this series.
Signed-off-by: Eric Dumazet <[email protected]>
Reviewed-by: Jason Xing <[email protected]>
Tested-by: Jason Xing <[email protected]>
Reviewed-by: Kuniyuki Iwashima <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'rust/helpers/task.c')
0 files changed, 0 insertions, 0 deletions
