diff options
| author | 2022-05-23 12:51:04 -0700 | |
|---|---|---|
| committer | 2022-05-23 12:51:04 -0700 | |
| commit | e1a8fde7203fa8a3e3f35d4f9df47477d23529c1 (patch) | |
| tree | b56c41f8e0e340679c40c09b3dab0544de8b54c5 /include/linux | |
| parent | Merge tag 'for-5.19/io_uring-socket-2022-05-22' of git://git.kernel.dk/linux-block (diff) | |
| parent | io_uring: return hint on whether more data is available after receive (diff) | |
| download | linux-dev-e1a8fde7203fa8a3e3f35d4f9df47477d23529c1.tar.xz linux-dev-e1a8fde7203fa8a3e3f35d4f9df47477d23529c1.zip | |
Merge tag 'for-5.19/io_uring-net-2022-05-22' of git://git.kernel.dk/linux-block
Pull io_uring 'more data in socket' support from Jens Axboe:
"To be able to fully utilize the 'poll first' support in the core
io_uring branch, it's advantageous knowing if the socket was empty
after a receive. This adds support for that"
* tag 'for-5.19/io_uring-net-2022-05-22' of git://git.kernel.dk/linux-block:
io_uring: return hint on whether more data is available after receive
tcp: pass back data left in socket after receive
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/socket.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/socket.h b/include/linux/socket.h index a1882e1e71d2..17311ad9f9af 100644 --- a/include/linux/socket.h +++ b/include/linux/socket.h @@ -50,6 +50,9 @@ struct linger { struct msghdr { void *msg_name; /* ptr to socket address structure */ int msg_namelen; /* size of socket address structure */ + + int msg_inq; /* output, data left in socket */ + struct iov_iter msg_iter; /* data */ /* @@ -62,8 +65,9 @@ struct msghdr { void __user *msg_control_user; }; bool msg_control_is_user : 1; - __kernel_size_t msg_controllen; /* ancillary data buffer length */ + bool msg_get_inq : 1;/* return INQ after receive */ unsigned int msg_flags; /* flags on received message */ + __kernel_size_t msg_controllen; /* ancillary data buffer length */ struct kiocb *msg_iocb; /* ptr to iocb for async requests */ }; |
