* Re: [Qemu-devel] [PATCH v2 for-2.12] iotests: Avoid realpath, for CentOS 6
2018-03-15 11:51 [Qemu-devel] [PATCH v2 for-2.12] iotests: Avoid realpath, for CentOS 6 Eric Blake
@ 2018-03-15 14:13 ` Paolo Bonzini
2018-03-15 15:06 ` [Qemu-devel] [Qemu-block] " Jeff Cody
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Paolo Bonzini @ 2018-03-15 14:13 UTC (permalink / raw)
To: Eric Blake, qemu-devel; +Cc: qemu-block, famz, Kevin Wolf, Max Reitz
On 15/03/2018 12:51, Eric Blake wrote:
> CentOS 6 lacks a realpath binary on the base install, which makes
> all iotests runs fail since the 2.11 release:
>
> 001 - output mismatch (see 001.out.bad)
> ./check: line 815: realpath: command not found
> diff: missing operand after `/home/dummy/qemu/tests/qemu-iotests/001.out'
> diff: Try `diff --help' for more information.
>
> Many of the uses of 'realpath' in the check script were being
> used on the output of 'type -p' - but that is already an
> absolute file name. While a canonical name can often be
> shorter (realpath gets rid of /../), it can also be longer (due
> to symlink expansion); and we really don't care if the name is
> canonical, merely that it was an executable file with an
> absolute path. These were broken in commit cceaf1db.
>
> The remaining use of realpath was to convert a possibly relative
> filename into an absolute one before calling diff to make it
> easier to copy-and-paste the filename for moving the .bad file
> into place as the new reference file even when running iotests
> out-of-tree (see commit 93e53fb6), but $PWD can achieve the same
> purpose.
>
> Signed-off-by: Eric Blake <eblake@redhat.com>
>
> ---
> v2: Don't revert 93e53fb6, add commit id mentions in commit
> message, retitle
> ---
> tests/qemu-iotests/check | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
> index 469142cd586..ec8033350d1 100755
> --- a/tests/qemu-iotests/check
> +++ b/tests/qemu-iotests/check
> @@ -92,7 +92,7 @@ set_prog_path()
> {
> p=`command -v $1 2> /dev/null`
> if [ -n "$p" -a -x "$p" ]; then
> - realpath -- "$(type -p "$p")"
> + type -p "$p"
> else
> return 1
> fi
> @@ -554,7 +554,7 @@ then
> [ "$QEMU_PROG" = "" ] && _init_error "qemu not found"
> fi
> fi
> -export QEMU_PROG=$(realpath -- "$(type -p "$QEMU_PROG")")
> +export QEMU_PROG="$(type -p "$QEMU_PROG")"
>
> if [ -z "$QEMU_IMG_PROG" ]; then
> if [ -x "$build_iotests/qemu-img" ]; then
> @@ -565,7 +565,7 @@ if [ -z "$QEMU_IMG_PROG" ]; then
> _init_error "qemu-img not found"
> fi
> fi
> -export QEMU_IMG_PROG=$(realpath -- "$(type -p "$QEMU_IMG_PROG")")
> +export QEMU_IMG_PROG="$(type -p "$QEMU_IMG_PROG")"
>
> if [ -z "$QEMU_IO_PROG" ]; then
> if [ -x "$build_iotests/qemu-io" ]; then
> @@ -576,7 +576,7 @@ if [ -z "$QEMU_IO_PROG" ]; then
> _init_error "qemu-io not found"
> fi
> fi
> -export QEMU_IO_PROG=$(realpath -- "$(type -p "$QEMU_IO_PROG")")
> +export QEMU_IO_PROG="$(type -p "$QEMU_IO_PROG")"
>
> if [ -z $QEMU_NBD_PROG ]; then
> if [ -x "$build_iotests/qemu-nbd" ]; then
> @@ -587,7 +587,7 @@ if [ -z $QEMU_NBD_PROG ]; then
> _init_error "qemu-nbd not found"
> fi
> fi
> -export QEMU_NBD_PROG=$(realpath -- "$(type -p "$QEMU_NBD_PROG")")
> +export QEMU_NBD_PROG="$(type -p "$QEMU_NBD_PROG")"
>
> if [ -z "$QEMU_VXHS_PROG" ]; then
> export QEMU_VXHS_PROG="`set_prog_path qnio_server`"
> @@ -811,7 +811,7 @@ do
> else
> echo " - output mismatch (see $seq.out.bad)"
> mv $tmp.out $seq.out.bad
> - $diff -w "$reference" $(realpath $seq.out.bad)
> + $diff -w "$reference" "$PWD"/$seq.out.bad
> err=true
> fi
> fi
>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [Qemu-block] [PATCH v2 for-2.12] iotests: Avoid realpath, for CentOS 6
2018-03-15 11:51 [Qemu-devel] [PATCH v2 for-2.12] iotests: Avoid realpath, for CentOS 6 Eric Blake
2018-03-15 14:13 ` Paolo Bonzini
@ 2018-03-15 15:06 ` Jeff Cody
2018-03-15 15:12 ` [Qemu-devel] " Philippe Mathieu-Daudé
2018-03-16 15:05 ` Kevin Wolf
3 siblings, 0 replies; 5+ messages in thread
From: Jeff Cody @ 2018-03-15 15:06 UTC (permalink / raw)
To: Eric Blake; +Cc: qemu-devel, Kevin Wolf, pbonzini, famz, qemu-block, Max Reitz
On Thu, Mar 15, 2018 at 06:51:44AM -0500, Eric Blake wrote:
> CentOS 6 lacks a realpath binary on the base install, which makes
> all iotests runs fail since the 2.11 release:
>
> 001 - output mismatch (see 001.out.bad)
> ./check: line 815: realpath: command not found
> diff: missing operand after `/home/dummy/qemu/tests/qemu-iotests/001.out'
> diff: Try `diff --help' for more information.
>
> Many of the uses of 'realpath' in the check script were being
> used on the output of 'type -p' - but that is already an
> absolute file name. While a canonical name can often be
> shorter (realpath gets rid of /../), it can also be longer (due
> to symlink expansion); and we really don't care if the name is
> canonical, merely that it was an executable file with an
> absolute path. These were broken in commit cceaf1db.
>
> The remaining use of realpath was to convert a possibly relative
> filename into an absolute one before calling diff to make it
> easier to copy-and-paste the filename for moving the .bad file
> into place as the new reference file even when running iotests
> out-of-tree (see commit 93e53fb6), but $PWD can achieve the same
> purpose.
>
> Signed-off-by: Eric Blake <eblake@redhat.com>
>
> ---
> v2: Don't revert 93e53fb6, add commit id mentions in commit
> message, retitle
> ---
> tests/qemu-iotests/check | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
> index 469142cd586..ec8033350d1 100755
> --- a/tests/qemu-iotests/check
> +++ b/tests/qemu-iotests/check
> @@ -92,7 +92,7 @@ set_prog_path()
> {
> p=`command -v $1 2> /dev/null`
> if [ -n "$p" -a -x "$p" ]; then
> - realpath -- "$(type -p "$p")"
> + type -p "$p"
> else
> return 1
> fi
> @@ -554,7 +554,7 @@ then
> [ "$QEMU_PROG" = "" ] && _init_error "qemu not found"
> fi
> fi
> -export QEMU_PROG=$(realpath -- "$(type -p "$QEMU_PROG")")
> +export QEMU_PROG="$(type -p "$QEMU_PROG")"
>
> if [ -z "$QEMU_IMG_PROG" ]; then
> if [ -x "$build_iotests/qemu-img" ]; then
> @@ -565,7 +565,7 @@ if [ -z "$QEMU_IMG_PROG" ]; then
> _init_error "qemu-img not found"
> fi
> fi
> -export QEMU_IMG_PROG=$(realpath -- "$(type -p "$QEMU_IMG_PROG")")
> +export QEMU_IMG_PROG="$(type -p "$QEMU_IMG_PROG")"
>
> if [ -z "$QEMU_IO_PROG" ]; then
> if [ -x "$build_iotests/qemu-io" ]; then
> @@ -576,7 +576,7 @@ if [ -z "$QEMU_IO_PROG" ]; then
> _init_error "qemu-io not found"
> fi
> fi
> -export QEMU_IO_PROG=$(realpath -- "$(type -p "$QEMU_IO_PROG")")
> +export QEMU_IO_PROG="$(type -p "$QEMU_IO_PROG")"
>
> if [ -z $QEMU_NBD_PROG ]; then
> if [ -x "$build_iotests/qemu-nbd" ]; then
> @@ -587,7 +587,7 @@ if [ -z $QEMU_NBD_PROG ]; then
> _init_error "qemu-nbd not found"
> fi
> fi
> -export QEMU_NBD_PROG=$(realpath -- "$(type -p "$QEMU_NBD_PROG")")
> +export QEMU_NBD_PROG="$(type -p "$QEMU_NBD_PROG")"
>
> if [ -z "$QEMU_VXHS_PROG" ]; then
> export QEMU_VXHS_PROG="`set_prog_path qnio_server`"
> @@ -811,7 +811,7 @@ do
> else
> echo " - output mismatch (see $seq.out.bad)"
> mv $tmp.out $seq.out.bad
> - $diff -w "$reference" $(realpath $seq.out.bad)
> + $diff -w "$reference" "$PWD"/$seq.out.bad
> err=true
> fi
> fi
> --
> 2.14.3
>
>
Reviewed-by: Jeff Cody <jcody@redhat.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH v2 for-2.12] iotests: Avoid realpath, for CentOS 6
2018-03-15 11:51 [Qemu-devel] [PATCH v2 for-2.12] iotests: Avoid realpath, for CentOS 6 Eric Blake
2018-03-15 14:13 ` Paolo Bonzini
2018-03-15 15:06 ` [Qemu-devel] [Qemu-block] " Jeff Cody
@ 2018-03-15 15:12 ` Philippe Mathieu-Daudé
2018-03-16 15:05 ` Kevin Wolf
3 siblings, 0 replies; 5+ messages in thread
From: Philippe Mathieu-Daudé @ 2018-03-15 15:12 UTC (permalink / raw)
To: Eric Blake, qemu-devel; +Cc: Kevin Wolf, pbonzini, famz, qemu-block, Max Reitz
On 03/15/2018 12:51 PM, Eric Blake wrote:
> CentOS 6 lacks a realpath binary on the base install, which makes
> all iotests runs fail since the 2.11 release:
>
> 001 - output mismatch (see 001.out.bad)
> ./check: line 815: realpath: command not found
> diff: missing operand after `/home/dummy/qemu/tests/qemu-iotests/001.out'
> diff: Try `diff --help' for more information.
>
> Many of the uses of 'realpath' in the check script were being
> used on the output of 'type -p' - but that is already an
> absolute file name. While a canonical name can often be
> shorter (realpath gets rid of /../), it can also be longer (due
> to symlink expansion); and we really don't care if the name is
> canonical, merely that it was an executable file with an
> absolute path. These were broken in commit cceaf1db.
>
> The remaining use of realpath was to convert a possibly relative
> filename into an absolute one before calling diff to make it
> easier to copy-and-paste the filename for moving the .bad file
> into place as the new reference file even when running iotests
> out-of-tree (see commit 93e53fb6), but $PWD can achieve the same
> purpose.
>
> Signed-off-by: Eric Blake <eblake@redhat.com>
TIL type -p :)
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>
> ---
> v2: Don't revert 93e53fb6, add commit id mentions in commit
> message, retitle
> ---
> tests/qemu-iotests/check | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
> index 469142cd586..ec8033350d1 100755
> --- a/tests/qemu-iotests/check
> +++ b/tests/qemu-iotests/check
> @@ -92,7 +92,7 @@ set_prog_path()
> {
> p=`command -v $1 2> /dev/null`
> if [ -n "$p" -a -x "$p" ]; then
> - realpath -- "$(type -p "$p")"
> + type -p "$p"
> else
> return 1
> fi
> @@ -554,7 +554,7 @@ then
> [ "$QEMU_PROG" = "" ] && _init_error "qemu not found"
> fi
> fi
> -export QEMU_PROG=$(realpath -- "$(type -p "$QEMU_PROG")")
> +export QEMU_PROG="$(type -p "$QEMU_PROG")"
>
> if [ -z "$QEMU_IMG_PROG" ]; then
> if [ -x "$build_iotests/qemu-img" ]; then
> @@ -565,7 +565,7 @@ if [ -z "$QEMU_IMG_PROG" ]; then
> _init_error "qemu-img not found"
> fi
> fi
> -export QEMU_IMG_PROG=$(realpath -- "$(type -p "$QEMU_IMG_PROG")")
> +export QEMU_IMG_PROG="$(type -p "$QEMU_IMG_PROG")"
>
> if [ -z "$QEMU_IO_PROG" ]; then
> if [ -x "$build_iotests/qemu-io" ]; then
> @@ -576,7 +576,7 @@ if [ -z "$QEMU_IO_PROG" ]; then
> _init_error "qemu-io not found"
> fi
> fi
> -export QEMU_IO_PROG=$(realpath -- "$(type -p "$QEMU_IO_PROG")")
> +export QEMU_IO_PROG="$(type -p "$QEMU_IO_PROG")"
>
> if [ -z $QEMU_NBD_PROG ]; then
> if [ -x "$build_iotests/qemu-nbd" ]; then
> @@ -587,7 +587,7 @@ if [ -z $QEMU_NBD_PROG ]; then
> _init_error "qemu-nbd not found"
> fi
> fi
> -export QEMU_NBD_PROG=$(realpath -- "$(type -p "$QEMU_NBD_PROG")")
> +export QEMU_NBD_PROG="$(type -p "$QEMU_NBD_PROG")"
>
> if [ -z "$QEMU_VXHS_PROG" ]; then
> export QEMU_VXHS_PROG="`set_prog_path qnio_server`"
> @@ -811,7 +811,7 @@ do
> else
> echo " - output mismatch (see $seq.out.bad)"
> mv $tmp.out $seq.out.bad
> - $diff -w "$reference" $(realpath $seq.out.bad)
> + $diff -w "$reference" "$PWD"/$seq.out.bad
> err=true
> fi
> fi
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH v2 for-2.12] iotests: Avoid realpath, for CentOS 6
2018-03-15 11:51 [Qemu-devel] [PATCH v2 for-2.12] iotests: Avoid realpath, for CentOS 6 Eric Blake
` (2 preceding siblings ...)
2018-03-15 15:12 ` [Qemu-devel] " Philippe Mathieu-Daudé
@ 2018-03-16 15:05 ` Kevin Wolf
3 siblings, 0 replies; 5+ messages in thread
From: Kevin Wolf @ 2018-03-16 15:05 UTC (permalink / raw)
To: Eric Blake; +Cc: qemu-devel, qemu-block, pbonzini, famz, Max Reitz
Am 15.03.2018 um 12:51 hat Eric Blake geschrieben:
> CentOS 6 lacks a realpath binary on the base install, which makes
> all iotests runs fail since the 2.11 release:
>
> 001 - output mismatch (see 001.out.bad)
> ./check: line 815: realpath: command not found
> diff: missing operand after `/home/dummy/qemu/tests/qemu-iotests/001.out'
> diff: Try `diff --help' for more information.
>
> Many of the uses of 'realpath' in the check script were being
> used on the output of 'type -p' - but that is already an
> absolute file name. While a canonical name can often be
> shorter (realpath gets rid of /../), it can also be longer (due
> to symlink expansion); and we really don't care if the name is
> canonical, merely that it was an executable file with an
> absolute path. These were broken in commit cceaf1db.
>
> The remaining use of realpath was to convert a possibly relative
> filename into an absolute one before calling diff to make it
> easier to copy-and-paste the filename for moving the .bad file
> into place as the new reference file even when running iotests
> out-of-tree (see commit 93e53fb6), but $PWD can achieve the same
> purpose.
>
> Signed-off-by: Eric Blake <eblake@redhat.com>
Thanks, applied to the block branch.
Kevin
^ permalink raw reply [flat|nested] 5+ messages in thread