Messages in this thread | | | Date | Thu, 11 Oct 2012 09:43:12 -0700 | From | Zach Brown <> | Subject | Re: [PATCH 5/5] aio: Refactor aio_read_evt, use cmxchg(), fix bug |
| |
> 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
| |