Message ID | 1405914402-66212-8-git-send-email-wangnan0@huawei.com |
---|---|
State | New |
Headers | show |
Hi Andrew, Please drop patch 7/7 from -mm tree and keep other 6 patches. arch_add_memory() in tile is different from others: no nid parameter. Patch 7/7 will block compiling. I cc this mail to Chris Metcalf and hope he can look at this issue. Other 6 patches looks good. On 2014/7/21 11:46, Wang Nan wrote: > This patch introduces zone_for_memory() to arch_add_memory() on tile to > ensure new, higher memory added into ZONE_MOVABLE if movable zone has > already setup. > > This patch also fix a problem: on tile, new memory should be added into > ZONE_HIGHMEM by default, not MAX_NR_ZONES-1, which is ZONE_MOVABLE. > > Signed-off-by: Wang Nan <wangnan0@huawei.com> > Cc: Zhang Yanfei <zhangyanfei@cn.fujitsu.com> > Cc: Dave Hansen <dave.hansen@intel.com> > --- > arch/tile/mm/init.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/tile/mm/init.c b/arch/tile/mm/init.c > index bfb3127..22ac6c1 100644 > --- a/arch/tile/mm/init.c > +++ b/arch/tile/mm/init.c > @@ -872,7 +872,8 @@ void __init mem_init(void) > int arch_add_memory(u64 start, u64 size) > { > struct pglist_data *pgdata = &contig_page_data; > - struct zone *zone = pgdata->node_zones + MAX_NR_ZONES-1; > + struct zone *zone = pgdata->node_zones + > + zone_for_memory(nid, start, size, ZONE_HIGHMEM); > unsigned long start_pfn = start >> PAGE_SHIFT; > unsigned long nr_pages = size >> PAGE_SHIFT; > > -- 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/
On 7/21/2014 11:09 PM, Wang Nan wrote: > Hi Andrew, > > Please drop patch 7/7 from -mm tree and keep other 6 patches. > > arch_add_memory() in tile is different from others: no nid parameter. > Patch 7/7 will block compiling. > > I cc this mail to Chris Metcalf and hope he can look at this issue. > > Other 6 patches looks good. > > On 2014/7/21 11:46, Wang Nan wrote: >> This patch introduces zone_for_memory() to arch_add_memory() on tile to >> ensure new, higher memory added into ZONE_MOVABLE if movable zone has >> already setup. >> >> This patch also fix a problem: on tile, new memory should be added into >> ZONE_HIGHMEM by default, not MAX_NR_ZONES-1, which is ZONE_MOVABLE. >> >> Signed-off-by: Wang Nan <wangnan0@huawei.com> >> Cc: Zhang Yanfei <zhangyanfei@cn.fujitsu.com> >> Cc: Dave Hansen <dave.hansen@intel.com> >> --- >> arch/tile/mm/init.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/arch/tile/mm/init.c b/arch/tile/mm/init.c >> index bfb3127..22ac6c1 100644 >> --- a/arch/tile/mm/init.c >> +++ b/arch/tile/mm/init.c >> @@ -872,7 +872,8 @@ void __init mem_init(void) >> int arch_add_memory(u64 start, u64 size) >> { >> struct pglist_data *pgdata = &contig_page_data; >> - struct zone *zone = pgdata->node_zones + MAX_NR_ZONES-1; >> + struct zone *zone = pgdata->node_zones + >> + zone_for_memory(nid, start, size, ZONE_HIGHMEM); >> unsigned long start_pfn = start >> PAGE_SHIFT; >> unsigned long nr_pages = size >> PAGE_SHIFT; >> This code is entirely stale; it came from the initial port of Linux 2.6.15 to Tilera. Since we have always used DISCONTIGMEM unconditionally, which forces NEED_MULTIPLE_NODES to be true, this code never compiles. Note the completely irrelevant comment about x86 in this ifdef block, too :-) The cleanest thing to do is just remove those three functions in the ifdef block. I'll do that to our internal tree and plan to push the change upstream later.
diff --git a/arch/tile/mm/init.c b/arch/tile/mm/init.c index bfb3127..22ac6c1 100644 --- a/arch/tile/mm/init.c +++ b/arch/tile/mm/init.c @@ -872,7 +872,8 @@ void __init mem_init(void) int arch_add_memory(u64 start, u64 size) { struct pglist_data *pgdata = &contig_page_data; - struct zone *zone = pgdata->node_zones + MAX_NR_ZONES-1; + struct zone *zone = pgdata->node_zones + + zone_for_memory(nid, start, size, ZONE_HIGHMEM); unsigned long start_pfn = start >> PAGE_SHIFT; unsigned long nr_pages = size >> PAGE_SHIFT;
This patch introduces zone_for_memory() to arch_add_memory() on tile to ensure new, higher memory added into ZONE_MOVABLE if movable zone has already setup. This patch also fix a problem: on tile, new memory should be added into ZONE_HIGHMEM by default, not MAX_NR_ZONES-1, which is ZONE_MOVABLE. Signed-off-by: Wang Nan <wangnan0@huawei.com> Cc: Zhang Yanfei <zhangyanfei@cn.fujitsu.com> Cc: Dave Hansen <dave.hansen@intel.com> --- arch/tile/mm/init.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)