[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 10/10] Acceptance Tests: introduce CPU hotplug test
From: |
Auger Eric |
Subject: |
Re: [PATCH v2 10/10] Acceptance Tests: introduce CPU hotplug test |
Date: |
Wed, 24 Mar 2021 10:29:57 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 |
Hi Cleber,
On 3/23/21 11:15 PM, Cleber Rosa wrote:
> Even though there are qtest based tests for hotplugging CPUs (from
> which this test took some inspiration from), this one adds checks
> from a Linux guest point of view.
>
> It should also serve as an example for tests that follow a similar
> pattern and need to interact with QEMU (via qmp) and with the Linux
> guest via SSH.
>
> Signed-off-by: Cleber Rosa <crosa@redhat.com>
> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> Reviewed-by: Willian Rampazzo <willianr@redhat.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Eric
> ---
> tests/acceptance/hotplug_cpu.py | 37 +++++++++++++++++++++++++++++++++
> 1 file changed, 37 insertions(+)
> create mode 100644 tests/acceptance/hotplug_cpu.py
>
> diff --git a/tests/acceptance/hotplug_cpu.py b/tests/acceptance/hotplug_cpu.py
> new file mode 100644
> index 0000000000..6374bf1b54
> --- /dev/null
> +++ b/tests/acceptance/hotplug_cpu.py
> @@ -0,0 +1,37 @@
> +# Functional test that hotplugs a CPU and checks it on a Linux guest
> +#
> +# Copyright (c) 2021 Red Hat, Inc.
> +#
> +# Author:
> +# Cleber Rosa <crosa@redhat.com>
> +#
> +# This work is licensed under the terms of the GNU GPL, version 2 or
> +# later. See the COPYING file in the top-level directory.
> +
> +from avocado_qemu import LinuxTest
> +
> +
> +class HotPlugCPU(LinuxTest):
> +
> + def test(self):
> + """
> + :avocado: tags=arch:x86_64
> + :avocado: tags=machine:q35
> + :avocado: tags=accel:kvm
> + """
> + self.require_accelerator('kvm')
> + self.vm.add_args('-accel', 'kvm')
> + self.vm.add_args('-cpu', 'Haswell')
> + self.vm.add_args('-smp', '1,sockets=1,cores=2,threads=1,maxcpus=2')
> + self.launch_and_wait()
> +
> + self.ssh_command('test -e /sys/devices/system/cpu/cpu0')
> + with self.assertRaises(AssertionError):
> + self.ssh_command('test -e /sys/devices/system/cpu/cpu1')
> +
> + self.vm.command('device_add',
> + driver='Haswell-x86_64-cpu',
> + socket_id=0,
> + core_id=1,
> + thread_id=0)
> + self.ssh_command('test -e /sys/devices/system/cpu/cpu1')
>
- Re: [PATCH v2 06/10] Acceptance Tests: make username/password configurable, (continued)