From 8979c945c1a7ffd20edbd5da2513c04baccfd7de Mon Sep 17 00:00:00 2001 From: Eduardo Habkost Date: Mon, 9 Feb 2015 17:28:52 -0200 Subject: [PATCH] numa: Reject CPU indexes > max_cpus CPU index is always less than max_cpus, as documented at sysemu.h: > The following shall be true for all CPUs: > cpu->cpu_index < max_cpus <= MAX_CPUMASK_BITS Reject configuration which uses invalid CPU indexes. Reviewed-by: Igor Mammedov Signed-off-by: Eduardo Habkost --- numa.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/numa.c b/numa.c index 13b2f01dba..6b4ab0eae4 100644 --- a/numa.c +++ b/numa.c @@ -76,9 +76,11 @@ static void numa_node_parse(NumaNodeOptions *node, QemuOpts *opts, Error **errp) } for (cpus = node->cpus; cpus; cpus = cpus->next) { - if (cpus->value >= MAX_CPUMASK_BITS) { - error_setg(errp, "CPU number %" PRIu16 " is bigger than %d", - cpus->value, MAX_CPUMASK_BITS - 1); + if (cpus->value >= max_cpus) { + error_setg(errp, + "CPU index (%" PRIu16 ")" + " should be smaller than maxcpus (%d)", + cpus->value, max_cpus); return; } bitmap_set(numa_info[nodenr].node_cpu, cpus->value, 1); -- 2.11.4.GIT