* [GIT PULL] io_uring 'more data in socket' support
@ 2022-05-22 21:26 Jens Axboe
2022-05-23 20:42 ` pr-tracker-bot
0 siblings, 1 reply; 2+ messages in thread
From: Jens Axboe @ 2022-05-22 21:26 UTC (permalink / raw)
To: Linus Torvalds; +Cc: io-uring, netdev
Hi Linus,
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 pull request adds support for that.
The core networking change conflicted with changes in netdev-next, so
it's sitting in a separate branch that both Jakub and I pulled in.
Note that this will through a merge conflict due to later changes in the
core io_uring branch, resolution:
diff --cc fs/io_uring.c
index d9529275a030,20c5d29e5b6c..1015dd49e7e5
--- a/fs/io_uring.c
+++ b/fs/io_uring.c
@@@ -6115,6 -5947,8 +6115,7 @@@ static int io_recvmsg(struct io_kiocb *
struct io_async_msghdr iomsg, *kmsg;
struct io_sr_msg *sr = &req->sr_msg;
struct socket *sock;
- struct io_buffer *kbuf;
+ unsigned int cflags;
unsigned flags;
int ret, min_ret = 0;
bool force_nonblock = issue_flags & IO_URING_F_NONBLOCK;
@@@ -6154,7 -5982,10 +6155,8 @@@
if (flags & MSG_WAITALL)
min_ret = iov_iter_count(&kmsg->msg.msg_iter);
+ kmsg->msg.msg_get_inq = 1;
-
- ret = __sys_recvmsg_sock(sock, &kmsg->msg, req->sr_msg.umsg,
- kmsg->uaddr, flags);
+ ret = __sys_recvmsg_sock(sock, &kmsg->msg, sr->umsg, kmsg->uaddr, flags);
if (ret < min_ret) {
if (ret == -EAGAIN && force_nonblock)
return io_setup_async_msg(req, kmsg);
Please pull!
The following changes since commit 8013d1d3d2e33236dee13a133fba49ad55045e79:
Merge tag 'soc-fixes-5.18-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc (2022-04-29 15:51:05 -0700)
are available in the Git repository at:
git://git.kernel.dk/linux-block.git tags/for-5.19/io_uring-net-2022-05-22
for you to fetch changes up to f548a12efd5ab97e6b1fb332e5634ce44b3d9328:
io_uring: return hint on whether more data is available after receive (2022-04-29 21:12:12 -0600)
----------------------------------------------------------------
for-5.19/io_uring-net-2022-05-22
----------------------------------------------------------------
Jens Axboe (4):
tcp: pass back data left in socket after receive
Merge branch 'for-5.19/io_uring-socket' into for-5.19/io_uring-net
Merge branch 'tcp-pass-back-data-left-in-socket-after-receive' of git://git.kernel.org/pub/scm/linux/kernel/git/kuba/linux into for-5.19/io_uring-net
io_uring: return hint on whether more data is available after receive
fs/io_uring.c | 19 +++++++++++++++----
include/linux/socket.h | 6 +++++-
include/uapi/linux/io_uring.h | 2 ++
net/ipv4/tcp.c | 16 ++++++++++------
4 files changed, 32 insertions(+), 11 deletions(-)
--
Jens Axboe
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [GIT PULL] io_uring 'more data in socket' support
2022-05-22 21:26 [GIT PULL] io_uring 'more data in socket' support Jens Axboe
@ 2022-05-23 20:42 ` pr-tracker-bot
0 siblings, 0 replies; 2+ messages in thread
From: pr-tracker-bot @ 2022-05-23 20:42 UTC (permalink / raw)
To: Jens Axboe; +Cc: Linus Torvalds, io-uring, netdev
The pull request you sent on Sun, 22 May 2022 15:26:13 -0600:
> git://git.kernel.dk/linux-block.git tags/for-5.19/io_uring-net-2022-05-22
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/e1a8fde7203fa8a3e3f35d4f9df47477d23529c1
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-05-23 20:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-22 21:26 [GIT PULL] io_uring 'more data in socket' support Jens Axboe
2022-05-23 20:42 ` pr-tracker-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox