Replies: 1 comment
-
Or can we avoid all confusion by treating the original ring fd as a regular file descriptor and other rings can register it in their respective fixed file fd tables using io_uring_register_files? |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
There is the io_uring_prep_msg_ring_xxx family of functions for communicating between io rings and they require the destination ring fd. If ring A wants to send something to ring B, can ring B first register its ring fd, then send the registered ring fd (B->enter_ring_fd) to ring A via io_uring_prep_msg_ring_fd(sqe, A->ring_fd, B->enter_ring_fd, ???, (__u64)nullptr, 0) and then A can get the value from cqe->res and then send a message to B via io_uring_prep_msg_ring(sqe, cqe->res, 0, (__u64)data, 0) (would we have to set IOSQE_FIXED_FILE in the sqe flags?)? If this feature doesn't exist yet, it should definitely be a future feature.
Beta Was this translation helpful? Give feedback.
All reactions