Messages in this thread | | | Date | Wed, 06 Feb 2013 10:20:57 +0800 | From | Tang Chen <> | Subject | Re: [PATCH 3/3] acpi, memory-hotplug: Support getting hotplug info from SRAT. |
| |
On 02/05/2013 07:26 AM, Andrew Morton wrote: > On Fri, 25 Jan 2013 17:42:09 +0800 > Tang Chen<tangchen@cn.fujitsu.com> wrote: > >> We now provide an option for users who don't want to specify physical >> memory address in kernel commandline. >> >> /* >> * For movablemem_map=acpi: >> * >> * SRAT: |_____| |_____| |_________| |_________| ...... >> * node id: 0 1 1 2 >> * hotpluggable: n y y n >> * movablemem_map: |_____| |_________| >> * >> * Using movablemem_map, we can prevent memblock from allocating memory >> * on ZONE_MOVABLE at boot time. >> */ >> >> So user just specify movablemem_map=acpi, and the kernel will use hotpluggable >> info in SRAT to determine which memory ranges should be set as ZONE_MOVABLE. >> >> ... >> >> + if (!strncmp(p, "acpi", max(4, strlen(p)))) >> + movablemem_map.acpi = true; > > Generates a warning: > > mm/page_alloc.c: In function 'cmdline_parse_movablemem_map': > mm/page_alloc.c:5312: warning: comparison of distinct pointer types lacks a cast > > due to max(int, size_t). > > This is easily fixed, but the code looks rather pointless. If the > incoming string is supposed to be exactly "acpi" then use strcmp(). If > the incoming string must start with "acpi" then use strncmp(p, "acpi", 4). > > IOW, the max is unneeded?
Hi Andrew,
I think I made another mistake here. I meant to use min(4, strlen(p)) in case p is something like 'aaa' whose length is less then 4. But I mistook it with max().
But after I dig into strcmp() in the kernel, I think it is OK to use strcmp(). min() or max() is not needed.
Thanks. :)
> > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ >
| |