From: Stefan Hajnoczi <stefanha@redhat.com>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
jjherne@linux.vnet.ibm.com, Fam Zheng <famz@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>, Jeff Cody <jcody@redhat.com>,
mreitz@redhat.com, Stefan Hajnoczi <stefanha@redhat.com>
Subject: [Qemu-devel] [PATCH v4 0/5] blockjob: AioContext change support for mirror and backup
Date: Tue, 14 Jun 2016 19:17:03 +0100 [thread overview]
Message-ID: <1465928228-1184-1-git-send-email-stefanha@redhat.com> (raw)
v4:
* Add .pause()/.resume() callbacks to really quiesce during
block_job_pause_point() [Paolo]
* Add AioContext change support for backup block job
* Tested drive_mirror + migration and drive_backup + reboot
v3:
* Push infrastructure down into blockjob.c so other jobs can reuse it [Stefan]
* Tested with drive_mirror + migration [Stefan]
v2:
* Fam introduced the concept of a synchronous aio_poll() loop to quiesce the
block job during detach
When dataplane is enabled or disabled the drive switches to a new AioContext.
The mirror and backup block jobs must also move to the new AioContext so that
drive accesses are always made within its AioContext.
This series extends the block job pause functionality so that detaching from an
AioContext pauses the job and attaching to the new AioContext resumes the job.
Pause points are added to the mirror job so that long I/O loops can yield for
an AioContext switch. Other block jobs need pause points too but this can be
done as a follow-up series.
Stefan Hajnoczi (5):
blockjob: move iostatus reset out of block_job_enter()
blockjob: add pause points
blockjob: add AioContext attached callback
mirror: follow AioContext change gracefully
backup: follow AioContext change gracefully
block/backup.c | 22 ++++++++-----
block/mirror.c | 45 +++++++++++++++++++++-----
blockdev.c | 1 +
blockjob.c | 84 ++++++++++++++++++++++++++++++++++++++++++------
include/block/blockjob.h | 42 ++++++++++++++++++++++--
5 files changed, 166 insertions(+), 28 deletions(-)
--
2.5.5
next reply other threads:[~2016-06-14 18:17 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-14 18:17 Stefan Hajnoczi [this message]
2016-06-14 18:17 ` [Qemu-devel] [PATCH v4 1/5] blockjob: move iostatus reset out of block_job_enter() Stefan Hajnoczi
2016-06-15 8:47 ` Fam Zheng
2016-06-14 18:17 ` [Qemu-devel] [PATCH v4 2/5] blockjob: add pause points Stefan Hajnoczi
2016-06-15 8:53 ` Paolo Bonzini
2016-06-16 13:17 ` Stefan Hajnoczi
2016-06-16 13:24 ` Paolo Bonzini
2016-06-15 8:57 ` Fam Zheng
2016-06-15 9:01 ` Paolo Bonzini
2016-06-16 10:19 ` Stefan Hajnoczi
2016-06-14 18:17 ` [Qemu-devel] [PATCH v4 3/5] blockjob: add AioContext attached callback Stefan Hajnoczi
2016-06-15 9:05 ` Fam Zheng
2016-06-16 10:13 ` Stefan Hajnoczi
2016-06-14 18:17 ` [Qemu-devel] [PATCH v4 4/5] mirror: follow AioContext change gracefully Stefan Hajnoczi
2016-06-15 8:57 ` Paolo Bonzini
2016-06-16 10:17 ` Stefan Hajnoczi
2016-06-16 10:21 ` Paolo Bonzini
2016-06-16 11:28 ` Stefan Hajnoczi
2016-06-14 18:17 ` [Qemu-devel] [PATCH v4 5/5] backup: " Stefan Hajnoczi
2016-06-14 19:06 ` [Qemu-devel] [PATCH v4 0/5] blockjob: AioContext change support for mirror and backup Jason J. Herne
2016-06-15 8:56 ` Stefan Hajnoczi
2016-06-15 8:59 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1465928228-1184-1-git-send-email-stefanha@redhat.com \
--to=stefanha@redhat.com \
--cc=famz@redhat.com \
--cc=jcody@redhat.com \
--cc=jjherne@linux.vnet.ibm.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).