Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable io_uring support in libuv by default #52156

Open
ronag opened this issue Mar 19, 2024 · 4 comments
Open

Enable io_uring support in libuv by default #52156

ronag opened this issue Mar 19, 2024 · 4 comments

Comments

@ronag
Copy link
Member

ronag commented Mar 19, 2024

Couldn’t find any issue tracking this so opening one.

We made ioring opt-in due to security concerns. Do we have any plan to re-enable it?

@lemire
Copy link
Member

lemire commented Mar 19, 2024

What are the documented benefits?

@ronag
Copy link
Member Author

ronag commented Mar 20, 2024

libuv/libuv#3952

Performance looks great; an 8x increase in throughput has been observed.

@santigimeno
Copy link
Member

santigimeno commented Mar 20, 2024

We made ioring opt-in due to security concerns. Do we have any plan to re-enable it?

If adding an api in libuv that allows to communicate that user credentials have changed (maybe just thin wrappers over setxid() calls) is acceptable, it certainly can be done.

Also I think we should think thoroughly whether enabling io_uring by default at the moment is a good idea, as there're known issues with the current io_uring implementation in cpu constrained environments (specially relevant for containerized apps).

@ronag
Copy link
Member Author

ronag commented Mar 20, 2024

as there're libuv/libuv#4089 (comment) with the current io_uring implementation in cpu constrained environments (specially relevant for containerized apps).

Isn't that quite easy to work around with a available concurrency check?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants