11.04.2018 12:02, Vladimir Sementsov-Ogievskiy wrote:
03.04.2018 23:13, John Snow wrote:
On 04/03/2018 12:23 PM, Max Reitz wrote:
On 2018-03-30 18:10, Vladimir Sementsov-Ogievskiy wrote:
Use MIGRATION events instead of RESUME. Also, make a TODO: enable
dirty-bitmaps capability for offline case.
This (likely) fixes racy faults at least of the following types:
- timeout on waiting for RESUME event
- sha256 mismatch on 136 (138 after this patch)
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsement...@virtuozzo.com>
---
This patch is a true change for the test anyway. But I don't
understand,
why (and do really) it fixes the things. And I'm not sure about do we
really have a bug in bitmap migration or persistence. So, it's up
to you,
take it into 2.12...
It was already discussed, that "STOP" event is bad for tests. What
about
"RESUME"? How can we miss it? And sha256 mismatch is really something
strange.
Max, please check, do it fix 169 for you.
tests/qemu-iotests/169 | 44
+++++++++++++++++++++++---------------------
1 file changed, 23 insertions(+), 21 deletions(-)
This makes the test pass (thanks!), but it still leaves behind five
cats...
Max
Hmm:
jhuston 14772 0.0 0.0 4296 784 pts/3 S 16:12 0:00 cat
/home/bos/jhuston/src/qemu/bin/git/tests/qemu-iotests/scratch/mig_file
jhuston 14796 0.0 0.0 4296 764 pts/3 S 16:12 0:00 cat
/home/bos/jhuston/src/qemu/bin/git/tests/qemu-iotests/scratch/mig_file
jhuston 14940 0.0 0.0 4296 788 pts/3 S 16:12 0:00 cat
/home/bos/jhuston/src/qemu/bin/git/tests/qemu-iotests/scratch/mig_file
jhuston 14964 0.0 0.0 4296 720 pts/3 S 16:12 0:00 cat
/home/bos/jhuston/src/qemu/bin/git/tests/qemu-iotests/scratch/mig_file
jhuston 15052 0.0 0.0 4296 768 pts/3 S 16:12 0:00 cat
/home/bos/jhuston/src/qemu/bin/git/tests/qemu-iotests/scratch/mig_file
Why do these get left behind? Nothing to consume the data...?
aha, understand. it is due to last vm_b.shutdown() and vm_b.launch in
case of should_migrate. So, at the end of the test I restart vm_b with
-incoming parameter. But it looks like a bug anyway, If we start qemu
with -incoming "exec", should not we kill cat process, if there were
no migration?
third type of fail, without this patch:
+======================================================================
+ERROR: test__persistent__migbitmap__offline_shared
(__main__.TestDirtyBitmapMigration)
+methodcaller(name, ...) --> methodcaller object
+----------------------------------------------------------------------
+Traceback (most recent call last):
+ File "169", line 135, in do_test_migration
+ self.vm_b.launch()
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qemu.py", line
221, in launch
+ self._launch()
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qemu.py", line
244, in _launch
+ self._post_launch()
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qtest.py", line
100, in _post_launch
+ super(QEMUQtestMachine, self)._post_launch()
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qemu.py", line
196, in _post_launch
+ self._qmp.accept()
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qmp/qmp.py",
line 157, in accept
+ return self.__negotiate_capabilities()
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qmp/qmp.py",
line 75, in __negotiate_capabilities
+ resp = self.cmd('qmp_capabilities')
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qmp/qmp.py",
line 191, in cmd
+ return self.cmd_obj(qmp_cmd)
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qmp/qmp.py",
line 174, in cmd_obj
+ resp = self.__json_read()
+ File
"/work/src/qemu/up-169/tests/qemu-iotests/../../scripts/qmp/qmp.py",
line 82, in __json_read
+ data = self.__sockfile.readline()
+ File "/usr/lib64/python2.7/socket.py", line 447, in readline
+ data = self._sock.recv(self._rbufsize)
+error: [Errno 104] Connection reset by peer
+
--
Best regards,
Vladimir