qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 1/1] numa: check mem or memdev in numa configuration


From: Li Zhang
Subject: Re: [PATCH 1/1] numa: check mem or memdev in numa configuration
Date: Thu, 17 Feb 2022 12:06:23 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0

On 2/17/22 11:25 AM, Igor Mammedov wrote:
On Thu, 17 Feb 2022 10:38:32 +0100
Li Zhang <lizhang@suse.de> wrote:

On 2/17/22 10:10 AM, Igor Mammedov wrote:
On Wed, 16 Feb 2022 17:36:13 +0100
Li Zhang <lizhang@suse.de> wrote:
If there is no mem or memdev in numa configuration, it always
reports the error as the following:

total memory for NUMA nodes (0x0) should equal RAM size (0x100000000)

This error is confusing and the reason is that total memory of numa nodes
is always 0 if there is no mem or memdev in numa configuration.
So it's better to check mem or memdev in numa configuration.

Signed-off-by: Li Zhang <lizhang@suse.de>
---
   hw/core/numa.c | 5 +++++
   1 file changed, 5 insertions(+)

diff --git a/hw/core/numa.c b/hw/core/numa.c
index 1aa05dcf42..11cbec51eb 100644
--- a/hw/core/numa.c
+++ b/hw/core/numa.c
@@ -132,6 +132,11 @@ static void parse_numa_node(MachineState *ms, 
NumaNodeOptions *node,
have_memdevs = have_memdevs ? : node->has_memdev;
       have_mem = have_mem ? : node->has_mem;
+    if (!node->has_memdev && !node->has_mem) {
+        error_setg(errp, "numa configuration should use mem= or memdev= ");
+        return;
+    }

Wouldn't this breaks memory less numa nodes?

Yes, you are right. It will break it if there more numa nodes
than memory, and the numa nodes have no memory backends specified.

Is it allowed for users to specify more numa nodes than memory?
yep, I think we support it at least for one of the targets
(but I don't remember which one(s))


Ah, I see. Thanks.



I'd rather add/rephrase to original error message that memory
should be specified explicitly for desired numa nodes.
And I'd not mention 'mem=' since
    docs/about/removed-features.rst:``-numa node,mem=...`` (removed in 5.1)

Thanks for your suggestions, I will rephrase it.

+
       if ((node->has_mem && have_memdevs) || (node->has_memdev && have_mem)) {
           error_setg(errp, "numa configuration should use either mem= or 
memdev=,"
                      "mixing both is not allowed");







reply via email to

[Prev in Thread] Current Thread [Next in Thread]