[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen staging] libxl: event: Break out baton_wake
commit caeba4875929a333393c783687363032502fddf7 Author: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> AuthorDate: Fri Jan 10 13:11:07 2020 +0000 Commit: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> CommitDate: Mon Jan 27 16:03:17 2020 +0000 libxl: event: Break out baton_wake No functional change. Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Reviewed-by: George Dunlap <george.dunlap@xxxxxxxxxx> Tested-by: George Dunlap <george.dunlap@xxxxxxxxxx> --- v2: Now it takes a gc, not an egc. --- tools/libxl/libxl_event.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/tools/libxl/libxl_event.c b/tools/libxl/libxl_event.c index 3e76fa5af5..45cc67942d 100644 --- a/tools/libxl/libxl_event.c +++ b/tools/libxl/libxl_event.c @@ -140,6 +140,18 @@ static void pollers_note_osevent_added(libxl_ctx *ctx) { poller->osevents_added = 1; } +static void baton_wake(libxl__gc *gc, libxl__poller *wake) +{ + libxl__poller_wakeup(gc, wake); + + wake->osevents_added = 0; + /* This serves to make _1_baton idempotent. It is OK even though + * that poller may currently be sleeping on only old osevents, + * because it is going to wake up because we've just prodded it, + * and it pick up new osevents on its next iteration (or pass + * on the baton). */ +} + void libxl__egc_ao_cleanup_1_baton(libxl__gc *gc) /* Any poller we had must have been `put' already. */ { @@ -160,14 +172,7 @@ void libxl__egc_ao_cleanup_1_baton(libxl__gc *gc) /* no-one in libxl waiting for any events */ return; - libxl__poller_wakeup(gc, wake); - - wake->osevents_added = 0; - /* This serves to make _1_baton idempotent. It is OK even though - * that poller may currently be sleeping on only old osevents, - * because it is going to wake up because we've just prodded it, - * and it pick up new osevents on its next iteration (or pass - * on the baton). */ + baton_wake(gc, wake); } /* -- generated by git-patchbot for /home/xen/git/xen.git#staging _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |