[PATCH] powerpc: Fix mem= cmdline handling on arch/powerpc for !MULTIPLATFORM

Kumar Gala galak at kernel.crashing.org
Tue Feb 28 03:12:44 EST 2006


On Feb 26, 2006, at 2:38 PM, Dave Hansen wrote:

> On Fri, 2006-02-24 at 10:54 -0600, Kumar Gala wrote:
>> +       if (strstr(cmd_line, "mem=")) {
>> +               char *p, *q;
>> +               unsigned long maxmem = 0;
>> +
>> +               for (q = cmd_line; (p = strstr(q, "mem=")) != 0; ) {
>> +                       q = p + 4;
>> +                       if (p > cmd_line && p[-1] != ' ')
>> +                               continue;
>> +                       maxmem = simple_strtoul(q, &q, 0);
>> +                       if (*q == 'k' || *q == 'K') {
>> +                               maxmem <<= 10;
>> +                               ++q;
>> +                       } else if (*q == 'm' || *q == 'M') {
>> +                               maxmem <<= 20;
>> +                               ++q;
>> +                       } else if (*q == 'g' || *q == 'G') {
>> +                               maxmem <<= 30;
>> +                               ++q;
>> +                       }
>> +               }
>> +               memory_limit = maxmem;
>> +       }
>
> You may want to check out lib/cmdline.c's memparse() function.  I  
> think
> it does this for you.

Yeah, found it after I sent the patch.  Since Linus applied this  
version, I'll provide Paul a version that changes this code to use  
memparse for post 2.6.16.

- kumar



More information about the Linuxppc-dev mailing list