On 9 May 2012 21:59, Anthony Liguori<address@hidden> wrote:
On 05/09/2012 03:46 PM, Peter Maydell wrote:
Longer term (ie post 1.1) I'm strongly in favour of kicking
out coroutines, because I think there clearly is no single
solid portable implementation possible. C just isn't designed
to allow them; better not to try to swim against the current.
Unfortunately, voting for code to be different doesn't actually make it
different.
Yeah, I agree with this sentiment...
If you're volunteering to rewrite the block layer to not require coroutines
(either by using a state machine or by using re-entrant threads and fixing
any locking issues associated with that) that's wonderful.
But we decided to not do synchronous I/O years ago and still haven't removed
it all from the tree. Coroutines got us much closer to getting rid of
synchronous I/O.
...but I would at least like us to take the position that we don't
introduce *more* users of coroutines.