> > On Apr 3, 2023, at 11:38, Chris McFarlen ch...@mcfarlen.us wrote:
> > 
> > I would like to remove this disk IO mode from ATS. If nobody is using it, 
> > then I'd like to delete it for the 10.x release. If that isn't possible, I 
> > think it should be deprecated in favor of io_uring and removed in a future 
> > version.
> 
> 
> Is this the Linux native AIO? You’re not suggesting removing ATS own AIO 
> right ?

Correct, AIO_MODE_NATIVE is the linux only mode that uses libaio, which is 
superseded by io_uring. AIO_MODE_THREAD is ATS' own implementation that uses a 
thread pool of AIO threads. AIO_MODE_IOURING is the new one that uses io_uring. 
 My proposal is to remove AIO_MODE_NATIVE(if unused) and make using io_uring or 
ATS thread IO a startup decision based on config and kernel probing rather than 
compile time.

I think this will allow an easier, more palatable transition to io_uring.  If 
there are stability problems then it can be switched off with config and a 
restart rather than a code rollback.  io_uring support is still very 
kernel-version dependent so stability and feature availability will vary based 
on what version is deployed.  This should also (hopefully) allow us to test 
io_uring in CI if available without separate build pipelines.


> 
> — Leif
> 
> > Is anyone using this IO mode currently? If so, are there any arguments 
> > against deprecation in favor of io_uring for linux?
> > 
> > Thanks,
> > Chris

Reply via email to