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

From: Usama Arif
Date: Mon Jun 13 2022 - 16:37:11 EST


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(-)

--
2.25.1