summaryrefslogtreecommitdiffstats
path: root/tests/unit
diff options
context:
space:
mode:
authorPhilippe Mathieu-Daudé2021-11-11 10:17:16 +0100
committerPhilippe Mathieu-Daudé2021-11-15 21:49:16 +0100
commit2523a7956519cc13c92b9214d188cd2489d4df2e (patch)
tree6af39ed1e8e1b59693b5ed585eedd7009787216a /tests/unit
parentMerge tag 'pull-ppc-20211112' of https://github.com/legoater/qemu into staging (diff)
downloadqemu-2523a7956519cc13c92b9214d188cd2489d4df2e.tar.gz
qemu-2523a7956519cc13c92b9214d188cd2489d4df2e.tar.xz
qemu-2523a7956519cc13c92b9214d188cd2489d4df2e.zip
tests/unit/test-smp-parse: Restore MachineClass fields after modifying
There is a single MachineClass object, registered with type_register_static(&smp_machine_info). Since the same object is used multiple times (an MachineState object is instantiated in both test_generic and test_with_dies), we should restore its internal state after modifying for the test purpose. Reviewed-by: Andrew Jones <drjones@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Yanan Wang <wangyanan55@huawei.com> Tested-by: Yanan Wang <wangyanan55@huawei.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20211115145900.2531865-2-philmd@redhat.com>
Diffstat (limited to 'tests/unit')
-rw-r--r--tests/unit/test-smp-parse.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/tests/unit/test-smp-parse.c b/tests/unit/test-smp-parse.c
index cbe0c99049..47774c1ee2 100644
--- a/tests/unit/test-smp-parse.c
+++ b/tests/unit/test-smp-parse.c
@@ -512,7 +512,7 @@ static void test_generic(void)
smp_parse_test(ms, data, true);
}
- /* Reset the supported min CPUs and max CPUs */
+ /* Force invalid min CPUs and max CPUs */
mc->min_cpus = 2;
mc->max_cpus = 511;
@@ -523,6 +523,10 @@ static void test_generic(void)
smp_parse_test(ms, data, false);
}
+ /* Reset the supported min CPUs and max CPUs */
+ mc->min_cpus = MIN_CPUS;
+ mc->max_cpus = MAX_CPUS;
+
object_unref(obj);
}
@@ -536,6 +540,7 @@ static void test_with_dies(void)
int i;
smp_machine_class_init(mc);
+ /* Force the SMP compat properties */
mc->smp_props.dies_supported = true;
for (i = 0; i < ARRAY_SIZE(data_generic_valid); i++) {
@@ -575,6 +580,9 @@ static void test_with_dies(void)
smp_parse_test(ms, data, false);
}
+ /* Restore the SMP compat properties */
+ mc->smp_props.dies_supported = false;
+
object_unref(obj);
}