From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42600) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YQIOS-0006jA-OB for qemu-devel@nongnu.org; Tue, 24 Feb 2015 11:31:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YQIOP-0001el-Hh for qemu-devel@nongnu.org; Tue, 24 Feb 2015 11:31:32 -0500 Received: from mx1.redhat.com ([209.132.183.28]:54409) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YQIOP-0001ef-9V for qemu-devel@nongnu.org; Tue, 24 Feb 2015 11:31:29 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id t1OGVRf8010927 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Tue, 24 Feb 2015 11:31:27 -0500 Message-ID: <54ECA75E.30105@redhat.com> Date: Tue, 24 Feb 2015 11:31:26 -0500 From: John Snow MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] QMP events and the migration of halted machines List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "quint >> juan quin >> Juan Jose Quintela Carreira" Cc: "Dr. David Alan Gilbert" , qemu-devel In writing migration tests for qtest and ahci-test, I ran into an interesting pattern and wanted to know if this was expected: 1) Using blkdebug, I inject an error to execute once for the first flush request. 2) Executing the command, I get a STOP event. 3) I migrate the VM, and poll the source until it reports that it is completed. So far, so good. 4) I receive a RESUME event from the destination, even though the machine wasn't started. 5) Naively, my script assumes the machine is stopped and sends {"execute": "cont"} to resume execution from the failed flush command. 6) I then see BLOCK_IO_ERROR, STOP, and then RESUME events in order. 7) The command appears to then execute and finish successfully. Is this the expected flow? I perhaps naively assumed that the machine would stay stopped during migration and wait for me to resume it, and not what appears to happen, which is resume automatically and then stop. This flow seems *very* odd to me.