<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/tests/qemu-iotests/040, branch master</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/tests/qemu-iotests/040?h=master</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/tests/qemu-iotests/040?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2022-04-25T12:30:09+00:00</updated>
<entry>
<title>iotests/040: Fix TestCommitWithFilters test</title>
<updated>2022-04-25T12:30:09+00:00</updated>
<author>
<name>John Snow</name>
</author>
<published>2022-04-18T21:14:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=489762917386d00e3c585584742449a54f059272'/>
<id>urn:sha1:489762917386d00e3c585584742449a54f059272</id>
<content type='text'>
Without this change, asserting that qemu_io always returns 0 causes this
test to fail in a way we happened not to be catching previously:

 qemu.utils.VerboseProcessError: Command
  '('/home/jsnow/src/qemu/bin/git/tests/qemu-iotests/../../qemu-io',
  '--cache', 'writeback', '--aio', 'threads', '-f', 'qcow2', '-c',
  'read -P 4 3M 1M',
  '/home/jsnow/src/qemu/bin/git/tests/qemu-iotests/scratch/3.img')'
  returned non-zero exit status 1.
  ┏━ output ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ┃ qemu-io: can't open device
  ┃ /home/jsnow/src/qemu/bin/git/tests/qemu-iotests/scratch/3.img:
  ┃ Could not open backing file: Could not open backing file: Throttle
  ┃ group 'tg' does not exist
  ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

The commit jobs changes the backing file string stored in the image file
header belonging to the node above the commit’s top node to point to the
commit target (the base node).  QEMU tries to be as accurate as
possible, and so in these test cases will include the filter that is
part of the block graph in that backing file string (by virtue of making
it a json:{} description of the post-commit subgraph).  This makes
little sense outside of QEMU, though: Specifically, the throttle node in
that subgraph will dearly miss its supposedly associated throttle group
object.

When starting the commit job, we can specify a custom backing file
string to write into said image file, so let’s use that feature to write
the plain filename of the backing chain’s next actual image file there.

Explicitly provide the backing file so that opening the file outside of
QEMU (Where we will not have throttle groups) will succeed.

Signed-off-by: Hanna Reitz &lt;hreitz@redhat.com&gt;
Signed-off-by: John Snow &lt;jsnow@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Message-Id: &lt;20220418211504.943969-6-jsnow@redhat.com&gt;
</content>
</entry>
<entry>
<title>iotests/040: Don't check image pattern on zero-length image</title>
<updated>2022-04-25T12:30:08+00:00</updated>
<author>
<name>John Snow</name>
</author>
<published>2022-04-18T21:14:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=aaa0c0ef825cd9d6c8219d5fe1ffea8db87b1b5d'/>
<id>urn:sha1:aaa0c0ef825cd9d6c8219d5fe1ffea8db87b1b5d</id>
<content type='text'>
qemu-io fails on read/write beyond end-of-file on raw images, so skip
these invocations when running the zero-length image tests.

Signed-off-by: John Snow &lt;jsnow@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Reviewed-by: Hanna Reitz &lt;hreitz@redhat.com&gt;
Message-Id: &lt;20220418211504.943969-5-jsnow@redhat.com&gt;
Signed-off-by: Hanna Reitz &lt;hreitz@redhat.com&gt;
</content>
</entry>
<entry>
<title>iotests: Don't check qemu_io() output for specific error strings</title>
<updated>2022-04-25T12:30:04+00:00</updated>
<author>
<name>John Snow</name>
</author>
<published>2022-04-18T21:14:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=e9039c045180c5929c1f440e8b0cb7c7ebfc3576'/>
<id>urn:sha1:e9039c045180c5929c1f440e8b0cb7c7ebfc3576</id>
<content type='text'>
A forthcoming commit updates qemu_io() to raise an exception on non-zero
return by default, and changes its return type.

In preparation, simplify some calls to qemu_io() that assert that
specific error message strings do not appear in qemu-io's
output. Asserting that all of these calls return a status code of zero
will be a more robust way to guard against failure.

Signed-off-by: John Snow &lt;jsnow@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Reviewed-by: Hanna Reitz &lt;hreitz@redhat.com&gt;
Message-Id: &lt;20220418211504.943969-4-jsnow@redhat.com&gt;
Signed-off-by: Hanna Reitz &lt;hreitz@redhat.com&gt;
</content>
</entry>
<entry>
<title>tests/qemu-iotests/040: Skip TestCommitWithFilters without 'throttle'</title>
<updated>2022-03-07T08:19:20+00:00</updated>
<author>
<name>Thomas Huth</name>
</author>
<published>2022-02-23T12:31:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=024354ea9164d3c4b6fd766784939fe39fa4e166'/>
<id>urn:sha1:024354ea9164d3c4b6fd766784939fe39fa4e166</id>
<content type='text'>
iotest 040 already has some checks for the availability of the 'throttle'
driver, but some new code has been added in the course of time that
depends on 'throttle' but does not check for its availability. Add
a check to the TestCommitWithFilters class so that this iotest now
also passes again if 'throttle' has not been enabled in the QEMU
binaries.

Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
Message-Id: &lt;20220223123127.3206042-1-thuth@redhat.com&gt;
Signed-off-by: Hanna Reitz &lt;hreitz@redhat.com&gt;
</content>
</entry>
<entry>
<title>python/machine: remove has_quit argument</title>
<updated>2021-11-01T15:54:59+00:00</updated>
<author>
<name>John Snow</name>
</author>
<published>2021-10-26T17:56:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=b9420e4f4b899c96221fa5a1f7f025214e756c50'/>
<id>urn:sha1:b9420e4f4b899c96221fa5a1f7f025214e756c50</id>
<content type='text'>
If we spy on the QMP commands instead, we don't need callers to remember
to pass it. Seems like a fair trade-off.

The one slightly weird bit is overloading this instance variable for
wait(), where we use it to mean "don't issue the qmp 'quit'
command". This means that wait() will "fail" if the QEMU process does
not terminate of its own accord.

In most cases, we probably did already actually issue quit -- some
iotests do this -- but in some others, we may be waiting for QEMU to
terminate for some other reason, such as a test wherein we tell the
guest (directly) to shut down.

Signed-off-by: John Snow &lt;jsnow@redhat.com&gt;
Reviewed-by: Hanna Reitz &lt;hreitz@redhat.com&gt;
Reviewed-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
Message-id: 20211026175612.4127598-2-jsnow@redhat.com
Signed-off-by: John Snow &lt;jsnow@redhat.com&gt;
</content>
</entry>
<entry>
<title>qemu-img: Require -F with -b backing image</title>
<updated>2021-07-09T11:18:32+00:00</updated>
<author>
<name>Eric Blake</name>
</author>
<published>2021-05-03T21:36:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=497a30dbb065937d67f6c43af6dd78492e1d6f6d'/>
<id>urn:sha1:497a30dbb065937d67f6c43af6dd78492e1d6f6d</id>
<content type='text'>
Back in commit d9f059aa6c (qemu-img: Deprecate use of -b without -F),
we deprecated the ability to create a file with a backing image that
requires qemu to perform format probing.  Qemu can still probe older
files for backwards compatibility, but it is time to finish off the
ability to create such images, due to the potential security risk they
present.  Update a couple of iotests affected by the change.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
Message-Id: &lt;20210503213600.569128-3-eblake@redhat.com&gt;
Reviewed-by: Connor Kuehl &lt;ckuehl@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182"</title>
<updated>2021-03-24T14:25:48+00:00</updated>
<author>
<name>Laurent Vivier</name>
</author>
<published>2021-03-23T16:53:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=22329f0d2963515e031584d21a03d3585b19cbf9'/>
<id>urn:sha1:22329f0d2963515e031584d21a03d3585b19cbf9</id>
<content type='text'>
Commit f1d5516ab583 introduces a test in some iotests to check if
the machine is a s390-ccw-virtio and to select virtio-*-ccw rather
than virtio-*-pci.

We don't need that because QEMU already provides aliases to use the correct
virtio interface according to the machine type.

This patch removes all virtio-*-pci and virtio-*-ccw to use virtio-*
instead and remove get_virtio_scsi_device().
This also enables virtio-mmio devices (virtio-*-device)

Signed-off-by: Laurent Vivier &lt;laurent@vivier.eu&gt;
Signed-off-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Tested-by: Philippe Mathieu-Daudé &lt;philmd@redhat.com&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;philmd@redhat.com&gt;
Reviewed-by: Cornelia Huck &lt;cohuck@redhat.com&gt;
Message-Id: &lt;20210319202335.2397060-5-laurent@vivier.eu&gt;
Message-Id: &lt;20210323165308.15244-20-alex.bennee@linaro.org&gt;
</content>
</entry>
<entry>
<title>block: Clarify error messages pertaining to 'node-name'</title>
<updated>2021-03-08T13:56:55+00:00</updated>
<author>
<name>Connor Kuehl</name>
</author>
<published>2021-03-05T15:19:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=785ec4b1b968906ea1d22f753a3b199be946550b'/>
<id>urn:sha1:785ec4b1b968906ea1d22f753a3b199be946550b</id>
<content type='text'>
Some error messages contain ambiguous representations of the 'node-name'
parameter. This can be particularly confusing when exchanging QMP
messages (C = client, S = server):

C: {"execute": "block_resize", "arguments": { "device": "my_file", "size": 26843545600 }}
S: {"error": {"class": "GenericError", "desc": "Cannot find device=my_file nor node_name="}}
                                                                               ^^^^^^^^^

This error message suggests one could send a message with a key called
'node_name':

C: {"execute": "block_resize", "arguments": { "node_name": "my_file", "size": 26843545600 }}
                                               ^^^^^^^^^

but using the underscore is actually incorrect, the parameter should be
'node-name':

S: {"error": {"class": "GenericError", "desc": "Parameter 'node_name' is unexpected"}}

This behavior was uncovered in bz1651437, but I ended up going down a
rabbit hole looking for other areas where this miscommunication might
occur and changing those accordingly as well.

Fixes: https://bugzilla.redhat.com/1651437
Signed-off-by: Connor Kuehl &lt;ckuehl@redhat.com&gt;
Message-Id: &lt;20210305151929.1947331-2-ckuehl@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>iotests: define group in each iotest</title>
<updated>2021-01-20T20:53:22+00:00</updated>
<author>
<name>Vladimir Sementsov-Ogievskiy</name>
</author>
<published>2021-01-16T13:44:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=9dd003a99842d1d82c336e45c5cce656149de382'/>
<id>urn:sha1:9dd003a99842d1d82c336e45c5cce656149de382</id>
<content type='text'>
We are going to drop group file. Define group in tests as a preparatory
step.

The patch is generated by

    cd tests/qemu-iotests

    grep '^[0-9]\{3\} ' group | while read line; do
        file=$(awk '{print $1}' &lt;&lt;&lt; "$line");
        groups=$(sed -e 's/^... //' &lt;&lt;&lt; "$line");
        awk "NR==2{print \"# group: $groups\"}1" $file &gt; tmp;
        cat tmp &gt; $file;
    done

Signed-off-by: Vladimir Sementsov-Ogievskiy &lt;vsementsov@virtuozzo.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Message-Id: &lt;20210116134424.82867-7-vsementsov@virtuozzo.com&gt;
Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
</entry>
<entry>
<title>block: Improve some block-commit, block-stream error messages</title>
<updated>2020-12-10T16:16:44+00:00</updated>
<author>
<name>Markus Armbruster</name>
</author>
<published>2020-11-13T08:26:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=b0d7be2a62eecade217fa45521be18149346eaa1'/>
<id>urn:sha1:b0d7be2a62eecade217fa45521be18149346eaa1</id>
<content type='text'>
block-commit defaults @base-node to the deepest backing image.  When
there is none, it fails with "Base 'NULL' not found".  Improve to
"There is no backing image".

block-commit and block-stream reject a @base argument that doesn't
resolve with "Base 'BASE' not found".  Commit 6b33f3ae8b "qemu-img:
Improve commit invalid base message" improved this message in
qemu-img.  Improve it here, too: "Can't find '%s' in the backing
chain".

QERR_BASE_NOT_FOUND is now unused.  Drop.

Cc: Kevin Wolf &lt;kwolf@redhat.com&gt;
Cc: Max Reitz &lt;mreitz@redhat.com&gt;
Cc: qemu-block@nongnu.org
Signed-off-by: Markus Armbruster &lt;armbru@redhat.com&gt;
Message-Id: &lt;20201113082626.2725812-4-armbru@redhat.com&gt;
Reviewed-by: Max Reitz &lt;mreitz@redhat.com&gt;
</content>
</entry>
</feed>
