From nobody Sun Feb 8 10:17:38 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1532379510454248.33522409322154; Mon, 23 Jul 2018 13:58:30 -0700 (PDT) Received: from localhost ([::1]:36568 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fhhuX-0001W5-F7 for importer@patchew.org; Mon, 23 Jul 2018 16:58:29 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41607) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fhhJD-0002Ns-GU for qemu-devel@nongnu.org; Mon, 23 Jul 2018 16:19:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fhhJC-0003yg-C8 for qemu-devel@nongnu.org; Mon, 23 Jul 2018 16:19:55 -0400 Received: from mail-oi0-x22b.google.com ([2607:f8b0:4003:c06::22b]:37377) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fhhJC-0003xu-6D; Mon, 23 Jul 2018 16:19:54 -0400 Received: by mail-oi0-x22b.google.com with SMTP id k81-v6so3474947oib.4; Mon, 23 Jul 2018 13:19:54 -0700 (PDT) Received: from localhost (76-251-165-188.lightspeed.austtx.sbcglobal.net. [76.251.165.188]) by smtp.gmail.com with ESMTPSA id d191-v6sm11785799oig.16.2018.07.23.13.19.51 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 23 Jul 2018 13:19:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=s0wNDhDyswjhaeD8WyO9lAk7f+hfMkZUiW8OBsvTHlQ=; b=WXqsRMtutzPpvs05Y71ddEwgLJxVJm9KMXTidcPUCqpXIHoLA/xT/ljk3yJwXlzV6J zMcVN7ZmoFzQdwLMLBxKu18Hh2aCzeR/Uxnvr7y9yVfh/kLJBx4ll+WA2JepBbpneMm5 L1OyXbhwLPRE+hvtPKMdSmmfQASRf8EbfEsTq+H+BXBwx6i4LQTe2yRvR9dGQDGQpO52 WM0FvdBWIlHgYjG3Ioj1Hzay9MQq+/xqwA4lWkrvXEUacxbRGEfpcREHQdzoTd4AWeaW jKWmKoHZKwUYO6a/M7IggpDSAEzCxZrn8yy6ZqISdbCgazF2orfiKvI45OsnjbeIh/Qb Imew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=s0wNDhDyswjhaeD8WyO9lAk7f+hfMkZUiW8OBsvTHlQ=; b=hU6q4rCligqQMCRPJ0qxXpjlAtifvKgBpHUvHmAU3yZKT8LE7xfYbF7gOiUiT7uq5k JwqvkvrZ57KM7Xc1fbw0TUy9G9xtQv1eR18wTedHNRUo5RKBhtz1OR5WobcR7gs6RW7S i+zkX9E1a9Xui8rJg4sDrMf+oRAk7Wkrw8UIrF3HSPC7+UqM0Zy+Ju/7qd1CNgrw+OAM TDugWJodag7sdkGv54nQ3KXQ2HCG+mHT7FA2FYrhOPAUyypdWDByDvz3tIlDuT61RgFL m0jkEB13zgYAYRWvaFzU9UzJGZLDK/mZe9dupQjrrQv41kMS489VBgI0n45A4cm6OE3r sCrA== X-Gm-Message-State: AOUpUlETuHzi0sdE3gUBY6Tc2X30MvanZg9GcBvxDfWRuJjW5KYfaoar FEbnNv+HhenghO6FXOHE+nkURgzxs2Q= X-Google-Smtp-Source: AAOMgpeT8adPTuvXMnzi+jVFs6AqNuGeSp6uvVUSthuG1QRoPs0O08K1SYYf+VIXXH1FQOaa56Uifg== X-Received: by 2002:aca:90d:: with SMTP id 13-v6mr322748oij.300.1532377193008; Mon, 23 Jul 2018 13:19:53 -0700 (PDT) From: Michael Roth To: qemu-devel@nongnu.org Date: Mon, 23 Jul 2018 15:16:49 -0500 Message-Id: <20180723201748.25573-41-mdroth@linux.vnet.ibm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180723201748.25573-1-mdroth@linux.vnet.ibm.com> References: <20180723201748.25573-1-mdroth@linux.vnet.ibm.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4003:c06::22b Subject: [Qemu-devel] [PATCH 40/99] iotests: Add case for a corrupted inactive image X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: qemu-stable@nongnu.org, Max Reitz Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Max Reitz Reviewed-by: John Snow Tested-by: Jeff Cody Reviewed-by: Jeff Cody Signed-off-by: Max Reitz Message-id: 20180606193702.7113-4-mreitz@redhat.com Signed-off-by: Max Reitz (cherry picked from commit c50abd175a88cd41c2c08339de91f6f6e4a7b162) Signed-off-by: Michael Roth --- tests/qemu-iotests/060 | 30 ++++++++++++++++++++++++++++++ tests/qemu-iotests/060.out | 14 ++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/tests/qemu-iotests/060 b/tests/qemu-iotests/060 index 6c7407f499..7bdf609f3f 100755 --- a/tests/qemu-iotests/060 +++ b/tests/qemu-iotests/060 @@ -440,6 +440,36 @@ echo "{'execute': 'qmp_capabilities'} -drive if=3Dnone,node-name=3Ddrive,file=3D"$TEST_IMG",driver= =3Dqcow2 \ | _filter_qmp | _filter_qemu_io =20 +echo +echo "=3D=3D=3D Testing incoming inactive corrupted image =3D=3D=3D" +echo + +_make_test_img 64M +# Create an unaligned L1 entry, so qemu will signal a corruption when +# reading from the covered area +poke_file "$TEST_IMG" "$l1_offset" "\x00\x00\x00\x00\x2a\x2a\x2a\x2a" + +# Inactive images are effectively read-only images, so this should be a +# non-fatal corruption (which does not modify the image) +echo "{'execute': 'qmp_capabilities'} + {'execute': 'human-monitor-command', + 'arguments': {'command-line': 'qemu-io drive \"read 0 512\"'}} + {'execute': 'quit'}" \ + | $QEMU -qmp stdio -nographic -nodefaults \ + -blockdev "{'node-name': 'drive', + 'driver': 'qcow2', + 'file': { + 'driver': 'file', + 'filename': '$TEST_IMG' + }}" \ + -incoming exec:'cat /dev/null' \ + 2>&1 \ + | _filter_qmp | _filter_qemu_io + +echo +# Image should not have been marked corrupt +_img_info --format-specific | grep 'corrupt:' + # success, all done echo "*** done" rm -f $seq.full diff --git a/tests/qemu-iotests/060.out b/tests/qemu-iotests/060.out index 25d5c3938b..99234fbfc2 100644 --- a/tests/qemu-iotests/060.out +++ b/tests/qemu-iotests/060.out @@ -420,4 +420,18 @@ write failed: Input/output error {"return": ""} {"return": {}} {"timestamp": {"seconds": TIMESTAMP, "microseconds": TIMESTAMP}, "event"= : "SHUTDOWN", "data": {"guest": false}} + +=3D=3D=3D Testing incoming inactive corrupted image =3D=3D=3D + +Formatting 'TEST_DIR/t.IMGFMT', fmt=3DIMGFMT size=3D67108864 +QMP_VERSION +{"return": {}} +qcow2: Image is corrupt: L2 table offset 0x2a2a2a00 unaligned (L1 index: 0= ); further non-fatal corruption events will be suppressed +{"timestamp": {"seconds": TIMESTAMP, "microseconds": TIMESTAMP}, "event"= : "BLOCK_IMAGE_CORRUPTED", "data": {"device": "", "msg": "L2 table offset 0= x2a2a2a00 unaligned (L1 index: 0)", "node-name": "drive", "fatal": false}} +read failed: Input/output error +{"return": ""} +{"return": {}} +{"timestamp": {"seconds": TIMESTAMP, "microseconds": TIMESTAMP}, "event"= : "SHUTDOWN", "data": {"guest": false}} + + corrupt: false *** done --=20 2.17.1