summaryrefslogtreecommitdiff
path: root/net/socket.c
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2025-06-23 17:04:06 -0700
committerJakub Kicinski <kuba@kernel.org>2025-06-23 17:04:06 -0700
commit0fd9e5958ebb41188700b566467a1d9a3ebcdece (patch)
treec4b86a281dc187fc8b74f9723043e2bfa87bd7d8 /net/socket.c
parentb630c781bcf6ff87657146661816d0d30a902139 (diff)
parentc51da3f7a161c6822232be832abdffe47eb55b4c (diff)
Merge branch 'net-replace-sock_i_uid-with-sk_uid'
Eric Dumazet says: ==================== net: replace sock_i_uid() with sk_uid() First patch annotates sk->sk_uid accesses and adds sk_uid() helper. Second patch removes sock_i_uid() in favor of the new helper. ==================== Link: https://patch.msgid.link/20250620133001.4090592-1-edumazet@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/socket.c')
-rw-r--r--net/socket.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/net/socket.c b/net/socket.c
index 2cab805943c0..682969deaed3 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -592,10 +592,12 @@ static int sockfs_setattr(struct mnt_idmap *idmap,
if (!err && (iattr->ia_valid & ATTR_UID)) {
struct socket *sock = SOCKET_I(d_inode(dentry));
- if (sock->sk)
- sock->sk->sk_uid = iattr->ia_uid;
- else
+ if (sock->sk) {
+ /* Paired with READ_ONCE() in sk_uid() */
+ WRITE_ONCE(sock->sk->sk_uid, iattr->ia_uid);
+ } else {
err = -ENOENT;
+ }
}
return err;