From: "Daniel P. Berrange" <berrange@redhat.com>
To: Eduardo Habkost <ehabkost@redhat.com>
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
qemu-devel@nongnu.org, "Lukáš Doktor" <ldoktor@redhat.com>,
"Amador Pahim" <apahim@redhat.com>,
"Stefan Hajnoczi" <stefanha@redhat.com>
Subject: Re: [Qemu-devel] [PULL 14/15] qemu.py: improve message on negative exit code
Date: Mon, 18 Sep 2017 10:44:00 +0100 [thread overview]
Message-ID: <20170918094400.GC2951@redhat.com> (raw)
In-Reply-To: <20170915233739.26860-15-ehabkost@redhat.com>
On Fri, Sep 15, 2017 at 08:37:38PM -0300, Eduardo Habkost wrote:
> From: Amador Pahim <apahim@redhat.com>
>
> The current message shows 'self._args', which contains only part of the
> options used in the Qemu command line.
>
> This patch makes the qemu full args list an instance variable and then
> uses it in the negative exit code message.
>
> Message was moved outside the 'if is_running' block to make sure it will
> be logged if the VM finishes before the call to shutdown().
>
> Signed-off-by: Amador Pahim <apahim@redhat.com>
> Message-Id: <20170901112829.2571-5-apahim@redhat.com>
> [ehabkost: removed superfluous parenthesis]
> Reviewed-by: Fam Zheng <famz@redhat.com>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> scripts/qemu.py | 24 +++++++++++++++++-------
> 1 file changed, 17 insertions(+), 7 deletions(-)
>
> diff --git a/scripts/qemu.py b/scripts/qemu.py
> index c9bcaafe41..9440261ac3 100644
> --- a/scripts/qemu.py
> +++ b/scripts/qemu.py
> @@ -87,6 +87,7 @@ class QEMUMachine(object):
> self._socket_scm_helper = socket_scm_helper
> self._debug = debug
> self._qmp = None
> + self._qemu_full_args = None
>
> def __enter__(self):
> return self
> @@ -186,13 +187,16 @@ class QEMUMachine(object):
>
> def launch(self):
> '''Launch the VM and establish a QMP connection'''
> + self._qemu_full_args = None
> devnull = open(os.path.devnull, 'rb')
> qemulog = open(self._qemu_log_path, 'wb')
> try:
> self._pre_launch()
> - args = (self._wrapper + [self._binary] + self._base_args() +
> - self._args)
> - self._popen = subprocess.Popen(args, stdin=devnull, stdout=qemulog,
> + self._qemu_full_args = self._wrapper + [self._binary] +
> + self._base_args() + self._args
FYI, this change causes a syntax error because you need either the ()
brackets, or an explicit \ continuation. Unfortunately this wasn't
caught by Peter's merge tests, since this code is only execised by
the qemu iotests which aren't run from a 'make check'.
If someone has cycles, it would be great to write some unit tests
directly targetting the qemu.py and qmp.py code, so that we get test
coverage of it independantly of the iotest execution.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2017-09-18 9:44 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-15 23:37 [Qemu-devel] [PULL 00/15] Python queue, 2017-09-15 Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 01/15] qemu.py: Pylint/style fixes Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 02/15] qemu|qtest: Avoid dangerous arguments Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 03/15] qemu.py: Use iteritems rather than keys() Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 04/15] qemu.py: Simplify QMP key-conversion Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 05/15] qemu.py: Use custom exceptions rather than Exception Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 06/15] qmp.py: Couple of pylint/style fixes Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 07/15] qmp.py: Use object-based class for QEMUMonitorProtocol Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 08/15] qmp.py: Avoid "has_key" usage Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 09/15] qmp.py: Avoid overriding a builtin object Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 10/15] qtest.py: Few pylint/style fixes Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 11/15] qemu.py: fix is_running() return before first launch() Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 12/15] qemu.py: avoid writing to stdout/stderr Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 13/15] qemu.py: use os.path.null instead of /dev/null Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 14/15] qemu.py: improve message on negative exit code Eduardo Habkost
2017-09-18 9:44 ` Daniel P. Berrange [this message]
2017-09-18 11:46 ` Eduardo Habkost
2017-09-15 23:37 ` [Qemu-devel] [PULL 15/15] qemu.py: include debug information on launch error Eduardo Habkost
2017-09-16 14:25 ` [Qemu-devel] [PULL 00/15] Python queue, 2017-09-15 Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170918094400.GC2951@redhat.com \
--to=berrange@redhat.com \
--cc=apahim@redhat.com \
--cc=ehabkost@redhat.com \
--cc=ldoktor@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).