[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 7/6] qemu-iotests: Test change-backing-file comm
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH 7/6] qemu-iotests: Test change-backing-file command |
Date: |
Fri, 15 Sep 2017 14:14:26 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 |
On 09/15/2017 12:02 PM, Kevin Wolf wrote:
> This involves a temporary read-write reopen if the backing file link in
> the middle of a backing file chain should be changed and is therefore a
> good test for the latest bdrv_reopen() vs. op blockers fixes.
>
> Signed-off-by: Kevin Wolf <address@hidden>
> ---
>
> I actually managed to find a simple case that reproduces the bug that
> is fixed in this series, but outside of my commit job improvements that
> originally led me to this work.
>
> tests/qemu-iotests/195 | 92
> ++++++++++++++++++++++++++++++++++++++++++++++
> tests/qemu-iotests/195.out | 78 +++++++++++++++++++++++++++++++++++++++
> tests/qemu-iotests/group | 1 +
The usual collision in test numbering ;)
> +_cleanup()
> +{
> + _cleanup_test_img
> + rm -f "$TEST_IMG.mid"
> +}
> +trap "_cleanup; exit \$status" 0 1 2 3 15
Semantic conflict with Jeff's work to add './check -s' to save
intermediate files in a per-test temp directory.
> +
> +echo
> +echo "Change backing file of mid (opened read-only)"
> +echo
> +
> +run_qemu -drive if=none,file="$TEST_IMG",backing.node-name=mid <<EOF
> +{"execute":"qmp_capabilities"}
> +{"execute":"change-backing-file",
> "arguments":{"device":"none0","image-node-name":"mid","backing-file":"/dev/null"}}
Since the images don't contain any content, I guess this works. But
another possible change would be rewriting the backing file to alternate
between absolute and relative (or even between 'file' and './file') (so
that it's pointing to the same file at all times, just by different names)
> +{"execute":"quit"}
> +EOF
> +
> +TEST_IMG="$TEST_IMG.mid" _img_info
> +
> +echo
> +echo "Change backing file of top (opened writable)"
> +echo
> +
> +TEST_IMG="$TEST_IMG.mid" _make_test_img -b "$TEST_IMG.base"
> +
> +run_qemu -drive if=none,file="$TEST_IMG",node-name=top <<EOF
> +{"execute":"qmp_capabilities"}
> +{"execute":"change-backing-file",
> "arguments":{"device":"none0","image-node-name":"top","backing-file":"/dev/null"}}
> +{"execute":"quit"}
You've quit qemu between runs. Would we get any further coverage by doing:
change mid
change active
change mid
all within a single run? (That is, make SURE that actions on one part of
the graph don't interfere with later actions elsewhere)
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH 2/6] block: Add reopen_queue to bdrv_child_perm(), (continued)
- [Qemu-devel] [PATCH 2/6] block: Add reopen_queue to bdrv_child_perm(), Kevin Wolf, 2017/09/15
- [Qemu-devel] [PATCH 6/6] block: Fix permissions after bdrv_reopen(), Kevin Wolf, 2017/09/15
- [Qemu-devel] [PATCH 5/6] block: reopen: Queue children after their parents, Kevin Wolf, 2017/09/15
- [Qemu-devel] [PATCH 7/6] qemu-iotests: Test change-backing-file command, Kevin Wolf, 2017/09/15
- Re: [Qemu-devel] [PATCH 7/6] qemu-iotests: Test change-backing-file command,
Eric Blake <=
- Re: [Qemu-devel] [PATCH 0/6] block: Fix permissions after ro/rw reopen, Fam Zheng, 2017/09/18
Re: [Qemu-devel] [PATCH 0/6] block: Fix permissions after ro/rw reopen, Kevin Wolf, 2017/09/20