Olof Johansson wrote:
> Hi,
> 
> On Sat, Dec 08, 2007 at 02:44:25AM +0530, Balbir Singh wrote:
> 
>> Comments are as always welcome!
> 
> Care to explain what this is useful for? (Not saying it's a stupid idea,
> just wondering what the reason for doing it is).
> 

In my case, I use it to test parts of my memory controller patches on an
emulated NUMA machine. I plan to use it to test out page migration
across nodes.

>> diff -puN arch/powerpc/mm/numa.c~ppc-fake-numa-easy arch/powerpc/mm/numa.c
>> --- linux-2.6.24-rc4-mm1/arch/powerpc/mm/numa.c~ppc-fake-numa-easy   
>> 2007-12-07 21:25:55.000000000 +0530
>> +++ linux-2.6.24-rc4-mm1-balbir/arch/powerpc/mm/numa.c       2007-12-08 
>> 02:36:02.000000000 +0530
>> @@ -24,6 +24,8 @@
>>  
>>  static int numa_enabled = 1;
>>  
>> +char *cmdline __initdata;
>> +
> 
> Looks like this should be static.
> 

Yes, good catch!

>> @@ -702,6 +744,9 @@ static int __init early_numa(char *p)
>>      if (strstr(p, "debug"))
>>              numa_debug = 1;
>>  
>> +    if (strstr(p, "fake="))
>> +            cmdline = p + 5;        /* 5 is faster than strlen("fake=") */
> 
> This doesn't look right.
> 
> You check if it contains fake=, not if it starts with it. So if someone
> did: "numa=foo,fake=bar", or even "numa=debug,fake=", things wouldn't
> work right.
> 

Yes, you are right. I merely followed the strstr convention already
present, which as you righly point out is wrong. I suspect I need to do
something like

p = strstr(p, "fake=")
if (p)
        cmdline = p + 5;

This would still allow us to do things like

numa=foo,fake=bar but the memparse() utility would fail at fake=bar
                                                                ^^^

or even

numa=debug,fake=1G

I suspect that this should be good enough for a command line option.

> 
> -Olof


-- 
        Thanks,
        Balbir Singh
        Linux Technology Center
        IBM, ISTL
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to