xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2.1 RESEND 00/19] libxl: asynchronous suspend
@ 2014-03-04 14:56 Ian Jackson
  2014-03-04 14:56 ` [PATCH 01/19] libxl: init: Provide a gc later in libxl_ctx_alloc Ian Jackson
                   ` (19 more replies)
  0 siblings, 20 replies; 70+ messages in thread
From: Ian Jackson @ 2014-03-04 14:56 UTC (permalink / raw)
  To: xen-devel; +Cc: Shriram Rajagopalan, Ian Campbell, Lai Jiangshan

This series removes the usleeps and waiting loops in libxl_dom.c and
replaces them with event-callback code.

We want some additional libxl event facilities:
    01/19 libxl: init: Provide a gc later in libxl_ctx_alloc
    02/19 libxl: init: libxl__poller_init and _get take gc
  a 03/19 libxl: events: const-correct *_inuse, *_isregistered
 -  04/19 libxl: events: Provide libxl__xswait_*
  a 05/19 libxl: events: Use libxl__xswait_* in spawn code
 +  06/19 libxl: events: Provide libxl__ev_evtchn*

We need to clean up some unfortunate code in libxc:
    07/19 libxc: suspend: Rename, improve xc_suspend_evtchn_init
    08/19 libxc: suspend: Fix suspend event channel locking

We do some shuffling around of the libxl suspend control flow:
 -  09/19 libxl: suspend: Async libxl__domain_suspend_callback
    10/19 libxl: suspend: Async domain_suspend_callback_common
    11/19 libxl: suspend: Reorg domain_suspend_callback_common
    12/19 libxl: suspend: New libxl__domain_pvcontrol_xspath
    13/19 libxl: suspend: New domain_suspend_pvcontrol_acked
No functional change in those five.  These changes are broken down
just to make the changes reviewable.

Finally, we can start to work on the event code, removing the bugs,
usleeps and loops one at a time:
    14/19 libxl: suspend: domain_suspend_callback_common xs errs
    15/19 libxl: suspend: Async xenstore pvcontrol wait
    16/19 libxl: suspend: Abolish usleeps in domain suspend wait
    17/19 libxl: suspend: Fix suspend wait corner cases
    18/19 libxl: suspend: Async evtchn wait
    19/19 libxl: suspend: Apply guest timeout in evtchn case

Notes:
   +   modified in v2
   -   modified in v2 but only in commit message or comments
   a   acked

I have tested v2 with a Debian pvops kernel (xenstore pvcontrol
suspend signalling) and OpenSUSE 11 (event channel suspend
signalling).  v2.1 is a rebase onto current staging.

I haven't really touched the Remus-specific code here but this series
ought to be suitable for the Remus developers to base things on.

^ permalink raw reply	[flat|nested] 70+ messages in thread

end of thread, other threads:[~2014-03-17 13:00 UTC | newest]

Thread overview: 70+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-04 14:56 [PATCH v2.1 RESEND 00/19] libxl: asynchronous suspend Ian Jackson
2014-03-04 14:56 ` [PATCH 01/19] libxl: init: Provide a gc later in libxl_ctx_alloc Ian Jackson
2014-03-13 16:20   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 02/19] libxl: init: libxl__poller_init and _get take gc Ian Jackson
2014-03-13 16:21   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 03/19] libxl: events: const-correct *_inuse, *_isregistered Ian Jackson
2014-03-04 14:56 ` [PATCH 04/19] libxl: events: Provide libxl__xswait_* Ian Jackson
2014-03-13 16:33   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 05/19] libxl: events: Use libxl__xswait_* in spawn code Ian Jackson
2014-03-10  3:35   ` Lai Jiangshan
2014-03-10 10:26     ` Ian Jackson
2014-03-13 16:33       ` Ian Campbell
2014-03-04 14:56 ` [PATCH 06/19] libxl: events: Provide libxl__ev_evtchn* Ian Jackson
2014-03-13 16:36   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 07/19] libxc: suspend: Rename, improve xc_suspend_evtchn_init Ian Jackson
2014-03-04 15:10   ` Andrew Cooper
2014-03-04 15:30     ` Ian Jackson
2014-03-13 16:38   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 08/19] libxc: suspend: Fix suspend event channel locking Ian Jackson
2014-03-13 16:47   ` Ian Campbell
2014-03-13 18:46     ` Ian Jackson
2014-03-14  9:55       ` Ian Campbell
2014-03-16  4:53   ` Shriram Rajagopalan
2014-03-17 11:35     ` Ian Jackson
2014-03-17 13:00       ` Ian Jackson
2014-03-04 14:56 ` [PATCH 09/19] libxl: suspend: Async libxl__domain_suspend_callback Ian Jackson
2014-03-13 16:58   ` Ian Campbell
2014-03-13 18:19     ` Ian Jackson
2014-03-14  9:54       ` Ian Campbell
2014-03-04 14:56 ` [PATCH 10/19] libxl: suspend: Async domain_suspend_callback_common Ian Jackson
2014-03-13 16:59   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 11/19] libxl: suspend: Reorg domain_suspend_callback_common Ian Jackson
2014-03-13 17:02   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 12/19] libxl: suspend: New libxl__domain_pvcontrol_xspath Ian Jackson
2014-03-13 17:03   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 13/19] libxl: suspend: New domain_suspend_pvcontrol_acked Ian Jackson
2014-03-13 17:05   ` Ian Campbell
2014-03-13 18:22     ` Ian Jackson
2014-03-04 14:56 ` [PATCH 14/19] libxl: suspend: domain_suspend_callback_common xs errs Ian Jackson
2014-03-13 17:06   ` Ian Campbell
2014-03-04 14:56 ` [PATCH 15/19] libxl: suspend: Async xenstore pvcontrol wait Ian Jackson
2014-03-13 17:13   ` Ian Campbell
2014-03-13 18:26     ` Ian Jackson
2014-03-14 10:06       ` Ian Campbell
2014-03-14 17:24         ` Ian Jackson
2014-03-14 17:39           ` Ian Campbell
2014-03-04 14:56 ` [PATCH 16/19] libxl: suspend: Abolish usleeps in domain suspend wait Ian Jackson
2014-03-13 17:16   ` Ian Campbell
2014-03-13 18:29     ` Ian Jackson
2014-03-14 10:10       ` Ian Campbell
2014-03-14 17:28         ` Ian Jackson
2014-03-14 17:39           ` Ian Campbell
2014-03-14 17:41           ` Ian Jackson
2014-03-14 17:46             ` Ian Campbell
2014-03-14 18:16               ` Ian Jackson
2014-03-17  9:55                 ` Ian Campbell
2014-03-17 11:55                   ` Ian Jackson
2014-03-17 11:58                     ` Ian Campbell
2014-03-04 14:56 ` [PATCH 17/19] libxl: suspend: Fix suspend wait corner cases Ian Jackson
2014-03-13 17:18   ` Ian Campbell
2014-03-13 18:33     ` Ian Jackson
2014-03-14 10:20       ` Ian Campbell
2014-03-04 14:56 ` [PATCH 18/19] libxl: suspend: Async evtchn wait Ian Jackson
2014-03-13 17:23   ` Ian Campbell
2014-03-13 18:36     ` Ian Jackson
2014-03-14 10:21       ` Ian Campbell
2014-03-04 14:56 ` [PATCH 19/19] libxl: suspend: Apply guest timeout in evtchn case Ian Jackson
2014-03-13 17:23   ` Ian Campbell
2014-03-11  8:55 ` [PATCH v2.1 RESEND 00/19] libxl: asynchronous suspend Lai Jiangshan
2014-03-11 11:35   ` Ian Jackson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).