Skip to content

[IO] Implement configurable "simple architecture"

Florian Fischer requested to merge aj46ezos/emper:single-io-context into master

Introduce a new meson option io_single_uring which causes EMPER to only use the GlobalIoContexts for all IO.

To submit SQEs to the io_uring SQ SubmitActor is used.

Futures can be in a new state where they are submitted to the SubmitActor but not to the io_uring yet. In this state isSubmitted && !isPrepared th Future must not be destroyed to ensure this we yield when forgetting a Future until it is prepared and thus it is safe to destroy it.

This commit contains no optimizations (no batching, no try non blocking syscall first, ...)

Edited by Florian Fischer

Merge request reports