qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v5 0/8] sheepdog: reconnect server after connection failure
@ 2013-10-24  7:01 MORITA Kazutaka
  2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 1/8] sheepdog: check return values of qemu_co_recv/send correctly MORITA Kazutaka
                   ` (8 more replies)
  0 siblings, 9 replies; 11+ messages in thread
From: MORITA Kazutaka @ 2013-10-24  7:01 UTC (permalink / raw)
  To: qemu-devel; +Cc: Kevin Wolf, Liu Yuan, Stefan Hajnoczi

Currently, if a sheepdog server exits, all the connecting VMs need to
be restarted.  This series implements a feature to reconnect the
server, and enables us to do online sheepdog upgrade and avoid
restarting VMs when sheepdog servers crash unexpectedly.

v5:
 - Use AioContext timer for co_aio_sleep_ns().

v4:
 - Added comment to explain why we need a failed queue.
 - Fixed a return value of sd_acb_cancelable().

v3:
 - Check return values of qemu_co_recv/send more strictly.
 - Move inflight requests to the failed list after reconnection
   completes.  This is necessary to resend I/Os while connection is
   lost.
 - Check simultaneous create in resend_aioreq().

v2:
 - Dropped nonblocking connect patches.

MORITA Kazutaka (8):
  sheepdog: check return values of qemu_co_recv/send correctly
  sheepdog: handle vdi objects in resend_aio_req
  sheepdog: reload inode outside of resend_aioreq
  coroutine: add co_aio_sleep_ns() to allow sleep in block drivers
  sheepdog: try to reconnect to sheepdog after network error
  sheepdog: make add_aio_request and send_aioreq void functions
  sheepdog: cancel aio requests if possible
  sheepdog: check simultaneous create in resend_aioreq

 block/sheepdog.c          |  322 ++++++++++++++++++++++++++++-----------------
 include/block/coroutine.h |    9 ++
 qemu-coroutine-sleep.c    |   14 ++
 3 files changed, 226 insertions(+), 119 deletions(-)

-- 
1.7.10.4

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

end of thread, other threads:[~2013-10-30 11:23 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-24  7:01 [Qemu-devel] [PATCH v5 0/8] sheepdog: reconnect server after connection failure MORITA Kazutaka
2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 1/8] sheepdog: check return values of qemu_co_recv/send correctly MORITA Kazutaka
2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 2/8] sheepdog: handle vdi objects in resend_aio_req MORITA Kazutaka
2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 3/8] sheepdog: reload inode outside of resend_aioreq MORITA Kazutaka
2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 4/8] coroutine: add co_aio_sleep_ns() to allow sleep in block drivers MORITA Kazutaka
2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 5/8] sheepdog: try to reconnect to sheepdog after network error MORITA Kazutaka
2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 6/8] sheepdog: make add_aio_request and send_aioreq void functions MORITA Kazutaka
2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 7/8] sheepdog: cancel aio requests if possible MORITA Kazutaka
2013-10-24  7:01 ` [Qemu-devel] [PATCH v5 8/8] sheepdog: check simultaneous create in resend_aioreq MORITA Kazutaka
2013-10-28  6:31 ` [Qemu-devel] [PATCH v5 0/8] sheepdog: reconnect server after connection failure Liu Yuan
2013-10-30 11:22   ` Kevin Wolf

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).