summaryrefslogtreecommitdiff
path: root/net/core/skmsg.c
diff options
context:
space:
mode:
authorAndrew Morton <akpm@linux-foundation.org>2024-03-18 09:47:52 -0700
committerAndrew Morton <akpm@linux-foundation.org>2024-03-18 09:47:52 -0700
commit5e28061128646febc71c0942609619e29f41ff00 (patch)
tree9fc836e739a4f1f312a9891c6f6a675cd325959f /net/core/skmsg.c
parent270700dd06ca41a4779c19eb46608f076bb7d40e (diff)
parente8f897f4afef0031fe618a8e94127a0934896aba (diff)
Merge branch 'master' into mm-stable
Diffstat (limited to 'net/core/skmsg.c')
-rw-r--r--net/core/skmsg.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/net/core/skmsg.c b/net/core/skmsg.c
index 93ecfceac1bc..4d75ef9d24bf 100644
--- a/net/core/skmsg.c
+++ b/net/core/skmsg.c
@@ -1226,8 +1226,11 @@ static void sk_psock_verdict_data_ready(struct sock *sk)
rcu_read_lock();
psock = sk_psock(sk);
- if (psock)
- psock->saved_data_ready(sk);
+ if (psock) {
+ read_lock_bh(&sk->sk_callback_lock);
+ sk_psock_data_ready(sk, psock);
+ read_unlock_bh(&sk->sk_callback_lock);
+ }
rcu_read_unlock();
}
}