* [PATCH] mm/hotplug: only free wait_table if it's allocated by vmalloc @ 2013-03-22 9:54 Jianguo Wu 2013-03-22 10:02 ` Tang Chen 0 siblings, 1 reply; 5+ messages in thread From: Jianguo Wu @ 2013-03-22 9:54 UTC (permalink / raw) To: Andrew Morton; +Cc: Tang Chen, Wen Congyang, Liujiang, qiuxishi, linux-mm zone->wait_table may be allocated from bootmem, it can not be freed. Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Wen Congyang <wency@cn.fujitsu.com> Cc: Tang Chen <tangchen@cn.fujitsu.com> Cc: Jiang Liu <jiang.liu@huawei.com> Cc: linux-mm@kvack.org Signed-off-by: Jianguo Wu <wujianguo@huawei.com> --- mm/memory_hotplug.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c index 07b6263..91ed7cd 100644 --- a/mm/memory_hotplug.c +++ b/mm/memory_hotplug.c @@ -1779,7 +1779,11 @@ void try_offline_node(int nid) for (i = 0; i < MAX_NR_ZONES; i++) { struct zone *zone = pgdat->node_zones + i; - if (zone->wait_table) + /* + * wait_table may be allocated from boot memory, + * here only free if it's allocated by vmalloc. + */ + if (is_vmalloc_addr(zone->wait_table)) vfree(zone->wait_table); } -- 1.7.6.1 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] mm/hotplug: only free wait_table if it's allocated by vmalloc 2013-03-22 9:54 [PATCH] mm/hotplug: only free wait_table if it's allocated by vmalloc Jianguo Wu @ 2013-03-22 10:02 ` Tang Chen 2013-03-25 1:15 ` Jiang Liu 2013-03-25 1:26 ` Jianguo Wu 0 siblings, 2 replies; 5+ messages in thread From: Tang Chen @ 2013-03-22 10:02 UTC (permalink / raw) To: Jianguo Wu Cc: Andrew Morton, Wen Congyang, Liujiang, qiuxishi, linux-mm, Tang Chen On 03/22/2013 05:54 PM, Jianguo Wu wrote: > zone->wait_table may be allocated from bootmem, it can not be freed. > > Cc: Andrew Morton<akpm@linux-foundation.org> > Cc: Wen Congyang<wency@cn.fujitsu.com> > Cc: Tang Chen<tangchen@cn.fujitsu.com> > Cc: Jiang Liu<jiang.liu@huawei.com> > Cc: linux-mm@kvack.org > Signed-off-by: Jianguo Wu<wujianguo@huawei.com> > --- > mm/memory_hotplug.c | 6 +++++- > 1 files changed, 5 insertions(+), 1 deletions(-) > > diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c > index 07b6263..91ed7cd 100644 > --- a/mm/memory_hotplug.c > +++ b/mm/memory_hotplug.c > @@ -1779,7 +1779,11 @@ void try_offline_node(int nid) > for (i = 0; i< MAX_NR_ZONES; i++) { > struct zone *zone = pgdat->node_zones + i; > > - if (zone->wait_table) > + /* > + * wait_table may be allocated from boot memory, > + * here only free if it's allocated by vmalloc. > + */ > + if (is_vmalloc_addr(zone->wait_table)) > vfree(zone->wait_table); Reviewed-by: Tang Chen <tangchen@cn.fujitsu.com> FYI, I'm trying add a flag member into memblock to mark memory whose life cycle is the same as a node. I think maybe this flag could be used to free this kind of memory from bootmem. Thanks. :) > } > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] mm/hotplug: only free wait_table if it's allocated by vmalloc 2013-03-22 10:02 ` Tang Chen @ 2013-03-25 1:15 ` Jiang Liu 2013-03-25 3:20 ` Tang Chen 2013-03-25 1:26 ` Jianguo Wu 1 sibling, 1 reply; 5+ messages in thread From: Jiang Liu @ 2013-03-25 1:15 UTC (permalink / raw) To: Tang Chen; +Cc: Jianguo Wu, Andrew Morton, Wen Congyang, qiuxishi, linux-mm I have done a work to associate a tag with each memblock, may be that could be reused. On 2013-3-22 18:02, Tang Chen wrote: > On 03/22/2013 05:54 PM, Jianguo Wu wrote: >> zone->wait_table may be allocated from bootmem, it can not be freed. >> >> Cc: Andrew Morton<akpm@linux-foundation.org> >> Cc: Wen Congyang<wency@cn.fujitsu.com> >> Cc: Tang Chen<tangchen@cn.fujitsu.com> >> Cc: Jiang Liu<jiang.liu@huawei.com> >> Cc: linux-mm@kvack.org >> Signed-off-by: Jianguo Wu<wujianguo@huawei.com> >> --- >> mm/memory_hotplug.c | 6 +++++- >> 1 files changed, 5 insertions(+), 1 deletions(-) >> >> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c >> index 07b6263..91ed7cd 100644 >> --- a/mm/memory_hotplug.c >> +++ b/mm/memory_hotplug.c >> @@ -1779,7 +1779,11 @@ void try_offline_node(int nid) >> for (i = 0; i< MAX_NR_ZONES; i++) { >> struct zone *zone = pgdat->node_zones + i; >> >> - if (zone->wait_table) >> + /* >> + * wait_table may be allocated from boot memory, >> + * here only free if it's allocated by vmalloc. >> + */ >> + if (is_vmalloc_addr(zone->wait_table)) >> vfree(zone->wait_table); > > Reviewed-by: Tang Chen <tangchen@cn.fujitsu.com> > > FYI, I'm trying add a flag member into memblock to mark memory whose > life cycle is the same as a node. I think maybe this flag could be used > to free this kind of memory from bootmem. > > Thanks. :) > > >> } >> > > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] mm/hotplug: only free wait_table if it's allocated by vmalloc 2013-03-25 1:15 ` Jiang Liu @ 2013-03-25 3:20 ` Tang Chen 0 siblings, 0 replies; 5+ messages in thread From: Tang Chen @ 2013-03-25 3:20 UTC (permalink / raw) To: Jiang Liu; +Cc: Jianguo Wu, Andrew Morton, Wen Congyang, qiuxishi, linux-mm On 03/25/2013 09:15 AM, Jiang Liu wrote: > I have done a work to associate a tag with each memblock, > may be that could be reused. Hi Liu, Yes, the CONFIG_HAVE_MEMBLOCK_TAG patch, I saw that before. :) And it may have the following difference, 1) It is a flag, not a tag, which means a range may have several different attributes. 2) Mark node-lify-cycle data, and put it on local node, and free it when hot-removing. 3) Mark and reserve movable memory, as you did. :) I'll try to find as much code that can be reused as I can. :) Thanks for reminding me this. :) Thanks. :) > > On 2013-3-22 18:02, Tang Chen wrote: >> On 03/22/2013 05:54 PM, Jianguo Wu wrote: >>> zone->wait_table may be allocated from bootmem, it can not be freed. >>> >>> Cc: Andrew Morton<akpm@linux-foundation.org> >>> Cc: Wen Congyang<wency@cn.fujitsu.com> >>> Cc: Tang Chen<tangchen@cn.fujitsu.com> >>> Cc: Jiang Liu<jiang.liu@huawei.com> >>> Cc: linux-mm@kvack.org >>> Signed-off-by: Jianguo Wu<wujianguo@huawei.com> >>> --- >>> mm/memory_hotplug.c | 6 +++++- >>> 1 files changed, 5 insertions(+), 1 deletions(-) >>> >>> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c >>> index 07b6263..91ed7cd 100644 >>> --- a/mm/memory_hotplug.c >>> +++ b/mm/memory_hotplug.c >>> @@ -1779,7 +1779,11 @@ void try_offline_node(int nid) >>> for (i = 0; i< MAX_NR_ZONES; i++) { >>> struct zone *zone = pgdat->node_zones + i; >>> >>> - if (zone->wait_table) >>> + /* >>> + * wait_table may be allocated from boot memory, >>> + * here only free if it's allocated by vmalloc. >>> + */ >>> + if (is_vmalloc_addr(zone->wait_table)) >>> vfree(zone->wait_table); >> >> Reviewed-by: Tang Chen<tangchen@cn.fujitsu.com> >> >> FYI, I'm trying add a flag member into memblock to mark memory whose >> life cycle is the same as a node. I think maybe this flag could be used >> to free this kind of memory from bootmem. >> >> Thanks. :) >> >> >>> } >>> >> >> > > > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] mm/hotplug: only free wait_table if it's allocated by vmalloc 2013-03-22 10:02 ` Tang Chen 2013-03-25 1:15 ` Jiang Liu @ 2013-03-25 1:26 ` Jianguo Wu 1 sibling, 0 replies; 5+ messages in thread From: Jianguo Wu @ 2013-03-25 1:26 UTC (permalink / raw) To: Tang Chen; +Cc: Andrew Morton, Wen Congyang, Liujiang, qiuxishi, linux-mm On 2013/3/22 18:02, Tang Chen wrote: > On 03/22/2013 05:54 PM, Jianguo Wu wrote: >> zone->wait_table may be allocated from bootmem, it can not be freed. >> >> Cc: Andrew Morton<akpm@linux-foundation.org> >> Cc: Wen Congyang<wency@cn.fujitsu.com> >> Cc: Tang Chen<tangchen@cn.fujitsu.com> >> Cc: Jiang Liu<jiang.liu@huawei.com> >> Cc: linux-mm@kvack.org >> Signed-off-by: Jianguo Wu<wujianguo@huawei.com> >> --- >> mm/memory_hotplug.c | 6 +++++- >> 1 files changed, 5 insertions(+), 1 deletions(-) >> >> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c >> index 07b6263..91ed7cd 100644 >> --- a/mm/memory_hotplug.c >> +++ b/mm/memory_hotplug.c >> @@ -1779,7 +1779,11 @@ void try_offline_node(int nid) >> for (i = 0; i< MAX_NR_ZONES; i++) { >> struct zone *zone = pgdat->node_zones + i; >> >> - if (zone->wait_table) >> + /* >> + * wait_table may be allocated from boot memory, >> + * here only free if it's allocated by vmalloc. >> + */ >> + if (is_vmalloc_addr(zone->wait_table)) >> vfree(zone->wait_table); > > Reviewed-by: Tang Chen <tangchen@cn.fujitsu.com> > > FYI, I'm trying add a flag member into memblock to mark memory whose > life cycle is the same as a node. I think maybe this flag could be used > to free this kind of memory from bootmem. And only the bootmem is aligned to PAGE_SIZE, I think. > > Thanks. :) > > >> } >> > > -- > To unsubscribe, send a message with 'unsubscribe linux-mm' in > the body to majordomo@kvack.org. For more info on Linux MM, > see: http://www.linux-mm.org/ . > Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> > > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-03-25 3:17 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-03-22 9:54 [PATCH] mm/hotplug: only free wait_table if it's allocated by vmalloc Jianguo Wu 2013-03-22 10:02 ` Tang Chen 2013-03-25 1:15 ` Jiang Liu 2013-03-25 3:20 ` Tang Chen 2013-03-25 1:26 ` Jianguo Wu
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).