[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 14/15] qemu.py: improve message on negative exit
From: |
Daniel P. Berrange |
Subject: |
Re: [Qemu-devel] [PULL 14/15] qemu.py: improve message on negative exit code |
Date: |
Mon, 18 Sep 2017 10:44:00 +0100 |
User-agent: |
Mutt/1.8.3 (2017-05-23) |
On Fri, Sep 15, 2017 at 08:37:38PM -0300, Eduardo Habkost wrote:
> From: Amador Pahim <address@hidden>
>
> 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 <address@hidden>
> Message-Id: <address@hidden>
> [ehabkost: removed superfluous parenthesis]
> Reviewed-by: Fam Zheng <address@hidden>
> Signed-off-by: Eduardo Habkost <address@hidden>
> ---
> 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 :|
- [Qemu-devel] [PULL 05/15] qemu.py: Use custom exceptions rather than Exception, (continued)
- [Qemu-devel] [PULL 05/15] qemu.py: Use custom exceptions rather than Exception, Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 07/15] qmp.py: Use object-based class for QEMUMonitorProtocol, Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 06/15] qmp.py: Couple of pylint/style fixes, Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 08/15] qmp.py: Avoid "has_key" usage, Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 09/15] qmp.py: Avoid overriding a builtin object, Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 10/15] qtest.py: Few pylint/style fixes, Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 11/15] qemu.py: fix is_running() return before first launch(), Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 12/15] qemu.py: avoid writing to stdout/stderr, Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 13/15] qemu.py: use os.path.null instead of /dev/null, Eduardo Habkost, 2017/09/15
- [Qemu-devel] [PULL 14/15] qemu.py: improve message on negative exit code, Eduardo Habkost, 2017/09/15
- Re: [Qemu-devel] [PULL 14/15] qemu.py: improve message on negative exit code,
Daniel P. Berrange <=
- [Qemu-devel] [PULL 15/15] qemu.py: include debug information on launch error, Eduardo Habkost, 2017/09/15
- Re: [Qemu-devel] [PULL 00/15] Python queue, 2017-09-15, Peter Maydell, 2017/09/16