On 02/24/2015 11:31 AM, John Snow wrote:
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.

Small correction: BLOCK_IO_ERROR and STOP occur here.

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.

...and not here.

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.


Reply via email to