python/machine.py: re-add sigkill warning suppression

If the user kills QEMU on purpose, we don't need to warn
them about that having happened: they know already.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Cleber Rosa <crosa@redhat.com>
Message-Id: <20200710050649.32434-12-jsnow@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
This commit is contained in:
John Snow 2020-07-10 01:06:48 -04:00 committed by Philippe Mathieu-Daudé
parent 193bf1c061
commit de6e08b5b9

View File

@ -22,6 +22,7 @@ import logging
import os import os
import subprocess import subprocess
import shutil import shutil
import signal
import socket import socket
import tempfile import tempfile
from typing import Optional, Type from typing import Optional, Type
@ -133,6 +134,7 @@ class QEMUMachine:
self._console_address = None self._console_address = None
self._console_socket = None self._console_socket = None
self._remove_files = [] self._remove_files = []
self._user_killed = False
self._console_log_path = console_log self._console_log_path = console_log
if self._console_log_path: if self._console_log_path:
# In order to log the console, buffering needs to be enabled. # In order to log the console, buffering needs to be enabled.
@ -327,7 +329,8 @@ class QEMUMachine:
self._remove_if_exists(self._remove_files.pop()) self._remove_if_exists(self._remove_files.pop())
exitcode = self.exitcode() exitcode = self.exitcode()
if exitcode is not None and exitcode < 0: if (exitcode is not None and exitcode < 0
and not (self._user_killed and exitcode == -signal.SIGKILL)):
msg = 'qemu received signal %i; command: "%s"' msg = 'qemu received signal %i; command: "%s"'
if self._qemu_full_args: if self._qemu_full_args:
command = ' '.join(self._qemu_full_args) command = ' '.join(self._qemu_full_args)
@ -335,6 +338,7 @@ class QEMUMachine:
command = '' command = ''
LOG.warning(msg, -int(exitcode), command) LOG.warning(msg, -int(exitcode), command)
self._user_killed = False
self._launched = False self._launched = False
def launch(self): def launch(self):
@ -469,6 +473,7 @@ class QEMUMachine:
try: try:
if hard: if hard:
self._user_killed = True
self._hard_shutdown() self._hard_shutdown()
else: else:
self._do_shutdown(has_quit, timeout=timeout) self._do_shutdown(has_quit, timeout=timeout)