tree 976aa300e87a4105cec2201d1877928262563dcd
parent db4b040e1694500c9563539b3c634b30516203f9
author Jens Axboe <axboe@kernel.dk> 1727101416 -0600
committer Jens Axboe <axboe@kernel.dk> 1727450621 -0600

Add basic support for a sync MSG_RING without having a source ring

Normally MSG_RING requires both a source and a destination ring. But
some users don't always have a ring avilable to send a message from,
yet they still need to notify a target ring.

Add support for using io_uring_register(2) without having a source
ring, using a file descriptor of -1 for that. Implement
IORING_REGISTER_SEND_MSG_RING, which simply takes an sqe that the
application can put on the stack and use the normal liburing helpers
to get it setup. For an application, it may look like:

struct io_uring_sqe sqe = { };

io_uring_prep_msg_ring(&sqe, target_ring->ring_fd, len, data, flags);
ret = io_uring_register_sync_msg_ring(&sqe);

and 'ret' here would be what you would've seen in cqe->res if the
MSG_RING request was issued in the usual fashion as an sqe that was
gotten from a source ring.

On the destination side, no changes should be observed compared to
sending a normal sqe based async MSG_RING request.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
