Re: [PATCH 5/5] aio: Refactor aio_read_evt, use cmxchg(), fix bug

Zach Brown
2012-10-11T16:43:22Z

> Yeah, but that means the completion has to be delivered from process
> context. That's not what aio does today, and it'd be a real performance
> regression.

It'd only have to to complete from process context if it faults. The
cheapest possible delivery mechanism is simple cpu stores. In the vast
majority of cases the ring will be resident and it'll be done. In rare
cases it could fall back to a deferred completion. If apps can't
stomach that latency and want to pay the overhead of pinning to remove
that risk, they're welcome to do so.

That's my hope, anyway.

- z