Re: [PATCH] mm: cma: fix accounting of CMA pages placed in high memory

Minchan Kim
2013-02-04T23:44:01Z

Hello,

On Tue, Feb 05, 2013 at 08:29:26AM +0900, Kyungmin Park wrote:
> On Tue, Feb 5, 2013 at 8:06 AM, Andrew Morton <akpm@linux-foundation.org> wrote:
> > On Mon, 04 Feb 2013 11:27:05 +0100
> > Marek Szyprowski <m.szyprowski@samsung.com> wrote:
> >
> >> The total number of low memory pages is determined as
> >> totalram_pages - totalhigh_pages, so without this patch all CMA
> >> pageblocks placed in highmem were accounted to low memory.
> >
> > What are the end-user-visible effects of this bug?
>
> Even though CMA is located at highmem. LowTotal has more than lowmem
> address spaces.
>
> e.g.,
> lowmem : 0xc0000000 - 0xdf000000 ( 496 MB)
> LowTotal: 555788 kB
>
> >
> > (This information is needed so that others can make patch-scheduling
> > decisions and should be included in all bugfix changelogs unless it is
> > obvious).
>
> CMA Highmem support is new feature. so don't need to go stable tree.

I would like to clarify it because I remembered alloc_migrate_target have considered
CMA pages could be highmem. Is it really new feature? If so, could you point out
enabling patches for the new feature?

struct page *alloc_migrate_target(struct page *page, unsigned long private,
int **resultp)
{
gfp_t gfp_mask = GFP_USER | __GFP_MOVABLE;

if (PageHighMem(page))
gfp_mask |= __GFP_HIGHMEM;

return alloc_page(gfp_mask);
}

Thanks.

>
> Thank you,
> Kyungmin Park
> >
> > --
> > 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: email@kvack.org
>
> --
> 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: email@kvack.org

--
Kind regards,
Minchan Kim