On Mon, Sep 15, 2014 at 01:36:13PM +0800, Wang, Yalin wrote: > Hi Kim, > > I think move memblock_free into init_cma_reserved_pageblock > Is not a good idea, > Because this will need call memblock_free for > Every page release, > Think that for a 4MB memory, need call memblock_free > 1024 times , instead, we just call memblock_free one > Time for every pageblock_nr_pages pages . Why? diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 1953a243836b..876b789378af 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -848,6 +848,9 @@ void __init init_cma_reserved_pageblock(struct page *page) } adjust_managed_page_count(page, pageblock_nr_pages); + memblock_free(page_to_phys(page), + pageblock_nr_pages * PAGE_SIZE); + } #endif > > I will add some descriptions in cma_declare_contiguous > For patch version 2 . > > Thanks > > -----Original Message----- > Hello, > > On Tue, Sep 09, 2014 at 02:13:58PM +0800, Wang, Yalin wrote: > > This patch add memblock_free to also free the reserved memblock, so > > that the cma pages are not marked as reserved memory in > > /sys/kernel/debug/memblock/reserved debug file > > > > Signed-off-by: Yalin Wang <yalin.wang@xxxxxxxxxxxxxx> > > --- > > mm/cma.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/mm/cma.c b/mm/cma.c > > index c17751c..f3ec756 100644 > > --- a/mm/cma.c > > +++ b/mm/cma.c > > @@ -114,6 +114,8 @@ static int __init cma_activate_area(struct cma *cma) > > goto err; > > } > > init_cma_reserved_pageblock(pfn_to_page(base_pfn)); > > + memblock_free(__pfn_to_phys(base_pfn), > > + pageblock_nr_pages * PAGE_SIZE); > > Nitpick: > > Couldn't we add memblock_free into init_cma_reserved_pageblock? > Because it should be pair with ClearPageReserved, I think. > > In addition, please add description on memory reserve part in cma_declare_contiguous. > > > } while (--i); > > > > mutex_init(&cma->lock); > > -- > > 2.1.0 > > > > -- > > To unsubscribe, send a message with 'unsubscribe linux-mm' in the body > > to majordomo@xxxxxxxxx. For more info on Linux MM, > > see: http://www.linux-mm.org/ . > > Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a> > > -- > Kind regards, > Minchan Kim -- Kind regards, Minchan Kim -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>