From patchwork Fri Jun 28 13:46:08 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Shinkevich X-Patchwork-Id: 11022485 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 1FCB7112C for ; Fri, 28 Jun 2019 13:54:13 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0FFE028837 for ; Fri, 28 Jun 2019 13:54:13 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id F06A228831; Fri, 28 Jun 2019 13:54:12 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 3FB6628830 for ; Fri, 28 Jun 2019 13:54:12 +0000 (UTC) Received: from localhost ([::1]:60160 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrKN-0000zz-Ag for patchwork-qemu-devel@patchwork.kernel.org; Fri, 28 Jun 2019 09:54:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59638) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrCo-0002RA-Kp for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hgrCm-0004lD-JY for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:22 -0400 Received: from relay.sw.ru ([185.231.240.75]:41294) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hgrCm-0004i3-9s; Fri, 28 Jun 2019 09:46:20 -0400 Received: from [172.16.25.136] (helo=localhost.sw.ru) by relay.sw.ru with esmtp (Exim 4.92) (envelope-from ) id 1hgrCi-0008NT-6Q; Fri, 28 Jun 2019 16:46:16 +0300 From: Andrey Shinkevich To: qemu-devel@nongnu.org, qemu-block@nongnu.org Date: Fri, 28 Jun 2019 16:46:08 +0300 Message-Id: <1561729574-530879-2-git-send-email-andrey.shinkevich@virtuozzo.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> References: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 185.231.240.75 Subject: [Qemu-devel] [PATCH v3 1/7] iotests: allow Valgrind checking all QEMU processes X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, mreitz@redhat.com, andrey.shinkevich@virtuozzo.com, den@openvz.org Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP With the '-valgrind' option, let all the QEMU processes be run under the Valgrind tool. The Valgrind own parameters may be set with its environment variable VALGRIND_OPTS, e.g. VALGRIND_OPTS="--leak-check=yes" ./check -qcow2 -valgrind or they may be listed in the Valgrind checked file ./.valgrindrc or ~/.valgrindrc like --memcheck:leak-check=no --memcheck:track-origins=yes When QEMU-IO process is being killed, the shell report refers to the text of the command in _qemu_io_wrapper(), which was modified with this patch. So, the benchmark output for the tests 039, 061 and 137 is to be changed also. Signed-off-by: Andrey Shinkevich --- tests/qemu-iotests/039.out | 30 ++++--------------- tests/qemu-iotests/061.out | 12 ++------ tests/qemu-iotests/137.out | 6 +--- tests/qemu-iotests/common.rc | 69 ++++++++++++++++++++++++++++++++------------ 4 files changed, 59 insertions(+), 58 deletions(-) diff --git a/tests/qemu-iotests/039.out b/tests/qemu-iotests/039.out index 724d7b2..972c6c0 100644 --- a/tests/qemu-iotests/039.out +++ b/tests/qemu-iotests/039.out @@ -11,11 +11,7 @@ No errors were found on the image. Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 wrote 512/512 bytes at offset 0 512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -./common.rc: Killed ( if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -fi ) +./common.rc: Killed ( _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) incompatible_features 0x1 ERROR cluster 5 refcount=0 reference=1 ERROR OFLAG_COPIED data cluster: l2_entry=8000000000050000 refcount=0 @@ -50,11 +46,7 @@ read 512/512 bytes at offset 0 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 wrote 512/512 bytes at offset 0 512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -./common.rc: Killed ( if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -fi ) +./common.rc: Killed ( _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) incompatible_features 0x1 ERROR cluster 5 refcount=0 reference=1 Rebuilding refcount structure @@ -68,11 +60,7 @@ incompatible_features 0x0 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 wrote 512/512 bytes at offset 0 512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -./common.rc: Killed ( if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -fi ) +./common.rc: Killed ( _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) incompatible_features 0x0 No errors were found on the image. @@ -91,11 +79,7 @@ No errors were found on the image. Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 wrote 512/512 bytes at offset 0 512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -./common.rc: Killed ( if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -fi ) +./common.rc: Killed ( _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) incompatible_features 0x1 ERROR cluster 5 refcount=0 reference=1 ERROR OFLAG_COPIED data cluster: l2_entry=8000000000050000 refcount=0 @@ -105,11 +89,7 @@ Data may be corrupted, or further writes to the image may corrupt it. Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 wrote 512/512 bytes at offset 0 512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -./common.rc: Killed ( if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -fi ) +./common.rc: Killed ( _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) incompatible_features 0x0 No errors were found on the image. *** done diff --git a/tests/qemu-iotests/061.out b/tests/qemu-iotests/061.out index 1aa7d37..8cb57eb 100644 --- a/tests/qemu-iotests/061.out +++ b/tests/qemu-iotests/061.out @@ -118,11 +118,7 @@ No errors were found on the image. Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 wrote 131072/131072 bytes at offset 0 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -./common.rc: Killed ( if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -fi ) +./common.rc: Killed ( _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) magic 0x514649fb version 3 backing_file_offset 0x0 @@ -280,11 +276,7 @@ No errors were found on the image. Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 wrote 131072/131072 bytes at offset 0 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -./common.rc: Killed ( if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -fi ) +./common.rc: Killed ( _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) magic 0x514649fb version 3 backing_file_offset 0x0 diff --git a/tests/qemu-iotests/137.out b/tests/qemu-iotests/137.out index 22d59df..7fed5e6 100644 --- a/tests/qemu-iotests/137.out +++ b/tests/qemu-iotests/137.out @@ -35,11 +35,7 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 qemu-io: Unsupported value 'blubb' for qcow2 option 'overlap-check'. Allowed are any of the following: none, constant, cached, all wrote 512/512 bytes at offset 0 512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -./common.rc: Killed ( if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@"; -fi ) +./common.rc: Killed ( _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) incompatible_features 0x0 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 wrote 65536/65536 bytes at offset 0 diff --git a/tests/qemu-iotests/common.rc b/tests/qemu-iotests/common.rc index 5502c3d..6e461a1 100644 --- a/tests/qemu-iotests/common.rc +++ b/tests/qemu-iotests/common.rc @@ -60,19 +60,52 @@ if ! . ./common.config exit 1 fi +_qemu_proc_wrapper() +{ + local VALGRIND_LOGFILE="$1" + shift + if [ "${VALGRIND_QEMU}" == "y" ]; then + exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$@" + else + exec "$@" + fi +} + +_qemu_proc_valgrind_log() +{ + local VALGRIND_LOGFILE="$1" + local RETVAL="$2" + if [ "${VALGRIND_QEMU}" == "y" ]; then + if [ $RETVAL == 99 ]; then + cat "${VALGRIND_LOGFILE}" + fi + rm -f "${VALGRIND_LOGFILE}" + fi +} + _qemu_wrapper() { + local VALGRIND_LOGFILE="${TEST_DIR}"/$$.valgrind ( if [ -n "${QEMU_NEED_PID}" ]; then echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid" fi - exec "$QEMU_PROG" $QEMU_OPTIONS "$@" + _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" ) + RETVAL=$? + _qemu_proc_valgrind_log "${VALGRIND_LOGFILE}" $RETVAL + return $RETVAL } _qemu_img_wrapper() { - (exec "$QEMU_IMG_PROG" $QEMU_IMG_OPTIONS "$@") + local VALGRIND_LOGFILE="${TEST_DIR}"/$$.valgrind + ( + _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IMG_PROG" $QEMU_IMG_OPTIONS "$@" + ) + RETVAL=$? + _qemu_proc_valgrind_log "${VALGRIND_LOGFILE}" $RETVAL + return $RETVAL } _qemu_io_wrapper() @@ -85,36 +118,36 @@ _qemu_io_wrapper() QEMU_IO_ARGS="--object secret,id=keysec0,data=$IMGKEYSECRET $QEMU_IO_ARGS" fi fi - local RETVAL ( - if [ "${VALGRIND_QEMU}" == "y" ]; then - exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" - else - exec "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" - fi + _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" ) RETVAL=$? - if [ "${VALGRIND_QEMU}" == "y" ]; then - if [ $RETVAL == 99 ]; then - cat "${VALGRIND_LOGFILE}" - fi - rm -f "${VALGRIND_LOGFILE}" - fi - (exit $RETVAL) + _qemu_proc_valgrind_log "${VALGRIND_LOGFILE}" $RETVAL + return $RETVAL } _qemu_nbd_wrapper() { - "$QEMU_NBD_PROG" --pid-file="${QEMU_TEST_DIR}/qemu-nbd.pid" \ - $QEMU_NBD_OPTIONS "$@" + local VALGRIND_LOGFILE="${TEST_DIR}"/$$.valgrind + ( + _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_NBD_PROG" \ + --pid-file="${QEMU_TEST_DIR}/qemu-nbd.pid" $QEMU_NBD_OPTIONS "$@" + ) + RETVAL=$? + _qemu_proc_valgrind_log "${VALGRIND_LOGFILE}" $RETVAL + return $RETVAL } _qemu_vxhs_wrapper() { + local VALGRIND_LOGFILE="${TEST_DIR}"/$$.valgrind ( echo $BASHPID > "${TEST_DIR}/qemu-vxhs.pid" - exec "$QEMU_VXHS_PROG" $QEMU_VXHS_OPTIONS "$@" + _qemu_proc_wrapper "${VALGRIND_LOGFILE}" "$QEMU_VXHS_PROG" $QEMU_VXHS_OPTIONS "$@" ) + RETVAL=$? + _qemu_proc_valgrind_log "${VALGRIND_LOGFILE}" $RETVAL + return $RETVAL } export QEMU=_qemu_wrapper From patchwork Fri Jun 28 13:46:09 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Shinkevich X-Patchwork-Id: 11022499 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id E4AA415E6 for ; Fri, 28 Jun 2019 14:14:19 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D3B7328802 for ; Fri, 28 Jun 2019 14:14:19 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C83DF2880B; Fri, 28 Jun 2019 14:14:19 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 65B9C28802 for ; Fri, 28 Jun 2019 14:14:19 +0000 (UTC) Received: from localhost ([::1]:60438 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrdq-0001Vr-Bf for patchwork-qemu-devel@patchwork.kernel.org; Fri, 28 Jun 2019 10:14:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59621) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrCo-0002QG-1k for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hgrCm-0004lI-Jx for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:21 -0400 Received: from relay.sw.ru ([185.231.240.75]:41266) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hgrCm-0004hz-9t; Fri, 28 Jun 2019 09:46:20 -0400 Received: from [172.16.25.136] (helo=localhost.sw.ru) by relay.sw.ru with esmtp (Exim 4.92) (envelope-from ) id 1hgrCi-0008NT-BS; Fri, 28 Jun 2019 16:46:16 +0300 From: Andrey Shinkevich To: qemu-devel@nongnu.org, qemu-block@nongnu.org Date: Fri, 28 Jun 2019 16:46:09 +0300 Message-Id: <1561729574-530879-3-git-send-email-andrey.shinkevich@virtuozzo.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> References: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 185.231.240.75 Subject: [Qemu-devel] [PATCH v3 2/7] iotests: exclude killed processes from running under Valgrind X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, mreitz@redhat.com, andrey.shinkevich@virtuozzo.com, den@openvz.org Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP The Valgrind tool fails to manage its termination when QEMU raises the signal SIGKILL in the multi-threaded process. The bug has been reported to the Valgrind maintainers. Let's exclude such test cases from running under the Valgrind because checking for the memory issues is covered by other test cases. Signed-off-by: Andrey Shinkevich --- tests/qemu-iotests/039 | 5 +++++ tests/qemu-iotests/061 | 2 ++ tests/qemu-iotests/137 | 1 + 3 files changed, 8 insertions(+) diff --git a/tests/qemu-iotests/039 b/tests/qemu-iotests/039 index 0d4e963..95115e2 100755 --- a/tests/qemu-iotests/039 +++ b/tests/qemu-iotests/039 @@ -65,6 +65,7 @@ echo "== Creating a dirty image file ==" IMGOPTS="compat=1.1,lazy_refcounts=on" _make_test_img $size +VALGRIND_QEMU="" \ $QEMU_IO -c "write -P 0x5a 0 512" \ -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 \ | _filter_qemu_io @@ -100,6 +101,7 @@ echo "== Opening a dirty image read/write should repair it ==" IMGOPTS="compat=1.1,lazy_refcounts=on" _make_test_img $size +VALGRIND_QEMU="" \ $QEMU_IO -c "write -P 0x5a 0 512" \ -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 \ | _filter_qemu_io @@ -118,6 +120,7 @@ echo "== Creating an image file with lazy_refcounts=off ==" IMGOPTS="compat=1.1,lazy_refcounts=off" _make_test_img $size +VALGRIND_QEMU="" \ $QEMU_IO -c "write -P 0x5a 0 512" \ -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 \ | _filter_qemu_io @@ -151,6 +154,7 @@ echo "== Changing lazy_refcounts setting at runtime ==" IMGOPTS="compat=1.1,lazy_refcounts=off" _make_test_img $size +VALGRIND_QEMU="" \ $QEMU_IO -c "reopen -o lazy-refcounts=on" \ -c "write -P 0x5a 0 512" \ -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 \ @@ -163,6 +167,7 @@ _check_test_img IMGOPTS="compat=1.1,lazy_refcounts=on" _make_test_img $size +VALGRIND_QEMU="" \ $QEMU_IO -c "reopen -o lazy-refcounts=off" \ -c "write -P 0x5a 0 512" \ -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 \ diff --git a/tests/qemu-iotests/061 b/tests/qemu-iotests/061 index d7dbd7e..5d0724c 100755 --- a/tests/qemu-iotests/061 +++ b/tests/qemu-iotests/061 @@ -73,6 +73,7 @@ echo echo "=== Testing dirty version downgrade ===" echo IMGOPTS="compat=1.1,lazy_refcounts=on" _make_test_img 64M +VALGRIND_QEMU="" \ $QEMU_IO -c "write -P 0x2a 0 128k" -c flush \ -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 | _filter_qemu_io $PYTHON qcow2.py "$TEST_IMG" dump-header @@ -107,6 +108,7 @@ echo echo "=== Testing dirty lazy_refcounts=off ===" echo IMGOPTS="compat=1.1,lazy_refcounts=on" _make_test_img 64M +VALGRIND_QEMU="" \ $QEMU_IO -c "write -P 0x2a 0 128k" -c flush \ -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 | _filter_qemu_io $PYTHON qcow2.py "$TEST_IMG" dump-header diff --git a/tests/qemu-iotests/137 b/tests/qemu-iotests/137 index 0c3d2a1..a442fc8 100755 --- a/tests/qemu-iotests/137 +++ b/tests/qemu-iotests/137 @@ -130,6 +130,7 @@ echo # Whether lazy-refcounts was actually enabled can easily be tested: Check if # the dirty bit is set after a crash +VALGRIND_QEMU="" \ $QEMU_IO \ -c "reopen -o lazy-refcounts=on,overlap-check=blubb" \ -c "write -P 0x5a 0 512" \ From patchwork Fri Jun 28 13:46:10 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Shinkevich X-Patchwork-Id: 11022595 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 71AB614C0 for ; Fri, 28 Jun 2019 14:55:18 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 63217286F3 for ; Fri, 28 Jun 2019 14:55:18 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 545CD28802; Fri, 28 Jun 2019 14:55:18 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 0193C286F3 for ; Fri, 28 Jun 2019 14:55:18 +0000 (UTC) Received: from localhost ([::1]:32808 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgsHS-0004YJ-TO for patchwork-qemu-devel@patchwork.kernel.org; Fri, 28 Jun 2019 10:55:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59615) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrCn-0002Q5-Vr for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hgrCm-0004lb-Li for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:21 -0400 Received: from relay.sw.ru ([185.231.240.75]:41288) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hgrCm-0004i7-B9; Fri, 28 Jun 2019 09:46:20 -0400 Received: from [172.16.25.136] (helo=localhost.sw.ru) by relay.sw.ru with esmtp (Exim 4.92) (envelope-from ) id 1hgrCi-0008NT-Gc; Fri, 28 Jun 2019 16:46:16 +0300 From: Andrey Shinkevich To: qemu-devel@nongnu.org, qemu-block@nongnu.org Date: Fri, 28 Jun 2019 16:46:10 +0300 Message-Id: <1561729574-530879-4-git-send-email-andrey.shinkevich@virtuozzo.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> References: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 185.231.240.75 Subject: [Qemu-devel] [PATCH v3 3/7] iotests: Add casenotrun report to bash tests X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, mreitz@redhat.com, andrey.shinkevich@virtuozzo.com, den@openvz.org Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP The new function _casenotrun() is to be invoked if a test case cannot be run for some reason. The user will be notified by a message passed to the function. Suggested-by: Kevin Wolf Signed-off-by: Andrey Shinkevich --- tests/qemu-iotests/common.rc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/qemu-iotests/common.rc b/tests/qemu-iotests/common.rc index 6e461a1..1089050 100644 --- a/tests/qemu-iotests/common.rc +++ b/tests/qemu-iotests/common.rc @@ -428,6 +428,13 @@ _notrun() exit } +# bail out, setting up .casenotrun file +# +_casenotrun() +{ + echo " [case not run] $*" >>"$OUTPUT_DIR/$seq.casenotrun" +} + # just plain bail out # _fail() From patchwork Fri Jun 28 13:46:11 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Shinkevich X-Patchwork-Id: 11022491 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 21A1776 for ; Fri, 28 Jun 2019 14:09:01 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1252E285D1 for ; Fri, 28 Jun 2019 14:09:01 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 040492862C; Fri, 28 Jun 2019 14:09:01 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id A471D285D1 for ; Fri, 28 Jun 2019 14:09:00 +0000 (UTC) Received: from localhost ([::1]:60384 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrYh-0004PG-Qp for patchwork-qemu-devel@patchwork.kernel.org; Fri, 28 Jun 2019 10:08:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59605) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrCn-0002Pp-Kr for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hgrCm-0004l2-J5 for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:21 -0400 Received: from relay.sw.ru ([185.231.240.75]:41280) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hgrCm-0004i5-9i; Fri, 28 Jun 2019 09:46:20 -0400 Received: from [172.16.25.136] (helo=localhost.sw.ru) by relay.sw.ru with esmtp (Exim 4.92) (envelope-from ) id 1hgrCi-0008NT-M3; Fri, 28 Jun 2019 16:46:16 +0300 From: Andrey Shinkevich To: qemu-devel@nongnu.org, qemu-block@nongnu.org Date: Fri, 28 Jun 2019 16:46:11 +0300 Message-Id: <1561729574-530879-5-git-send-email-andrey.shinkevich@virtuozzo.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> References: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 185.231.240.75 Subject: [Qemu-devel] [PATCH v3 4/7] iotests: Valgrind fails with nonexistent directory X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, mreitz@redhat.com, andrey.shinkevich@virtuozzo.com, den@openvz.org Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP The Valgrind uses the exported variable TMPDIR and fails if the directory does not exist. Let us exclude such a test case from being run under the Valgrind and notify the user of it. Suggested-by: Kevin Wolf Signed-off-by: Andrey Shinkevich --- tests/qemu-iotests/051 | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/qemu-iotests/051 b/tests/qemu-iotests/051 index 200660f..2465e48 100755 --- a/tests/qemu-iotests/051 +++ b/tests/qemu-iotests/051 @@ -377,6 +377,10 @@ printf %b "qemu-io $device_id \"write -P 0x33 0 4k\"\ncommit $device_id\n" | $QEMU_IO -c "read -P 0x33 0 4k" "$TEST_IMG" | _filter_qemu_io # Using snapshot=on with a non-existent TMPDIR +if [ "${VALGRIND_QEMU}" == "y" ]; then + _casenotrun "Valgrind needs a valid TMPDIR for itself" +fi +VALGRIND_QEMU="" \ TMPDIR=/nonexistent run_qemu -drive driver=null-co,snapshot=on # Using snapshot=on together with read-only=on From patchwork Fri Jun 28 13:46:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Shinkevich X-Patchwork-Id: 11022479 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id A5CF0924 for ; Fri, 28 Jun 2019 13:50:30 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9622728610 for ; Fri, 28 Jun 2019 13:50:30 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 89E5A28738; Fri, 28 Jun 2019 13:50:30 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 227BC284C5 for ; Fri, 28 Jun 2019 13:50:30 +0000 (UTC) Received: from localhost ([::1]:60120 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrGn-0005a4-C8 for patchwork-qemu-devel@patchwork.kernel.org; Fri, 28 Jun 2019 09:50:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59618) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrCo-0002QA-0n for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hgrCm-0004l8-Jk for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:21 -0400 Received: from relay.sw.ru ([185.231.240.75]:41276) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hgrCm-0004i2-9u; Fri, 28 Jun 2019 09:46:20 -0400 Received: from [172.16.25.136] (helo=localhost.sw.ru) by relay.sw.ru with esmtp (Exim 4.92) (envelope-from ) id 1hgrCi-0008NT-Rh; Fri, 28 Jun 2019 16:46:16 +0300 From: Andrey Shinkevich To: qemu-devel@nongnu.org, qemu-block@nongnu.org Date: Fri, 28 Jun 2019 16:46:12 +0300 Message-Id: <1561729574-530879-6-git-send-email-andrey.shinkevich@virtuozzo.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> References: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 185.231.240.75 Subject: [Qemu-devel] [PATCH v3 5/7] iotests: extended timeout under Valgrind X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, mreitz@redhat.com, andrey.shinkevich@virtuozzo.com, den@openvz.org Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP As the iotests run longer under the Valgrind, the QEMU_COMM_TIMEOUT is to be increased in the test cases 028, 183 and 192 when running under the Valgrind. Suggested-by: Roman Kagan Signed-off-by: Andrey Shinkevich Reviewed-by: Vladimir Sementsov-Ogievskiy --- tests/qemu-iotests/028 | 6 +++++- tests/qemu-iotests/183 | 9 ++++++++- tests/qemu-iotests/192 | 6 +++++- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/tests/qemu-iotests/028 b/tests/qemu-iotests/028 index 01f4959..71301ec 100755 --- a/tests/qemu-iotests/028 +++ b/tests/qemu-iotests/028 @@ -110,7 +110,11 @@ echo qemu_comm_method="monitor" _launch_qemu -drive file="${TEST_IMG}",cache=${CACHEMODE},id=disk h=$QEMU_HANDLE -QEMU_COMM_TIMEOUT=1 +if [ "${VALGRIND_QEMU}" == "y" ]; then + QEMU_COMM_TIMEOUT=7 +else + QEMU_COMM_TIMEOUT=1 +fi # Silence output since it contains the disk image path and QEMU's readline # character echoing makes it very hard to filter the output. Plus, there diff --git a/tests/qemu-iotests/183 b/tests/qemu-iotests/183 index fbe5a99..04fb344 100755 --- a/tests/qemu-iotests/183 +++ b/tests/qemu-iotests/183 @@ -94,8 +94,15 @@ if echo "$reply" | grep "compiled without old-style" > /dev/null; then _notrun "migrate -b support not compiled in" fi -QEMU_COMM_TIMEOUT=0.1 qemu_cmd_repeat=50 silent=yes \ +timeout_comm=$QEMU_COMM_TIMEOUT +if [ "${VALGRIND_QEMU}" == "y" ]; then + QEMU_COMM_TIMEOUT=4 +else + QEMU_COMM_TIMEOUT=0.1 +fi +qemu_cmd_repeat=50 silent=yes \ _send_qemu_cmd $src "{ 'execute': 'query-migrate' }" '"status": "completed"' +QEMU_COMM_TIMEOUT=$timeout_comm _send_qemu_cmd $src "{ 'execute': 'query-status' }" "return" echo diff --git a/tests/qemu-iotests/192 b/tests/qemu-iotests/192 index 6193257..0344322 100755 --- a/tests/qemu-iotests/192 +++ b/tests/qemu-iotests/192 @@ -60,7 +60,11 @@ fi qemu_comm_method="monitor" _launch_qemu -drive $DRIVE_ARG -incoming defer h=$QEMU_HANDLE -QEMU_COMM_TIMEOUT=1 +if [ "${VALGRIND_QEMU}" == "y" ]; then + QEMU_COMM_TIMEOUT=7 +else + QEMU_COMM_TIMEOUT=1 +fi _send_qemu_cmd $h "nbd_server_start unix:$TEST_DIR/nbd" "(qemu)" _send_qemu_cmd $h "nbd_server_add -w drive0" "(qemu)" From patchwork Fri Jun 28 13:46:13 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Shinkevich X-Patchwork-Id: 11022589 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D9FA014C0 for ; Fri, 28 Jun 2019 14:47:10 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CB293286F3 for ; Fri, 28 Jun 2019 14:47:10 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id BCD0E287D4; Fri, 28 Jun 2019 14:47:10 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id E0A17286F3 for ; Fri, 28 Jun 2019 14:47:09 +0000 (UTC) Received: from localhost ([::1]:32774 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgs9b-0000QW-Ts for patchwork-qemu-devel@patchwork.kernel.org; Fri, 28 Jun 2019 10:47:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59611) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrCn-0002Q0-Sw for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hgrCm-0004lW-L1 for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:21 -0400 Received: from relay.sw.ru ([185.231.240.75]:41278) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hgrCm-0004i1-Au; Fri, 28 Jun 2019 09:46:20 -0400 Received: from [172.16.25.136] (helo=localhost.sw.ru) by relay.sw.ru with esmtp (Exim 4.92) (envelope-from ) id 1hgrCj-0008NT-1L; Fri, 28 Jun 2019 16:46:17 +0300 From: Andrey Shinkevich To: qemu-devel@nongnu.org, qemu-block@nongnu.org Date: Fri, 28 Jun 2019 16:46:13 +0300 Message-Id: <1561729574-530879-7-git-send-email-andrey.shinkevich@virtuozzo.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> References: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 185.231.240.75 Subject: [Qemu-devel] [PATCH v3 6/7] iotests: extend sleeping time under Valgrind X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, mreitz@redhat.com, andrey.shinkevich@virtuozzo.com, den@openvz.org Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP To synchronize the time when QEMU is running longer under the Valgrind, increase the sleeping time in the test 247. Signed-off-by: Andrey Shinkevich Reviewed-by: Vladimir Sementsov-Ogievskiy --- tests/qemu-iotests/247 | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/qemu-iotests/247 b/tests/qemu-iotests/247 index 546a794..c853b73 100755 --- a/tests/qemu-iotests/247 +++ b/tests/qemu-iotests/247 @@ -57,7 +57,11 @@ TEST_IMG="$TEST_IMG.4" _make_test_img $size {"execute":"block-commit", "arguments":{"device":"format-4", "top-node": "format-2", "base-node":"format-0", "job-id":"job0"}} EOF -sleep 1 +if [ "${VALGRIND_QEMU}" == "y" ]; then + sleep 10 +else + sleep 1 +fi echo '{"execute":"quit"}' ) | $QEMU -qmp stdio -nographic -nodefaults \ -blockdev file,node-name=file-0,filename=$TEST_IMG.0,auto-read-only=on \ From patchwork Fri Jun 28 13:46:14 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Shinkevich X-Patchwork-Id: 11022513 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BF0151575 for ; Fri, 28 Jun 2019 14:26:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id ACFA12843B for ; Fri, 28 Jun 2019 14:26:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A0A8B284B5; Fri, 28 Jun 2019 14:26:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 21DC42843B for ; Fri, 28 Jun 2019 14:26:46 +0000 (UTC) Received: from localhost ([::1]:60648 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrpt-0003gM-46 for patchwork-qemu-devel@patchwork.kernel.org; Fri, 28 Jun 2019 10:26:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59718) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgrCs-0002V3-0S for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hgrCm-0004lk-PX for qemu-devel@nongnu.org; Fri, 28 Jun 2019 09:46:25 -0400 Received: from relay.sw.ru ([185.231.240.75]:41292) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hgrCm-0004i4-BA; Fri, 28 Jun 2019 09:46:20 -0400 Received: from [172.16.25.136] (helo=localhost.sw.ru) by relay.sw.ru with esmtp (Exim 4.92) (envelope-from ) id 1hgrCj-0008NT-6l; Fri, 28 Jun 2019 16:46:17 +0300 From: Andrey Shinkevich To: qemu-devel@nongnu.org, qemu-block@nongnu.org Date: Fri, 28 Jun 2019 16:46:14 +0300 Message-Id: <1561729574-530879-8-git-send-email-andrey.shinkevich@virtuozzo.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> References: <1561729574-530879-1-git-send-email-andrey.shinkevich@virtuozzo.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 185.231.240.75 Subject: [Qemu-devel] [PATCH v3 7/7] iotests: Set read-zeroes on in null block driver for Valgrind X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, mreitz@redhat.com, andrey.shinkevich@virtuozzo.com, den@openvz.org Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP The Valgrind tool reports about the uninitialised buffer 'buf' instantiated on the stack of the function guess_disk_lchs(). It is revealed in the tests 051, 186, 227 and 240. Pass 'read-zeroes=on' to the null block driver in the mentioned tests to make them deterministic. The output of the tests above now includes the parameter 'read-zeroes'. So, the benchmark output files are being changed too. Suggested-by: Kevin Wolf Signed-off-by: Andrey Shinkevich --- tests/qemu-iotests/051 | 10 +-- tests/qemu-iotests/051.pc.out | 10 +-- tests/qemu-iotests/186 | 20 +++--- tests/qemu-iotests/186.out | 152 +++++++++++++++++++++--------------------- tests/qemu-iotests/227 | 4 +- tests/qemu-iotests/227.out | 4 +- tests/qemu-iotests/240 | 8 +-- 7 files changed, 104 insertions(+), 104 deletions(-) diff --git a/tests/qemu-iotests/051 b/tests/qemu-iotests/051 index 2465e48..f8141ca 100755 --- a/tests/qemu-iotests/051 +++ b/tests/qemu-iotests/051 @@ -251,11 +251,11 @@ echo # Cannot use the test image because cache=none might not work on the host FS # Use cdrom so that we won't get errors about missing media -run_qemu -drive driver=null-co,cache=none -run_qemu -drive driver=null-co,cache=directsync -run_qemu -drive driver=null-co,cache=writeback -run_qemu -drive driver=null-co,cache=writethrough -run_qemu -drive driver=null-co,cache=unsafe +run_qemu -drive driver=null-co,read-zeroes=on,cache=none +run_qemu -drive driver=null-co,read-zeroes=on,cache=directsync +run_qemu -drive driver=null-co,read-zeroes=on,cache=writeback +run_qemu -drive driver=null-co,read-zeroes=on,cache=writethrough +run_qemu -drive driver=null-co,read-zeroes=on,cache=unsafe run_qemu -drive driver=null-co,cache=invalid_value # Can't test direct=on here because O_DIRECT might not be supported on this FS diff --git a/tests/qemu-iotests/051.pc.out b/tests/qemu-iotests/051.pc.out index 2d811c1..000557c 100644 --- a/tests/qemu-iotests/051.pc.out +++ b/tests/qemu-iotests/051.pc.out @@ -245,23 +245,23 @@ QEMU X.Y.Z monitor - type 'help' for more information === Cache modes === -Testing: -drive driver=null-co,cache=none +Testing: -drive driver=null-co,read-zeroes=on,cache=none QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit -Testing: -drive driver=null-co,cache=directsync +Testing: -drive driver=null-co,read-zeroes=on,cache=directsync QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit -Testing: -drive driver=null-co,cache=writeback +Testing: -drive driver=null-co,read-zeroes=on,cache=writeback QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit -Testing: -drive driver=null-co,cache=writethrough +Testing: -drive driver=null-co,read-zeroes=on,cache=writethrough QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit -Testing: -drive driver=null-co,cache=unsafe +Testing: -drive driver=null-co,read-zeroes=on,cache=unsafe QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit diff --git a/tests/qemu-iotests/186 b/tests/qemu-iotests/186 index 7e7d45b..5f6b18c 100755 --- a/tests/qemu-iotests/186 +++ b/tests/qemu-iotests/186 @@ -86,8 +86,8 @@ echo "=== -blockdev/-device= ===" echo for dev in $fixed $removable; do - check_info_block -blockdev driver=null-co,node-name=null -device $dev,drive=null - check_info_block -blockdev driver=null-co,node-name=null -device $dev,drive=null,id=qdev_id + check_info_block -blockdev driver=null-co,read-zeroes=on,node-name=null -device $dev,drive=null + check_info_block -blockdev driver=null-co,read-zeroes=on,node-name=null -device $dev,drive=null,id=qdev_id done echo @@ -97,7 +97,7 @@ echo # This creates two BlockBackends that will show up in 'info block'! # A monitor-owned one from -drive, and anonymous one from -device for dev in $fixed $removable; do - check_info_block -drive if=none,driver=null-co,node-name=null -device $dev,drive=null,id=qdev_id + check_info_block -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device $dev,drive=null,id=qdev_id done echo @@ -105,8 +105,8 @@ echo "=== -drive if=none/-device= (with medium) ===" echo for dev in $fixed $removable; do - check_info_block -drive if=none,driver=null-co,node-name=null -device $dev,drive=none0 - check_info_block -drive if=none,driver=null-co,node-name=null -device $dev,drive=none0,id=qdev_id + check_info_block -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device $dev,drive=none0 + check_info_block -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device $dev,drive=none0,id=qdev_id done echo @@ -125,15 +125,15 @@ echo "=== -drive if=... ===" echo check_info_block -drive if=floppy -check_info_block -drive if=floppy,driver=null-co +check_info_block -drive if=floppy,driver=null-co,read-zeroes=on -check_info_block -drive if=ide,driver=null-co +check_info_block -drive if=ide,driver=null-co,read-zeroes=on check_info_block -drive if=ide,media=cdrom -check_info_block -drive if=ide,driver=null-co,media=cdrom +check_info_block -drive if=ide,driver=null-co,read-zeroes=on,media=cdrom -check_info_block -drive if=virtio,driver=null-co +check_info_block -drive if=virtio,driver=null-co,read-zeroes=on -check_info_block -drive if=pflash,driver=null-co,size=1M +check_info_block -drive if=pflash,driver=null-co,read-zeroes=on,size=1M # success, all done echo "*** done" diff --git a/tests/qemu-iotests/186.out b/tests/qemu-iotests/186.out index 716b01a..5b35040 100644 --- a/tests/qemu-iotests/186.out +++ b/tests/qemu-iotests/186.out @@ -54,103 +54,103 @@ qdev_id: [not inserted] === -blockdev/-device= === -Testing: -blockdev driver=null-co,node-name=null -device ide-hd,drive=null +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device ide-hd,drive=null QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device ide-hd,drive=null,id=qdev_id +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device ide-hd,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: qdev_id Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device scsi-hd,drive=null +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device scsi-hd,drive=null QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device scsi-hd,drive=null,id=qdev_id +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device scsi-hd,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: qdev_id Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device virtio-blk-pci,drive=null +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device virtio-blk-pci,drive=null QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device virtio-blk-pci,drive=null,id=qdev_id +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device virtio-blk-pci,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device floppy,drive=null +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device floppy,drive=null QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: PATH Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device floppy,drive=null,id=qdev_id +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device floppy,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device ide-cd,drive=null +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device ide-cd,drive=null QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: PATH Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device ide-cd,drive=null,id=qdev_id +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device ide-cd,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device scsi-cd,drive=null +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device scsi-cd,drive=null QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: PATH Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -blockdev driver=null-co,node-name=null -device scsi-cd,drive=null,id=qdev_id +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device scsi-cd,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -null: null-co:// (null-co) +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback @@ -159,76 +159,76 @@ null: null-co:// (null-co) === -drive if=none/-device= === -Testing: -drive if=none,driver=null-co,node-name=null -device ide-hd,drive=null,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device ide-hd,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Removable device: not locked, tray closed Cache mode: writeback -null: null-co:// (null-co) +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device scsi-hd,drive=null,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device scsi-hd,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Removable device: not locked, tray closed Cache mode: writeback -null: null-co:// (null-co) +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device virtio-blk-pci,drive=null,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device virtio-blk-pci,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Removable device: not locked, tray closed Cache mode: writeback -null: null-co:// (null-co) +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device floppy,drive=null,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device floppy,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Removable device: not locked, tray closed Cache mode: writeback -null: null-co:// (null-co) +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device ide-cd,drive=null,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device ide-cd,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Removable device: not locked, tray closed Cache mode: writeback -null: null-co:// (null-co) +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device scsi-cd,drive=null,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device scsi-cd,drive=null,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Removable device: not locked, tray closed Cache mode: writeback -null: null-co:// (null-co) +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback @@ -237,103 +237,103 @@ null: null-co:// (null-co) === -drive if=none/-device= (with medium) === -Testing: -drive if=none,driver=null-co,node-name=null -device ide-hd,drive=none0 +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device ide-hd,drive=none0 QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device ide-hd,drive=none0,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device ide-hd,drive=none0,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device scsi-hd,drive=none0 +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device scsi-hd,drive=none0 QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device scsi-hd,drive=none0,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device scsi-hd,drive=none0,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device virtio-blk-pci,drive=none0 +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device virtio-blk-pci,drive=none0 QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device virtio-blk-pci,drive=none0,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device virtio-blk-pci,drive=none0,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device floppy,drive=none0 +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device floppy,drive=none0 QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device floppy,drive=none0,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device floppy,drive=none0,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device ide-cd,drive=none0 +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device ide-cd,drive=none0 QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device ide-cd,drive=none0,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device ide-cd,drive=none0,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device scsi-cd,drive=none0 +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device scsi-cd,drive=none0 QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=none,driver=null-co,node-name=null -device scsi-cd,drive=none0,id=qdev_id +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device scsi-cd,drive=none0,id=qdev_id QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -none0 (null): null-co:// (null-co) +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: qdev_id Removable device: not locked, tray closed Cache mode: writeback @@ -408,19 +408,19 @@ floppy0: [not inserted] Removable device: not locked, tray closed (qemu) quit -Testing: -drive if=floppy,driver=null-co +Testing: -drive if=floppy,driver=null-co,read-zeroes=on QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -floppy0 (NODE_NAME): null-co:// (null-co) +floppy0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=ide,driver=null-co +Testing: -drive if=ide,driver=null-co,read-zeroes=on QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -ide0-hd0 (NODE_NAME): null-co:// (null-co) +ide0-hd0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit @@ -433,27 +433,27 @@ ide0-cd0: [not inserted] Removable device: not locked, tray closed (qemu) quit -Testing: -drive if=ide,driver=null-co,media=cdrom +Testing: -drive if=ide,driver=null-co,read-zeroes=on,media=cdrom QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -ide0-cd0 (NODE_NAME): null-co:// (null-co, read-only) +ide0-cd0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co"} (null-co, read-only) Attached to: PATH Removable device: not locked, tray closed Cache mode: writeback (qemu) quit -Testing: -drive if=virtio,driver=null-co +Testing: -drive if=virtio,driver=null-co,read-zeroes=on QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -virtio0 (NODE_NAME): null-co:// (null-co) +virtio0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit -Testing: -drive if=pflash,driver=null-co,size=1M +Testing: -drive if=pflash,driver=null-co,read-zeroes=on,size=1M QEMU X.Y.Z monitor - type 'help' for more information (qemu) info block -pflash0 (NODE_NAME): json:{"driver": "null-co", "size": "1M"} (null-co) +pflash0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co", "size": "1M"} (null-co) Attached to: PATH Cache mode: writeback (qemu) quit diff --git a/tests/qemu-iotests/227 b/tests/qemu-iotests/227 index bdd727a..637d7c3 100755 --- a/tests/qemu-iotests/227 +++ b/tests/qemu-iotests/227 @@ -57,7 +57,7 @@ echo echo '=== blockstats with -drive if=virtio ===' echo -run_qemu -drive driver=null-co,if=virtio <