Skip to content

Use io_uring for files on linux#175

Closed
Panke wants to merge 4 commits intovibe-d:masterfrom
Panke:master
Closed

Use io_uring for files on linux#175
Panke wants to merge 4 commits intovibe-d:masterfrom
Panke:master

Conversation

@Panke
Copy link
Contributor

@Panke Panke commented Mar 23, 2021

This is a proof of concept on how to integrate io_uring into the epoll event loop. It currently supports files, timers could be easily added (but prolly require a fork of the PosixEventLoop).

It's not production ready yet, but I want to gather some early feedback.

Copy link
Member

@s-ludwig s-ludwig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm really glad to see this since I really wanted to try this out myself when it got into the kernel, but couldn't realistically do so due to higher priorities.

Since I can't test this locally in the current state, my only comment right now is that the integration should be optional as a separate build configuration. Once that is done, everything builds, and the white space changes and Meson build file changes are in separate commits, we could also just document it as experimental and merge it to master, so that improvements can be made in smaller incremental steps.

dub.sdl Outdated
license "MIT"
copyright "Copyright © 2016-2018 Sönke Ludwig"

license "MIT"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duplicate license field

copyright "Copyright © 2016-2018 Sönke Ludwig"

license "MIT"
dependency "during" version="~>0.2.1"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be in a new "uring" configuration at the bottom of the file. Is "during" a local package of yours? I don't see it on code.dlang.org.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since I can't test this locally in the current state, my only comment right now is that the integration should be optional as a separate build configuration. Once that is done, everything builds, and the white space changes and Meson build file changes are in separate commits, we could also just document it as experimental and merge it to master, so that improvements can be made in smaller incremental steps.

Great! Than I will polish it up to be suitable for master.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be in a new "uring" configuration at the bottom of the file. Is "during" a local package of yours? I don't see it on code.dlang.org.

It's https://github.com/tchaloupka/during from code.dlang.org

Copy link
Contributor Author

@Panke Panke Mar 26, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

white space changes

which one?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm it's really just two lines in utils.d, nevermind then, I thought it was more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's https://github.com/tchaloupka/during from code.dlang.org

Interesting, the search is obviously broken w.r.t. package names. Accessing it manually works, but I get zero results for "during".

@Panke Panke force-pushed the master branch 2 times, most recently from 956bebf to 1b7e274 Compare April 1, 2021 10:19
Panke added 3 commits April 1, 2021 12:26
Also changes the way the internal data is organized
to match the module comment of io_uring.
@s-ludwig
Copy link
Member

Superseded by #216

@s-ludwig s-ludwig closed this Jul 12, 2025
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

Successfully merging this pull request may close these issues.

2 participants