liburing icon indicating copy to clipboard operation
liburing copied to clipboard

io_uring_prep_socket_direct -> bind -> listen -> io_uring_prep_accept_direct

Open ghost opened this issue 2 years ago • 2 comments

https://github.com/axboe/liburing/issues/234#issuecomment-1241888695 why are bind and listen not async yet, can they access direct descriptor?

ghost avatar Sep 04 '23 13:09 ghost

does this mean that tcp servers using io_uring now need to handle both direct and global file descriptors?

ghost avatar Sep 04 '23 13:09 ghost

why are bind and listen not async yet

Because they don't need to be async as they don't wait on any IO / etc. If the question why they're not supported by io_uring, then there wasn't much need before / because nobody implemented it.

can they access direct descriptor?

Direct descriptiors is an io_uring feature, so no

does this mean that tcp servers using io_uring now need to handle both direct and global file descriptors?

as a work around you can register a socket file after doing bind/listen, e.g. see io_uring_register_files()

isilence avatar Sep 05 '23 14:09 isilence