qemu-arm
[Top][All Lists]
Advanced

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

Re: [Qemu-arm] [Qemu-devel] [PATCH v2 4/5] numa: fallback to default NUM


From: Eduardo Habkost
Subject: Re: [Qemu-arm] [Qemu-devel] [PATCH v2 4/5] numa: fallback to default NUMA node instead of node 0
Date: Fri, 26 May 2017 11:58:14 -0300
User-agent: Mutt/1.8.0 (2017-02-23)

On Tue, May 23, 2017 at 05:44:03PM +0200, Igor Mammedov wrote:
> On Tue, 23 May 2017 11:48:54 -0300
> Eduardo Habkost <address@hidden> wrote:
> 
> > On Tue, May 23, 2017 at 04:38:49PM +0200, Igor Mammedov wrote:
> > > Do the same as we did in commit
> > >   (57924bcd8 numa: introduce machine callback for VCPU to node mapping)
> > > but only for incomplete mapping usecase, falling back to board
> > > provided default cpu to node mapping if user hasn't provided
> > > mapping for CPU explicitly.
> > > 
> > > Signed-off-by: Igor Mammedov <address@hidden>
> > 
> > This breaks migration compatibility, doesn't it? I understand
> > this use case is not supported, but if are going to break stuff
> > for people using incomplete mappings (by rejecting the
> > configuration on a future release), I would prefer to break it
> > only once.
> it's firmware change and we generally don't care nor maintain firmware compat 
> stuff
> the same as with above mentioned 
>  (57924bcd8 numa: introduce machine callback for VCPU to node mapping)


We normally keep resulting NUMA topology compatible, even if NUMA
information is implemented only by firmware.  See how we set
MachineClass::numa_auto_assign_ram and
MachineClass::numa_mem_align_shift in older machine-types, for
example.

Sometimes we didn't keep compatibility, though (e.g. on commit
fb43b73b92 "pc: fix default VCPU to NUMA node mapping").

I wouldn't disagree with this change if we planned to support
incomplete mappings forever.  But if we are going to remove
support for incomplete mappings soon, I would prefer to break
user expectations only once.

> 
> > 
> > > ---
> > >  hw/core/machine.c | 3 ---
> > >  1 file changed, 3 deletions(-)
> > > 
> > > diff --git a/hw/core/machine.c b/hw/core/machine.c
> > > index 964b75d..b8df15f 100644
> > > --- a/hw/core/machine.c
> > > +++ b/hw/core/machine.c
> > > @@ -730,9 +730,6 @@ static void machine_numa_finish_init(MachineState 
> > > *machine)
> > >                  g_string_append_printf(s, "%sCPU %d [%s]",
> > >                                         s->len ? ", " : "", i, cpu_str);
> > >                  g_free(cpu_str);
> > > -
> > > -                /* non mapped cpus used to fallback to node 0 */
> > > -                props.node_id = 0;
> > >              }
> > >  
> > >              props.has_node_id = true;
> > > -- 
> > > 2.7.4
> > > 
> > 
> 
> 

-- 
Eduardo



reply via email to

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