From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56455) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YT2fB-0006dd-AP for qemu-devel@nongnu.org; Wed, 04 Mar 2015 01:20:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YT2fA-0005vM-6P for qemu-devel@nongnu.org; Wed, 04 Mar 2015 01:20:09 -0500 Date: Wed, 4 Mar 2015 14:19:58 +0800 From: Fam Zheng Message-ID: <20150304061958.GB19563@ad.nay.redhat.com> References: <1425413591-31413-1-git-send-email-mreitz@redhat.com> <1425413591-31413-3-git-send-email-mreitz@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1425413591-31413-3-git-send-email-mreitz@redhat.com> Subject: Re: [Qemu-devel] [PATCH v5 02/13] iotests: Make redirecting qemu's stderr optional List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Max Reitz Cc: Kevin Wolf , qemu-block@nongnu.org, qemu-devel@nongnu.org, Markus Armbruster , Stefan Hajnoczi , Paolo Bonzini On Tue, 03/03 15:13, Max Reitz wrote: > Redirecting qemu's stderr to stdout makes working with the stderr output > difficult due to the other file descriptor magic performed in > _launch_qemu ("ambiguous redirect"). > > Add an option which specifies whether stderr should be redirected to > stdout or not (allowing for other modes to be added in the future). > > Signed-off-by: Max Reitz > --- > tests/qemu-iotests/common.qemu | 12 +++++++++++- > 1 file changed, 11 insertions(+), 1 deletion(-) > > diff --git a/tests/qemu-iotests/common.qemu b/tests/qemu-iotests/common.qemu > index 4e1996c..1b5a554 100644 > --- a/tests/qemu-iotests/common.qemu > +++ b/tests/qemu-iotests/common.qemu > @@ -131,6 +131,8 @@ function _send_qemu_cmd() > # $qemu_comm_method: set this variable to 'monitor' (case insensitive) > # to use the QEMU HMP monitor for communication. > # Otherwise, the default of QMP is used. > +# $keep_stderr: Set this variable to 'y' to keep QEMU's stderr output on stderr. > +# If this variable is empty, stderr will be redirected to stdout. > # Returns: > # $QEMU_HANDLE: set to a handle value to communicate with this QEMU instance. > # > @@ -153,10 +155,18 @@ function _launch_qemu() > mkfifo "${fifo_out}" > mkfifo "${fifo_in}" > > - "${QEMU}" -nographic -serial none ${comm} -machine accel=qtest "${@}" \ > + if [ -z "$keep_stderr" ]; then > + "${QEMU}" -nographic -serial none ${comm} -machine accel=qtest "${@}" \ > >"${fifo_out}" \ > 2>&1 \ > <"${fifo_in}" & > + elif [ "$keep_stderr" = "y" ]; then > + "${QEMU}" -nographic -serial none ${comm} -machine accel=qtest "${@}" \ > + >"${fifo_out}" \ > + <"${fifo_in}" & > + else > + exit 1 > + fi > QEMU_PID[${_QEMU_HANDLE}]=$! > > if [[ "${BASH_VERSINFO[0]}" -ge "5" || > -- > 2.1.0 > > There is some duplication in both branches but I can live with that: Reviewed-by: Fam Zheng