On Tue, 2009-09-01 at 19:57 +0530, Balbir Singh wrote:

> > 
> > Heres the updated patch:
> > 
> > Signed-off-by: Ankita Garg <ank...@in.ibm.com> 

The thread is too messy. Please Ankita can you re-submit in proper
form (ie. subject, cset, signed-off & patch) please ?

In general, don't mix reply to comments and new patch submission,
or patchwork gets really confuse. Post a new name, with something
like [PATCH v2] <name of the patch> in the subject.

Thanks.

Cheers,
Ben.

> > Index: linux-2.6.31-rc5/arch/powerpc/mm/numa.c
> > ===================================================================
> > --- linux-2.6.31-rc5.orig/arch/powerpc/mm/numa.c
> > +++ linux-2.6.31-rc5/arch/powerpc/mm/numa.c
> > @@ -26,6 +26,13 @@
> >  #include <asm/smp.h>
> > 
> >  static int numa_enabled = 1;
> > +static int fake_enabled = 1;
> > +
> > +/*
> > + * The array maps a real numa node to the first fake node that gets
> > + * created on it
> > + */
> > +int fake_numa_node_mapping[MAX_NUMNODES];
> > 
> >  static char *cmdline __initdata;
> > 
> > @@ -49,14 +56,29 @@ static int __cpuinit fake_numa_create_ne
> >     unsigned long long mem;
> >     char *p = cmdline;
> >     static unsigned int fake_nid;
> > +   static unsigned int prev_nid = 0;
> >     static unsigned long long curr_boundary;
> > 
> >     /*
> >      * Modify node id, iff we started creating NUMA nodes
> >      * We want to continue from where we left of the last time
> >      */
> > -   if (fake_nid)
> > +   if (fake_nid) {
> > +           /*
> > +            * Moved over to the next real numa node, increment fake
> > +            * node number and store the mapping of the real node to
> > +            * the fake node
> > +            */
> > +           if (prev_nid != *nid) {
> > +                   fake_nid++;
> > +                   fake_numa_node_mapping[*nid] = fake_nid;
> > +                   prev_nid = *nid;
> > +                   *nid = fake_nid;
> > +                   return 0;
> > +           }
> >             *nid = fake_nid;
> > +   }
> > +
> >     /*
> >      * In case there are no more arguments to parse, the
> >      * node_id should be the same as the last fake node id
> > @@ -440,7 +462,7 @@ static int of_drconf_to_nid_single(struc
> >   */
> >  static int __cpuinit numa_setup_cpu(unsigned long lcpu)
> >  {
> > -   int nid = 0;
> > +   int nid = 0, new_nid;
> >     struct device_node *cpu = of_get_cpu_node(lcpu, NULL);
> > 
> >     if (!cpu) {
> > @@ -450,8 +472,15 @@ static int __cpuinit numa_setup_cpu(unsi
> > 
> >     nid = of_node_to_nid_single(cpu);
> > 
> > +   if (fake_enabled && nid) {
> > +           new_nid = fake_numa_node_mapping[nid];
> > +           if (new_nid > 0)
> > +                   nid = new_nid;
> > +   }
> > +
> >     if (nid < 0 || !node_online(nid))
> >             nid = any_online_node(NODE_MASK_ALL);
> > +
> >  out:
> >     map_cpu_to_node(lcpu, nid);
> > 
> > @@ -1005,8 +1034,12 @@ static int __init early_numa(char *p)
> >             numa_debug = 1;
> > 
> >     p = strstr(p, "fake=");
> > -   if (p)
> > +   if (p) {
> >             cmdline = p + strlen("fake=");
> > +           if (numa_enabled) {
> > +                   fake_enabled = 1;
> > +           }
> > +   }
> > 
> >     return 0;
> >  }
> >
> 
> 
> Looks good to me
> 
> 
> Reviewed-by: Balbir Singh <bal...@linux.vnet.ibm.com>
>  
> 
> 

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to