]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net/socket: convert sock_map_fd() to FD_ADD()
authorChristian Brauner <brauner@kernel.org>
Sun, 23 Nov 2025 16:33:48 +0000 (17:33 +0100)
committerChristian Brauner <brauner@kernel.org>
Fri, 28 Nov 2025 11:42:34 +0000 (12:42 +0100)
Link: https://patch.msgid.link/20251123-work-fd-prepare-v4-30-b6efa1706cfd@kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
net/socket.c

index e8892b2187087bafabb357b0c5a496b7ddb7475e..db2065051d33ca089c5f581ddb0ff8ae7645d79c 100644 (file)
@@ -503,21 +503,12 @@ EXPORT_SYMBOL(sock_alloc_file);
 
 static int sock_map_fd(struct socket *sock, int flags)
 {
-       struct file *newfile;
-       int fd = get_unused_fd_flags(flags);
-       if (unlikely(fd < 0)) {
-               sock_release(sock);
-               return fd;
-       }
+       int fd;
 
-       newfile = sock_alloc_file(sock, flags, NULL);
-       if (!IS_ERR(newfile)) {
-               fd_install(fd, newfile);
-               return fd;
-       }
-
-       put_unused_fd(fd);
-       return PTR_ERR(newfile);
+       fd = FD_ADD(flags, sock_alloc_file(sock, flags, NULL));
+       if (fd < 0)
+               sock_release(sock);
+       return fd;
 }
 
 /**