Il 08/08/2013 23:41, Alex Bligh ha scritto: > This patch series adds support for timers attached to an AioContext clock > which get called within aio_poll. > > In doing so it removes alarm timers and moves to use ppoll where possible. > > This patch set 'sort of' passes make check (see below for caveat) > including a new test harness for the aio timers, but has not been > tested much beyond that. In particular, the win32 changes have not > even been compile tested. Equally, alterations to use_icount > are untested. > > Caveat: I have had to alter tests/test-aio.c so the following error > no longer occurs. > > ERROR:tests/test-aio.c:346:test_wait_event_notifier_noflush: assertion > failed: (aio_poll(ctx, false)) > > As gar as I can tell, this check was incorrect, in that it checking > aio_poll makes progress when in fact it should not make progress. I > fixed an issue where aio_poll was (as far as I can tell) wrongly > returning true on a timeout, and that generated this error. > > Note also the comment on patch 18 in relation to a possible bug > in cpus.c. > > The penultimate patch is patch which is created in an automated manner > using scripts/switch-timer-api, added in this patch set. It violates some > coding standards (e.g. line length >= 80 characters), but this is preferable > in terms of giving a provably correct conversion. > > This patch set has been compile tested & make check tested on a > 'christmas-tree' configuration, meaning a configuration with every > --enable- value tested that can be easily configured on Ubuntu Precise, > after application of each patch.
Awesome work, really. I think we can still simplify it a bit, but many of the changes I asked should be doable with a global search-and-replace on the patch files. Thanks! Paolo