qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/4] mirror: Fix behavior for zero byte image
@ 2014-06-09  2:56 Fam Zheng
  2014-06-09  2:56 ` [Qemu-devel] [PATCH v2 1/4] blockjob: Add block_job_yield() Fam Zheng
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Fam Zheng @ 2014-06-09  2:56 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Fam Zheng, jcody, Max Reitz, Stefan Hajnoczi,
	Paolo Bonzini

The current behavior of mirroring zero byte image is slightly different from
non-zero image: the BLOCK_JOB_READY event is skipped and job is completed
immediately. This is not a big problem for human user but only makes management
software harder to write. Since we are focusing on an good API instead of UI,
let's make the behavior more consistent and predictable.

The first patch fixes the behavior. The following two patches add test case for
the involved code path.

Thanks for Eric Blake to report this!


v2: Address Stefan's comments.

    - Added patch 01: block_job_yield.
    - Use block_job_yield in 02.
    - Fix test case updates.

Thanks to Stefan, Paolo and Eric for reviewing!

Fam


Fam Zheng (4):
  blockjob: Add block_job_yield()
  mirror: Go through ready -> complete process for 0 len image
  qemu-iotests: Test BLOCK_JOB_READY event for 0Kb image active commit
  qemu-iotests: Test 0-length image for mirror

 block/mirror.c             | 11 ++++++++++-
 blockjob.c                 | 14 ++++++++++++++
 include/block/blockjob.h   |  8 ++++++++
 tests/qemu-iotests/040     | 12 +++++++++---
 tests/qemu-iotests/040.out |  4 ++--
 tests/qemu-iotests/041     |  9 ++++++---
 tests/qemu-iotests/041.out |  4 ++--
 7 files changed, 51 insertions(+), 11 deletions(-)

-- 
2.0.0

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

end of thread, other threads:[~2014-06-24 12:40 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-09  2:56 [Qemu-devel] [PATCH v2 0/4] mirror: Fix behavior for zero byte image Fam Zheng
2014-06-09  2:56 ` [Qemu-devel] [PATCH v2 1/4] blockjob: Add block_job_yield() Fam Zheng
2014-06-10 18:54   ` Eric Blake
2014-06-09  2:56 ` [Qemu-devel] [PATCH v2 2/4] mirror: Go through ready -> complete process for 0 len image Fam Zheng
2014-06-10 18:56   ` Eric Blake
2014-06-09  2:56 ` [Qemu-devel] [PATCH v2 3/4] qemu-iotests: Test BLOCK_JOB_READY event for 0Kb image active commit Fam Zheng
2014-06-09  2:56 ` [Qemu-devel] [PATCH v2 4/4] qemu-iotests: Test 0-length image for mirror Fam Zheng
2014-06-10 18:58   ` Eric Blake
2014-06-24  4:25 ` [Qemu-devel] [PATCH v2 0/4] mirror: Fix behavior for zero byte image Fam Zheng
2014-06-24 11:32   ` Kevin Wolf
2014-06-24 12:39     ` Fam Zheng

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