From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34439) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YruOx-0007Yn-Kr for qemu-devel@nongnu.org; Mon, 11 May 2015 16:34:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YruOw-0004j8-Qy for qemu-devel@nongnu.org; Mon, 11 May 2015 16:34:11 -0400 Message-ID: <5551123B.3080308@redhat.com> Date: Mon, 11 May 2015 16:34:03 -0400 From: John Snow MIME-Version: 1.0 References: <1430887928-18189-1-git-send-email-famz@redhat.com> <1430887928-18189-7-git-send-email-famz@redhat.com> In-Reply-To: <1430887928-18189-7-git-send-email-famz@redhat.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v2 6/6] iotests: Use event_wait in wait_ready List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Fam Zheng , qemu-devel@nongnu.org Cc: Kevin Wolf , pbonzini@redhat.com, Stefan Hajnoczi , qemu-block@nongnu.org, wangxiaolong@ucloud.cn On 05/06/2015 12:52 AM, Fam Zheng wrote: > Only poll the specific type of event we are interested in, to avoid > stealing events that should be consumed by someone else. > > Suggested-by: John Snow > Signed-off-by: Fam Zheng > --- > tests/qemu-iotests/iotests.py | 9 ++------- > 1 file changed, 2 insertions(+), 7 deletions(-) > > diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py > index 2e07cc4..0ddc513 100644 > --- a/tests/qemu-iotests/iotests.py > +++ b/tests/qemu-iotests/iotests.py > @@ -328,13 +328,8 @@ class QMPTestCase(unittest.TestCase): > > def wait_ready(self, drive='drive0'): > '''Wait until a block job BLOCK_JOB_READY event''' > - ready = False > - while not ready: > - for event in self.vm.get_qmp_events(wait=True): > - if event['event'] == 'BLOCK_JOB_READY': > - self.assert_qmp(event, 'data/type', 'mirror') > - self.assert_qmp(event, 'data/device', drive) > - ready = True > + f = {'data': {'type': 'mirror', 'device': drive } } > + event = self.vm.event_wait(name='BLOCK_JOB_READY', match=f) > > def wait_ready_and_cancel(self, drive='drive0'): > self.wait_ready(drive=drive) > Thanks for appeasing me :) Reviewed-by: John Snow