mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-27 04:13:53 -06:00
python/machine: remove unused sock_dir argument
By using a socketpair for all of the sockets managed by the VM class and its extensions, we don't need the sock_dir argument anymore, so remove it. We only added this argument so that we could specify a second, shorter temporary directory for cases where the temp/log dirs were "too long" as a socket name on macOS. We don't need it for this class now. In one case, avocado testing takes over responsibility for creating an appropriate sockdir. Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-id: 20230928044943.849073-7-jsnow@redhat.com Signed-off-by: John Snow <jsnow@redhat.com>
This commit is contained in:
parent
d396737813
commit
46d4747ab5
7 changed files with 9 additions and 31 deletions
|
@ -127,7 +127,6 @@ class QEMUMachine:
|
||||||
name: Optional[str] = None,
|
name: Optional[str] = None,
|
||||||
base_temp_dir: str = "/var/tmp",
|
base_temp_dir: str = "/var/tmp",
|
||||||
monitor_address: Optional[SocketAddrT] = None,
|
monitor_address: Optional[SocketAddrT] = None,
|
||||||
sock_dir: Optional[str] = None,
|
|
||||||
drain_console: bool = False,
|
drain_console: bool = False,
|
||||||
console_log: Optional[str] = None,
|
console_log: Optional[str] = None,
|
||||||
log_dir: Optional[str] = None,
|
log_dir: Optional[str] = None,
|
||||||
|
@ -141,7 +140,6 @@ class QEMUMachine:
|
||||||
@param name: prefix for socket and log file names (default: qemu-PID)
|
@param name: prefix for socket and log file names (default: qemu-PID)
|
||||||
@param base_temp_dir: default location where temp files are created
|
@param base_temp_dir: default location where temp files are created
|
||||||
@param monitor_address: address for QMP monitor
|
@param monitor_address: address for QMP monitor
|
||||||
@param sock_dir: where to create socket (defaults to base_temp_dir)
|
|
||||||
@param drain_console: (optional) True to drain console socket to buffer
|
@param drain_console: (optional) True to drain console socket to buffer
|
||||||
@param console_log: (optional) path to console log file
|
@param console_log: (optional) path to console log file
|
||||||
@param log_dir: where to create and keep log files
|
@param log_dir: where to create and keep log files
|
||||||
|
@ -163,7 +161,6 @@ class QEMUMachine:
|
||||||
Tuple[socket.socket, socket.socket]] = None
|
Tuple[socket.socket, socket.socket]] = None
|
||||||
self._temp_dir: Optional[str] = None
|
self._temp_dir: Optional[str] = None
|
||||||
self._base_temp_dir = base_temp_dir
|
self._base_temp_dir = base_temp_dir
|
||||||
self._sock_dir = sock_dir
|
|
||||||
self._log_dir = log_dir
|
self._log_dir = log_dir
|
||||||
|
|
||||||
self._monitor_address = monitor_address
|
self._monitor_address = monitor_address
|
||||||
|
@ -189,9 +186,6 @@ class QEMUMachine:
|
||||||
self._console_index = 0
|
self._console_index = 0
|
||||||
self._console_set = False
|
self._console_set = False
|
||||||
self._console_device_type: Optional[str] = None
|
self._console_device_type: Optional[str] = None
|
||||||
self._console_address = os.path.join(
|
|
||||||
self.sock_dir, f"{self._name}.con"
|
|
||||||
)
|
|
||||||
self._console_socket: Optional[socket.socket] = None
|
self._console_socket: Optional[socket.socket] = None
|
||||||
self._console_file: Optional[socket.SocketIO] = None
|
self._console_file: Optional[socket.SocketIO] = None
|
||||||
self._remove_files: List[str] = []
|
self._remove_files: List[str] = []
|
||||||
|
@ -335,9 +329,6 @@ class QEMUMachine:
|
||||||
return self._args
|
return self._args
|
||||||
|
|
||||||
def _pre_launch(self) -> None:
|
def _pre_launch(self) -> None:
|
||||||
if self._console_set:
|
|
||||||
self._remove_files.append(self._console_address)
|
|
||||||
|
|
||||||
if self._qmp_set:
|
if self._qmp_set:
|
||||||
if self._monitor_address is None:
|
if self._monitor_address is None:
|
||||||
self._sock_pair = socket.socketpair()
|
self._sock_pair = socket.socketpair()
|
||||||
|
@ -937,15 +928,6 @@ class QEMUMachine:
|
||||||
dir=self._base_temp_dir)
|
dir=self._base_temp_dir)
|
||||||
return self._temp_dir
|
return self._temp_dir
|
||||||
|
|
||||||
@property
|
|
||||||
def sock_dir(self) -> str:
|
|
||||||
"""
|
|
||||||
Returns the directory used for sockfiles by this machine.
|
|
||||||
"""
|
|
||||||
if self._sock_dir:
|
|
||||||
return self._sock_dir
|
|
||||||
return self.temp_dir
|
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def log_dir(self) -> str:
|
def log_dir(self) -> str:
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -135,17 +135,14 @@ class QEMUQtestMachine(QEMUMachine):
|
||||||
wrapper: Sequence[str] = (),
|
wrapper: Sequence[str] = (),
|
||||||
name: Optional[str] = None,
|
name: Optional[str] = None,
|
||||||
base_temp_dir: str = "/var/tmp",
|
base_temp_dir: str = "/var/tmp",
|
||||||
sock_dir: Optional[str] = None,
|
|
||||||
qmp_timer: Optional[float] = None):
|
qmp_timer: Optional[float] = None):
|
||||||
# pylint: disable=too-many-arguments
|
# pylint: disable=too-many-arguments
|
||||||
|
|
||||||
if name is None:
|
if name is None:
|
||||||
name = "qemu-%d" % os.getpid()
|
name = "qemu-%d" % os.getpid()
|
||||||
if sock_dir is None:
|
|
||||||
sock_dir = base_temp_dir
|
|
||||||
super().__init__(binary, args, wrapper=wrapper, name=name,
|
super().__init__(binary, args, wrapper=wrapper, name=name,
|
||||||
base_temp_dir=base_temp_dir,
|
base_temp_dir=base_temp_dir,
|
||||||
sock_dir=sock_dir, qmp_timer=qmp_timer)
|
qmp_timer=qmp_timer)
|
||||||
self._qtest: Optional[QEMUQtestProtocol] = None
|
self._qtest: Optional[QEMUQtestProtocol] = None
|
||||||
self._qtest_sock_pair: Optional[
|
self._qtest_sock_pair: Optional[
|
||||||
Tuple[socket.socket, socket.socket]] = None
|
Tuple[socket.socket, socket.socket]] = None
|
||||||
|
|
|
@ -92,17 +92,14 @@ class QEMUBitsMachine(QEMUMachine): # pylint: disable=too-few-public-methods
|
||||||
base_temp_dir: str = "/var/tmp",
|
base_temp_dir: str = "/var/tmp",
|
||||||
debugcon_log: str = "debugcon-log.txt",
|
debugcon_log: str = "debugcon-log.txt",
|
||||||
debugcon_addr: str = "0x403",
|
debugcon_addr: str = "0x403",
|
||||||
sock_dir: Optional[str] = None,
|
|
||||||
qmp_timer: Optional[float] = None):
|
qmp_timer: Optional[float] = None):
|
||||||
# pylint: disable=too-many-arguments
|
# pylint: disable=too-many-arguments
|
||||||
|
|
||||||
if name is None:
|
if name is None:
|
||||||
name = "qemu-bits-%d" % os.getpid()
|
name = "qemu-bits-%d" % os.getpid()
|
||||||
if sock_dir is None:
|
|
||||||
sock_dir = base_temp_dir
|
|
||||||
super().__init__(binary, args, wrapper=wrapper, name=name,
|
super().__init__(binary, args, wrapper=wrapper, name=name,
|
||||||
base_temp_dir=base_temp_dir,
|
base_temp_dir=base_temp_dir,
|
||||||
sock_dir=sock_dir, qmp_timer=qmp_timer)
|
qmp_timer=qmp_timer)
|
||||||
self.debugcon_log = debugcon_log
|
self.debugcon_log = debugcon_log
|
||||||
self.debugcon_addr = debugcon_addr
|
self.debugcon_addr = debugcon_addr
|
||||||
self.base_temp_dir = base_temp_dir
|
self.base_temp_dir = base_temp_dir
|
||||||
|
|
|
@ -322,7 +322,7 @@ class QemuSystemTest(QemuBaseTest):
|
||||||
def _new_vm(self, name, *args):
|
def _new_vm(self, name, *args):
|
||||||
self._sd = tempfile.TemporaryDirectory(prefix="qemu_")
|
self._sd = tempfile.TemporaryDirectory(prefix="qemu_")
|
||||||
vm = QEMUMachine(self.qemu_bin, base_temp_dir=self.workdir,
|
vm = QEMUMachine(self.qemu_bin, base_temp_dir=self.workdir,
|
||||||
sock_dir=self._sd.name, log_dir=self.logdir)
|
log_dir=self.logdir)
|
||||||
self.log.debug('QEMUMachine "%s" created', name)
|
self.log.debug('QEMUMachine "%s" created', name)
|
||||||
self.log.debug('QEMUMachine "%s" temp_dir: %s', name, vm.temp_dir)
|
self.log.debug('QEMUMachine "%s" temp_dir: %s', name, vm.temp_dir)
|
||||||
self.log.debug('QEMUMachine "%s" log_dir: %s', name, vm.log_dir)
|
self.log.debug('QEMUMachine "%s" log_dir: %s', name, vm.log_dir)
|
||||||
|
|
|
@ -247,7 +247,10 @@ class AST2x00Machine(QemuSystemTest):
|
||||||
image_path = self.fetch_asset(image_url, asset_hash=image_hash,
|
image_path = self.fetch_asset(image_url, asset_hash=image_hash,
|
||||||
algorithm='sha256')
|
algorithm='sha256')
|
||||||
|
|
||||||
socket = os.path.join(self.vm.sock_dir, 'swtpm-socket')
|
# force creation of VM object, which also defines self._sd
|
||||||
|
vm = self.vm
|
||||||
|
|
||||||
|
socket = os.path.join(self._sd.name, 'swtpm-socket')
|
||||||
|
|
||||||
subprocess.run(['swtpm', 'socket', '-d', '--tpm2',
|
subprocess.run(['swtpm', 'socket', '-d', '--tpm2',
|
||||||
'--tpmstate', f'dir={self.vm.temp_dir}',
|
'--tpmstate', f'dir={self.vm.temp_dir}',
|
||||||
|
|
|
@ -823,7 +823,7 @@ class VM(qtest.QEMUQtestMachine):
|
||||||
super().__init__(qemu_prog, qemu_opts, wrapper=wrapper,
|
super().__init__(qemu_prog, qemu_opts, wrapper=wrapper,
|
||||||
name=name,
|
name=name,
|
||||||
base_temp_dir=test_dir,
|
base_temp_dir=test_dir,
|
||||||
sock_dir=sock_dir, qmp_timer=timer)
|
qmp_timer=timer)
|
||||||
self._num_drives = 0
|
self._num_drives = 0
|
||||||
|
|
||||||
def _post_shutdown(self) -> None:
|
def _post_shutdown(self) -> None:
|
||||||
|
|
|
@ -44,8 +44,7 @@ class TestCbwError(iotests.QMPTestCase):
|
||||||
|
|
||||||
opts = ['-nodefaults', '-display', 'none', '-machine', 'none']
|
opts = ['-nodefaults', '-display', 'none', '-machine', 'none']
|
||||||
self.vm = QEMUMachine(iotests.qemu_prog, opts,
|
self.vm = QEMUMachine(iotests.qemu_prog, opts,
|
||||||
base_temp_dir=iotests.test_dir,
|
base_temp_dir=iotests.test_dir)
|
||||||
sock_dir=iotests.sock_dir)
|
|
||||||
self.vm.launch()
|
self.vm.launch()
|
||||||
|
|
||||||
def do_cbw_error(self, on_cbw_error):
|
def do_cbw_error(self, on_cbw_error):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue