[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150326102803.GL4701@suse.de>
Date: Thu, 26 Mar 2015 10:28:03 +0000
From: Mel Gorman <mgorman@...e.de>
To: Gioh Kim <gioh.kim@....com>
Cc: akpm@...ux-foundation.org, riel@...hat.com, hannes@...xchg.org,
rientjes@...gle.com, vdavydov@...allels.com,
iamjoonsoo.kim@....com, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, gunho.lee@....com
Subject: Re: [RFCv2] mm: page allocation for less fragmentation
On Thu, Mar 26, 2015 at 06:16:22AM +0900, Gioh Kim wrote:
>
>
> 2015-03-25 ?????? 7:56??? Mel Gorman ???(???) ??? ???:
> >On Wed, Mar 25, 2015 at 11:39:15AM +0900, Gioh Kim wrote:
> >>My driver allocates more than 40MB pages via alloc_page() at a time and
> >>maps them at virtual address. Totally it uses 300~400MB pages.
> >>
> >>If I run a heavy load test for a few days in 1GB memory system, I cannot allocate even order=3 pages
> >>because-of the external fragmentation.
> >>
> >>I thought I needed a anti-fragmentation solution for my driver.
> >>But there is no allocation function that considers fragmentation.
> >>The compaction is not helpful because it is only for movable pages, not unmovable pages.
> >>
> >>This patch proposes a allocation function allocates only pages in the same pageblock.
> >>
> >
> >Is this not what CMA is for? Or creating a MOVABLE zone?
>
> It's not related to CMA and MOVABLE zone.
> It's for compaction and anti-fragmentation for any zone.
>
Create a CMA area, allow your driver to use it use alloc_contig_range.
As it is, this is creating another contiguous range allocation function
with no in-kernel users.
--
Mel Gorman
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists