diff options
author | Jens Axboe <axboe@kernel.dk> | 2023-05-09 17:19:08 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2023-05-15 18:12:27 +0200 |
commit | fe34db062b8036f72e97c2b9eaa7e9fbb725ead2 (patch) | |
tree | 80718e09303c30f8f2617f941e7ca43b7baa5839 /net/socket.c | |
parent | Linux 6.4-rc2 (diff) | |
download | linux-fe34db062b8036f72e97c2b9eaa7e9fbb725ead2.tar.xz linux-fe34db062b8036f72e97c2b9eaa7e9fbb725ead2.zip |
net: set FMODE_NOWAIT for sockets
The socket read/write functions deal with O_NONBLOCK and IOCB_NOWAIT
just fine, so we can flag them as being FMODE_NOWAIT compliant. With
this, we can remove socket special casing in io_uring when checking
if a file type is sane for nonblocking IO, and it's also the defined
way to flag file types as such in the kernel.
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: netdev@vger.kernel.org
Reviewed-by: Paolo Abeni <pabeni@redhat.com>
Link: https://lore.kernel.org/r/20230509151910.183637-2-axboe@kernel.dk
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'net/socket.c')
-rw-r--r-- | net/socket.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/socket.c b/net/socket.c index b7e01d0fe082..0c7fda1e5e8d 100644 --- a/net/socket.c +++ b/net/socket.c @@ -471,6 +471,7 @@ struct file *sock_alloc_file(struct socket *sock, int flags, const char *dname) return file; } + file->f_mode |= FMODE_NOWAIT; sock->file = file; file->private_data = sock; stream_open(SOCK_INODE(sock), file); |