@@ -112,6 +112,7 @@ class QEMUMachine(object):
self._sock_dir = sock_dir
self._launched = False
self._machine = None
+ self._console_index = 0
self._console_set = False
self._console_device_type = None
self._console_address = None
@@ -241,6 +242,8 @@ class QEMUMachine(object):
'chardev=mon,mode=control'])
if self._machine is not None:
args.extend(['-machine', self._machine])
+ for i in range(self._console_index):
+ args.extend(['-serial', 'null'])
if self._console_set:
self._console_address = os.path.join(self._sock_dir,
self._name + "-console.sock")
@@ -527,7 +530,7 @@ class QEMUMachine(object):
"""
self._machine = machine_type
- def set_console(self, device_type=None):
+ def set_console(self, device_type=None, console_index=0):
"""
Sets the device type for a console device
@@ -548,9 +551,14 @@ class QEMUMachine(object):
chardev:console" command line argument will
be used instead, resorting to the machine's
default device type.
+ @param console_index: the index of the console device to use.
+ If not zero, the command line will create
+ 'index - 1' consoles and connect them to
+ the 'null' backing character device.
"""
self._console_set = True
self._console_device_type = device_type
+ self._console_index = console_index
@property
def console_socket(self):