On Mon, 06/09 10:56, Fam Zheng wrote: > 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!
Ping. Shall we merge this before it rots? Thanks, Fam > > > 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 >