From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56999) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YT8Rs-0004CJ-FY for qemu-devel@nongnu.org; Wed, 04 Mar 2015 07:30:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YT8Rp-00060v-Ls for qemu-devel@nongnu.org; Wed, 04 Mar 2015 07:30:48 -0500 Received: from mx1.redhat.com ([209.132.183.28]:57926) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YT8Ro-00060j-VG for qemu-devel@nongnu.org; Wed, 04 Mar 2015 07:30:45 -0500 Date: Wed, 4 Mar 2015 13:30:35 +0100 From: "Michael S. Tsirkin" Message-ID: <20150304123035.GA28721@redhat.com> References: <1424804243-23786-1-git-send-email-ehabkost@redhat.com> <1424804243-23786-2-git-send-email-ehabkost@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1424804243-23786-2-git-send-email-ehabkost@redhat.com> Subject: Re: [Qemu-devel] [PATCH v4 1/1] numa: Print warning if no node is assigned to a CPU List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost Cc: Paolo Bonzini , Igor Mammedov , qemu-devel@nongnu.org, Hu Tao On Tue, Feb 24, 2015 at 03:57:23PM -0300, Eduardo Habkost wrote: > Instead of silently assigning CPU to node 0 when it is omitted from the > command-line, check if all CPUs up to max_cpus are present in the NUMA > configuration. Could you please describe the problematic configuration in more detail in commit log? Also, how does this interact with cpu hotplug? > > I am making this a warning and not a fatal error, to allow management > software to be updated if necessary. > > Signed-off-by: Eduardo Habkost > --- > v1 -> v2: (no changes) > > v2 -> v3: > * Use enumerate_cpus() and error_report() for error message > * Simplify logic using bitmap_full() > > v3 -> v4: > * Clarify error message, mention that all CPUs up to > maxcpus need to be described in NUMA config > --- > numa.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/numa.c b/numa.c > index 9a3fc15..d8021b9 100644 > --- a/numa.c > +++ b/numa.c > @@ -201,6 +201,16 @@ static void validate_numa_cpus(void) > bitmap_or(seen_cpus, seen_cpus, > numa_info[i].node_cpu, MAX_CPUMASK_BITS); > } > + > + if (!bitmap_full(seen_cpus, max_cpus)) { > + char *msg; > + bitmap_complement(seen_cpus, seen_cpus, max_cpus); > + msg = enumerate_cpus(seen_cpus, max_cpus); > + error_report("warning: CPU(s) not present in any NUMA nodes: %s", msg); > + error_report("warning: All CPU(s) up to maxcpus should be described " > + "in NUMA config"); What happens with e.g. windows guests when this warning is emitted? do they blue-screen? > + g_free(msg); > + } > } > > void parse_numa_opts(void) > -- > 2.1.0