在 2018/5/8 21:54, Stefan Hajnoczi 写道: > Currently the timer is cancelled and the block job is entered by > block_job_resume(). This behavior causes drain to run extra blockjob > iterations when the job was sleeping due to the ratelimit. > > This patch leaves the job asleep when block_job_resume() is called. > Jobs can still be forcibly woken up using block_job_enter(), which is > used to cancel jobs. > > After this patch drain no longer runs extra blockjob iterations. This > is the expected behavior that qemu-iotests 185 used to rely on. We > temporarily changed the 185 test output to make it pass for the QEMU > 2.12 release but now it's time to address this issue. > Verified on s390x. Thx Reviewed-by: QingFeng Hao <ha...@linux.vnet.ibm.com> > Cc: QingFeng Hao <ha...@linux.vnet.ibm.com> > Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> > --- > blockjob.c | 22 +++++++++++++++------- > tests/qemu-iotests/185 | 5 +---- > tests/qemu-iotests/185.out | 12 +++++------- > 3 files changed, 21 insertions(+), 18 deletions(-) >
[...] > *** done > -- Regards QingFeng Hao