mbox series

[RFC,0/3] io_uring: add support for IORING_OP_MSGSND/IORING_OP_MSGRCV

Message ID 20220613192642.2040118-1-usama.arif@bytedance.com (mailing list archive)
Headers show
Series io_uring: add support for IORING_OP_MSGSND/IORING_OP_MSGRCV | expand

Message

Usama Arif June 13, 2022, 7:26 p.m. UTC
The first patch just refractors the do_msg function so that its different
parts can be used in io_uring.

The last 2 patches add the support for the async msgsnd/msgrcv.
For msgsnd the pointer to the loaded msgbuf is saved in 
io_setup_async_msg_msg for the case when the call is punted to async
context.
For msgrcv, the pointer to user-defined buffer is already stored in the
prep function.

The correspoding prep helpers and a simple testcase for these in liburing
are present at https://github.com/uarif1/liburing/commit/17f6685ca398265b54a07ce4246ee344b5390aad.

These patches are currently missing compat support.
If the patches and approach look acceptable to start review,
I can send the next series with compat support included and also add the
man pages in the above liburing patch.

Thanks!

Usama Arif (3):
  ipc/msg: split do_msgsnd into functions
  io_uring: add support for IORING_OP_MSGSND
  io_uring: add support for IORING_OP_MSGRCV

 fs/io_uring.c                 | 152 ++++++++++++++++++++++++++++++++++
 include/linux/msg.h           |  11 +++
 include/uapi/linux/io_uring.h |   2 +
 ipc/msg.c                     |  52 +++++++++---
 4 files changed, 205 insertions(+), 12 deletions(-)