mbox series

[RFC,0/6] io_uring simplify zerocopy send API

Message ID cover.1662027856.git.asml.silence@gmail.com (mailing list archive)
Headers show
Series io_uring simplify zerocopy send API | expand

Message

Pavel Begunkov Sept. 1, 2022, 10:53 a.m. UTC
We're changing zerocopy send API making it a bit less flexible but
much simpler based on the feedback we've got from people trying it
out. We replace slots and flushing with a per request notifications.
The API change is described in 5/6 in more details.
more in 5/6.

The only real functional change is in 5/6, 2-4 are reverts, and patches
1 and 6 are fixing selftests.

Pavel Begunkov (6):
  selftests/net: temporarily disable io_uring zc test
  Revert "io_uring: add zc notification flush requests"
  Revert "io_uring: rename IORING_OP_FILES_UPDATE"
  io_uring/notif: remove notif registration
  io_uring/net: simplify zerocopy send user API
  selftests/net: return back io_uring zc send tests

 include/uapi/linux/io_uring.h                 |  28 ++---
 io_uring/io_uring.c                           |  14 +--
 io_uring/net.c                                |  57 ++++++----
 io_uring/net.h                                |   1 +
 io_uring/notif.c                              |  83 +-------------
 io_uring/notif.h                              |  54 +---------
 io_uring/opdef.c                              |  12 +--
 io_uring/rsrc.c                               |  55 +---------
 io_uring/rsrc.h                               |   4 +-
 .../selftests/net/io_uring_zerocopy_tx.c      | 101 +++++++-----------
 .../selftests/net/io_uring_zerocopy_tx.sh     |  10 +-
 11 files changed, 98 insertions(+), 321 deletions(-)

Comments

Jens Axboe Sept. 1, 2022, 3:13 p.m. UTC | #1
On 9/1/22 4:53 AM, Pavel Begunkov wrote:
> We're changing zerocopy send API making it a bit less flexible but
> much simpler based on the feedback we've got from people trying it
> out. We replace slots and flushing with a per request notifications.
> The API change is described in 5/6 in more details.
> more in 5/6.
> 
> The only real functional change is in 5/6, 2-4 are reverts, and patches
> 1 and 6 are fixing selftests.

Let's go for this, we can always bring back notification slots in a
later release if it's deemed necessary or beneficial, however we
can't take it out if we release 6.0 with the change...
Jens Axboe Sept. 1, 2022, 3:54 p.m. UTC | #2
On Thu, 1 Sep 2022 11:53:59 +0100, Pavel Begunkov wrote:
> We're changing zerocopy send API making it a bit less flexible but
> much simpler based on the feedback we've got from people trying it
> out. We replace slots and flushing with a per request notifications.
> The API change is described in 5/6 in more details.
> more in 5/6.
> 
> The only real functional change is in 5/6, 2-4 are reverts, and patches
> 1 and 6 are fixing selftests.
> 
> [...]

Applied, thanks!

[1/6] selftests/net: temporarily disable io_uring zc test
      (no commit info)
[2/6] Revert "io_uring: add zc notification flush requests"
      (no commit info)
[3/6] Revert "io_uring: rename IORING_OP_FILES_UPDATE"
      (no commit info)
[4/6] io_uring/notif: remove notif registration
      (no commit info)
[5/6] io_uring/net: simplify zerocopy send user API
      (no commit info)
[6/6] selftests/net: return back io_uring zc send tests
      (no commit info)

Best regards,