Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net/socket: convert __sys_accept4_file() to FD_ADD()

Link: https://patch.msgid.link/20251123-work-fd-prepare-v4-31-b6efa1706cfd@kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>

+1 -14
+1 -14
net/socket.c
··· 2003 2003 int __user *upeer_addrlen, int flags) 2004 2004 { 2005 2005 struct proto_accept_arg arg = { }; 2006 - struct file *newfile; 2007 - int newfd; 2008 2006 2009 2007 if (flags & ~(SOCK_CLOEXEC | SOCK_NONBLOCK)) 2010 2008 return -EINVAL; ··· 2010 2012 if (SOCK_NONBLOCK != O_NONBLOCK && (flags & SOCK_NONBLOCK)) 2011 2013 flags = (flags & ~SOCK_NONBLOCK) | O_NONBLOCK; 2012 2014 2013 - newfd = get_unused_fd_flags(flags); 2014 - if (unlikely(newfd < 0)) 2015 - return newfd; 2016 - 2017 - newfile = do_accept(file, &arg, upeer_sockaddr, upeer_addrlen, 2018 - flags); 2019 - if (IS_ERR(newfile)) { 2020 - put_unused_fd(newfd); 2021 - return PTR_ERR(newfile); 2022 - } 2023 - fd_install(newfd, newfile); 2024 - return newfd; 2015 + return FD_ADD(flags, do_accept(file, &arg, upeer_sockaddr, upeer_addrlen, flags)); 2025 2016 } 2026 2017 2027 2018 /*