On Fri, Nov 08, 2019 at 09:53:12 +0100, Kevin Wolf wrote: > Test that doing a second blockdev-snapshot doesn't make the first > overlay's backing file go away. > > Signed-off-by: Kevin Wolf <kw...@redhat.com> > --- > tests/qemu-iotests/273 | 76 +++++++++ > tests/qemu-iotests/273.out | 337 +++++++++++++++++++++++++++++++++++++ > tests/qemu-iotests/group | 1 + > 3 files changed, 414 insertions(+) > create mode 100755 tests/qemu-iotests/273 > create mode 100644 tests/qemu-iotests/273.out
Didn't apply cleanly for me. > > diff --git a/tests/qemu-iotests/273 b/tests/qemu-iotests/273 > new file mode 100755 > index 0000000000..60076de7ce > --- /dev/null > +++ b/tests/qemu-iotests/273 > @@ -0,0 +1,76 @@ > +#!/usr/bin/env bash > +# > +# Test large write to a qcow2 image Cut&paste? Rest looks good Reviewed-by: Peter Krempa <pkre...@redhat.com> > +# > +# Copyright (C) 2019 Red Hat, Inc. > +# > +# This program is free software; you can redistribute it and/or modify > +# it under the terms of the GNU General Public License as published by > +# the Free Software Foundation; either version 2 of the License, or > +# (at your option) any later version. > +# > +# This program is distributed in the hope that it will be useful, > +# but WITHOUT ANY WARRANTY; without even the implied warranty of > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > +# GNU General Public License for more details. > +# > +# You should have received a copy of the GNU General Public License > +# along with this program. If not, see <http://www.gnu.org/licenses/>. > +# > + > +seq=$(basename "$0") > +echo "QA output created by $seq" > + > +status=1 # failure is the default! > + > +_cleanup() > +{ > + _cleanup_test_img > +} > +trap "_cleanup; exit \$status" 0 1 2 3 15 > + > +# get standard environment, filters and checks > +. ./common.rc > +. ./common.filter > + > +# This is a qcow2 regression test > +_supported_fmt qcow2 > +_supported_proto file > +_supported_os Linux > + > +do_run_qemu() > +{ > + echo Testing: "$@" > + $QEMU -nographic -qmp-pretty stdio -nodefaults "$@" -qmp-pretty, that's useful > + echo > +} > + > +run_qemu() > +{ > + do_run_qemu "$@" 2>&1 | _filter_testdir | _filter_qemu | _filter_qmp | > + _filter_generated_node_ids | _filter_imgfmt | > _filter_actual_image_size > +} > + > +TEST_IMG="$TEST_IMG.base" _make_test_img 64M > +TEST_IMG="$TEST_IMG.mid" _make_test_img -b "$TEST_IMG.base" > +_make_test_img -b "$TEST_IMG.mid" > + > +run_qemu \ > + -blockdev file,node-name=base,filename="$TEST_IMG.base" \ > + -blockdev file,node-name=midf,filename="$TEST_IMG.mid" \ > + -blockdev > '{"driver":"qcow2","node-name":"mid","file":"midf","backing":null}' \ > + -blockdev file,node-name=topf,filename="$TEST_IMG" \ > + -blockdev > '{"driver":"qcow2","file":"topf","node-name":"top","backing":null}' \ > +<<EOF > +{"execute":"qmp_capabilities"} > +{"execute":"blockdev-snapshot","arguments":{"node":"base","overlay":"mid"}} > +{"execute":"blockdev-snapshot","arguments":{"node":"mid","overlay":"top"}} > +{"execute":"query-named-block-nodes"} > +{"execute":"x-debug-query-block-graph"} Oh, this too! > +{"execute":"quit"} > +EOF > + > +# success, all done > +echo "*** done" > +rm -f $seq.full > +status=0