[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v16 21/22] qemu-iotests: Add test case 153 for i
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v16 21/22] qemu-iotests: Add test case 153 for image locking |
Date: |
Tue, 2 May 2017 16:59:36 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Am 02.05.2017 um 10:18 hat Fam Zheng geschrieben:
> Signed-off-by: Fam Zheng <address@hidden>
> ---
> tests/qemu-iotests/153 | 247 ++++++++++++++++++++++++++++
> tests/qemu-iotests/153.out | 390
> +++++++++++++++++++++++++++++++++++++++++++++
> tests/qemu-iotests/group | 1 +
> 3 files changed, 638 insertions(+)
> create mode 100755 tests/qemu-iotests/153
> create mode 100644 tests/qemu-iotests/153.out
>
> diff --git a/tests/qemu-iotests/153 b/tests/qemu-iotests/153
> new file mode 100755
> index 0000000..ed90f12
> --- /dev/null
> +++ b/tests/qemu-iotests/153
> @@ -0,0 +1,247 @@
> +#!/bin/bash
> +#
> +# Test image locking
> +#
> +# Copyright 2016, 2017 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/>.
> +#
> +
> +# creator
> address@hidden
> +
> +seq="$(basename $0)"
> +echo "QA output created by $seq"
> +
> +here="$PWD"
> +tmp=/tmp/$$
> +status=1 # failure is the default!
> +
> +_cleanup()
> +{
> + _cleanup_test_img
> + rm -f "${TEST_IMG}.base"
> + rm -f "${TEST_IMG}.convert"
> + rm -f "${TEST_IMG}.a"
> + rm -f "${TEST_IMG}.b"
> + rm -f "${TEST_IMG}.lnk"
> +}
> +trap "_cleanup; exit \$status" 0 1 2 3 15
> +
> +# get standard environment, filters and checks
> +. ./common.rc
> +. ./common.filter
> +. ./common.qemu
> +
> +_check_ofd()
> +{
> + local test_source="${TEST_DIR}/ofd-test.c"
> + local test_binary="${TEST_DIR}/ofd-test"
> + cat > "$test_source" <<EOF
> +#define _GNU_SOURCE
> +#include <unistd.h>
> +#include <fcntl.h>
> +#include <stdio.h>
> +
> +int main(int argc, char *argv[])
> +{
> + int fd = open(argv[0], O_RDONLY);
> + struct flock fl = {
> + .l_whence = SEEK_SET,
> + .l_start = 0,
> + .l_len = 1,
> + .l_type = F_RDLCK,
> + };
> + return !(fd >= 0 && fcntl(fd, F_OFD_SETLK, &fl) == 0);
> +}
> +EOF
> + cc "$test_source" -o "$test_binary" 2>&1 && "$test_binary"
> +}
Hm. Not sure I like this. It requires that a compiler is even installed
on the test machine, it doesn't respect which compiler was selected in
configure, and if the libc version on test machine doesn't match the
build machine of the qemu binaries, it might not even give the right
result.
Wouldn't it be much easier to just start qemu-io with locking=on and
grep for the warning?
Kevin
- [Qemu-devel] [PATCH v16 14/22] tests: Use null-co:// instead of /dev/null as the dummy image, (continued)
- [Qemu-devel] [PATCH v16 14/22] tests: Use null-co:// instead of /dev/null as the dummy image, Fam Zheng, 2017/05/02
- [Qemu-devel] [PATCH v16 16/22] tests: Disable image lock in test-replication, Fam Zheng, 2017/05/02
- [Qemu-devel] [PATCH v16 17/22] block: Reuse bs as backing hd for drive-backup sync=none, Fam Zheng, 2017/05/02
- [Qemu-devel] [PATCH v16 18/22] osdep: Add qemu_lock_fd and qemu_unlock_fd, Fam Zheng, 2017/05/02
- [Qemu-devel] [PATCH v16 19/22] osdep: Fall back to posix lock when OFD lock is unavailable, Fam Zheng, 2017/05/02
- [Qemu-devel] [PATCH v16 20/22] file-posix: Add image locking to perm operations, Fam Zheng, 2017/05/02
- [Qemu-devel] [PATCH v16 22/22] tests: Add POSIX image locking test case 182, Fam Zheng, 2017/05/02
- [Qemu-devel] [PATCH v16 21/22] qemu-iotests: Add test case 153 for image locking, Fam Zheng, 2017/05/02
- Re: [Qemu-devel] [PATCH v16 21/22] qemu-iotests: Add test case 153 for image locking,
Kevin Wolf <=
- Re: [Qemu-devel] [PATCH v16 00/22] block: Image locking series, Kevin Wolf, 2017/05/02
- Re: [Qemu-devel] [PATCH v16 00/22] block: Image locking series, Kevin Wolf, 2017/05/02