Re: [PATCH 4/5] aio: vmap ringbuffer
From: Zach Brown <hidden>
Date: 2012-10-09 22:58:46
Also in:
dm-devel, lkml
From: Zach Brown <hidden>
Date: 2012-10-09 22:58:46
Also in:
dm-devel, lkml
Not if we decouple the ringbuffer size from max_requests.
Hmm, interesting.
This would be useful to do anyways because right now, allocating a kiocb has to take a global refcount and check head and tail in the ringbuffer just so it can avoid overflowing the ringbuffer.
I'm not sure what you mean by a 'global refcount'.. do you mean the per-mm ctx_lock?
If we change aio_complete() so that if the ringbuffer is full then the kiocb just goes on a linked list - we can size the ringbuffer so this doesn't happen normally and avoid the global synchronization in the fast path.
How would completion events make their way from the list to the ring if an app is only checking the ring for completions from userspace? - z