[haiku-development] Re: GSoC: liburing/io_uring support

  • From: Abhay Raj Singh <abhayofficialone@xxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx, pulkomandy@xxxxxxxxxxxxx
  • Date: Sat, 20 Mar 2021 21:54:07 +0530

[UPDATE]

I have been reading more about Haiku(thanks to the tutorials and
documentation) and io_uring internals.
I also got in contact with Jens Axboe (the person driving io_uring
development) recently, regarding implementing io_uring in Haiku.

I am glad to inform you that *it is possible*!

Quoting Jens here





*"I don't see any reason why io_uring couldn't work on a different kernel.
The basic premise of it is two shared rings per io_uring context, one for
the submission side and one for the completion side. These rings are in
memory shared between the task and the kernel, so fundamentally the OS
needs to support that. But anything*
* that supports mmap() like semantics should have that ability."*

I am still thinking on, scratch or incorporate as the actual grunt of the
work
is in porting sync syscalls to be able to do async,
and rather than incorporating a monolith, writing from scratch will
be easier for me (easier learning curve). Keeping in mind about
incorporation down the line.

Now I would start on this project(unless you advise otherwise) from
the core components of io_uring that make it what it is i.e. the two shared
ring buffers.

---
*Abhay*

Other related posts: