[{"id":1769373,"web_url":"http://patchwork.ozlabs.org/comment/1769373/","msgid":"<97519d8d-e00e-97f6-aa13-98ba06faca88@redhat.com>","list_archive_url":null,"date":"2017-09-15T19:14:26","subject":"Re: [Qemu-devel] [PATCH 7/6] qemu-iotests: Test change-backing-file\n\tcommand","submitter":{"id":6591,"url":"http://patchwork.ozlabs.org/api/people/6591/","name":"Eric Blake","email":"eblake@redhat.com"},"content":"On 09/15/2017 12:02 PM, Kevin Wolf wrote:\n> This involves a temporary read-write reopen if the backing file link in\n> the middle of a backing file chain should be changed and is therefore a\n> good test for the latest bdrv_reopen() vs. op blockers fixes.\n> \n> Signed-off-by: Kevin Wolf <kwolf@redhat.com>\n> ---\n> \n> I actually managed to find a simple case that reproduces the bug that\n> is fixed in this series, but outside of my commit job improvements that\n> originally led me to this work.\n> \n>  tests/qemu-iotests/195     | 92 ++++++++++++++++++++++++++++++++++++++++++++++\n>  tests/qemu-iotests/195.out | 78 +++++++++++++++++++++++++++++++++++++++\n>  tests/qemu-iotests/group   |  1 +\n\nThe usual collision in test numbering ;)\n\n\n> +_cleanup()\n> +{\n> +    _cleanup_test_img\n> +    rm -f \"$TEST_IMG.mid\"\n> +}\n> +trap \"_cleanup; exit \\$status\" 0 1 2 3 15\n\nSemantic conflict with Jeff's work to add './check -s' to save\nintermediate files in a per-test temp directory.\n\n> +\n> +echo\n> +echo \"Change backing file of mid (opened read-only)\"\n> +echo\n> +\n> +run_qemu -drive if=none,file=\"$TEST_IMG\",backing.node-name=mid <<EOF\n> +{\"execute\":\"qmp_capabilities\"}\n> +{\"execute\":\"change-backing-file\", \"arguments\":{\"device\":\"none0\",\"image-node-name\":\"mid\",\"backing-file\":\"/dev/null\"}}\n\nSince the images don't contain any content, I guess this works.  But\nanother possible change would be rewriting the backing file to alternate\nbetween absolute and relative (or even between 'file' and './file') (so\nthat it's pointing to the same file at all times, just by different names)\n\n> +{\"execute\":\"quit\"}\n> +EOF\n> +\n> +TEST_IMG=\"$TEST_IMG.mid\" _img_info\n> +\n> +echo\n> +echo \"Change backing file of top (opened writable)\"\n> +echo\n> +\n> +TEST_IMG=\"$TEST_IMG.mid\" _make_test_img -b \"$TEST_IMG.base\"\n> +\n> +run_qemu -drive if=none,file=\"$TEST_IMG\",node-name=top <<EOF\n> +{\"execute\":\"qmp_capabilities\"}\n> +{\"execute\":\"change-backing-file\", \"arguments\":{\"device\":\"none0\",\"image-node-name\":\"top\",\"backing-file\":\"/dev/null\"}}\n> +{\"execute\":\"quit\"}\n\nYou've quit qemu between runs.  Would we get any further coverage by doing:\n\nchange mid\nchange active\nchange mid\n\nall within a single run? (That is, make SURE that actions on one part of\nthe graph don't interfere with later actions elsewhere)","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx08.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx08.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=eblake@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xv4rh5NH2z9s7g\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSat, 16 Sep 2017 05:16:36 +1000 (AEST)","from localhost ([::1]:54727 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dsw6J-0002yH-22\n\tfor incoming@patchwork.ozlabs.org; Fri, 15 Sep 2017 15:16:31 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:55852)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <eblake@redhat.com>) id 1dsw4T-0001yu-K1\n\tfor qemu-devel@nongnu.org; Fri, 15 Sep 2017 15:14:38 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <eblake@redhat.com>) id 1dsw4S-0003rp-El\n\tfor qemu-devel@nongnu.org; Fri, 15 Sep 2017 15:14:37 -0400","from mx1.redhat.com ([209.132.183.28]:47820)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <eblake@redhat.com>)\n\tid 1dsw4N-0003qF-P7; Fri, 15 Sep 2017 15:14:31 -0400","from smtp.corp.redhat.com\n\t(int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id D71BBC024AFC;\n\tFri, 15 Sep 2017 19:14:30 +0000 (UTC)","from [10.10.124.97] (ovpn-124-97.rdu2.redhat.com [10.10.124.97])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id CF81568714;\n\tFri, 15 Sep 2017 19:14:27 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com D71BBC024AFC","To":"Kevin Wolf <kwolf@redhat.com>, qemu-block@nongnu.org","References":"<20170915101008.16646-1-kwolf@redhat.com>\n\t<20170915170204.14023-1-kwolf@redhat.com>","From":"Eric Blake <eblake@redhat.com>","Openpgp":"url=http://people.redhat.com/eblake/eblake.gpg","Organization":"Red Hat, Inc.","Message-ID":"<97519d8d-e00e-97f6-aa13-98ba06faca88@redhat.com>","Date":"Fri, 15 Sep 2017 14:14:26 -0500","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<20170915170204.14023-1-kwolf@redhat.com>","Content-Type":"multipart/signed; micalg=pgp-sha256;\n\tprotocol=\"application/pgp-signature\";\n\tboundary=\"DMjGRWttnJ4jOPaldhW1hNMjvRhVndqtg\"","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.14","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.32]);\n\tFri, 15 Sep 2017 19:14:31 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","X-Content-Filtered-By":"Mailman/MimeDel 2.1.21","Subject":"Re: [Qemu-devel] [PATCH 7/6] qemu-iotests: Test change-backing-file\n\tcommand","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Jeff Cody <jcody@redhat.com>, famz@redhat.com, qemu-devel@nongnu.org,\n\tmreitz@redhat.com","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}}]