There are argument we add because we want the test harness to control QEMU and arguments we default for handling the display and machine type. Split the obvious ones between base_args and a new list called harness_args.
We will leave the complexity of the serial ports for now. Signed-off-by: Alex Bennée <[email protected]> --- python/qemu/machine/machine.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/python/qemu/machine/machine.py b/python/qemu/machine/machine.py index ebb58d5b68c..e8973a87394 100644 --- a/python/qemu/machine/machine.py +++ b/python/qemu/machine/machine.py @@ -292,8 +292,8 @@ def _load_io_log(self) -> None: self._iolog = iolog.read() @property - def _base_args(self) -> List[str]: - args = ['-display', 'none', '-vga', 'none'] + def _harness_args(self) -> List[str]: + args: List[str] = [] if self._qmp_set: if self._sock_pair: @@ -307,8 +307,6 @@ def _base_args(self) -> List[str]: args.extend(['-chardev', moncdev, '-mon', 'chardev=mon,mode=control']) - if self._machine is not None: - args.extend(['-machine', self._machine]) for _ in range(self._console_index): args.extend(['-serial', 'null']) if self._console_set: @@ -323,6 +321,13 @@ def _base_args(self) -> List[str]: args.extend(['-device', device]) return args + @property + def _base_args(self) -> List[str]: + args: List[str] = ['-display', 'none', '-vga', 'none'] + if self._machine is not None: + args.extend(['-machine', self._machine]) + return args + @property def args(self) -> List[str]: """Returns the list of arguments given to the QEMU binary.""" @@ -366,6 +371,7 @@ def _pre_launch(self) -> None: self._qemu_full_args = tuple(chain( self._wrapper, [self._binary], + self._harness_args, self._base_args, self._args )) -- 2.47.3
