lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 8 Aug 2012 11:18:22 +0100
From:	Mel Gorman <mgorman@...e.de>
To:	Minchan Kim <minchan@...nel.org>
Cc:	Linux-MM <linux-mm@...ck.org>, Rik van Riel <riel@...hat.com>,
	Jim Schutt <jaschut@...dia.gov>,
	LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 6/6] mm: have order > 0 compaction start near a pageblock
 with free pages

On Wed, Aug 08, 2012 at 01:36:00PM +0900, Minchan Kim wrote:
> > 
> > Second, it updates compact_cached_free_pfn in a more limited set of
> > circumstances.
> > 
> > If a scanner has wrapped, it updates compact_cached_free_pfn to the end
> > 	of the zone. Each time a wrapped scanner isoaltes a page, it
> > 	updates compact_cached_free_pfn. The intention is that after
> > 	wrapping, the compact_cached_free_pfn will be at the highest
> > 	pageblock with free pages when compaction completes.
> 
> Okay.
> 
> > 
> > If a scanner has not wrapped when compaction completes and
> 
> Compaction complete?
> Your code seem to do it in isolate_freepages.
> Isn't it compaction complete?
> 

s/compaction/free page isolation/

> > 	compact_cached_free_pfn is set the end of the the zone, initialise
> > 	it once.
> 

> I can't understad this part.
> Could you elaborate a bit more?
> 

Is this better?

If a scanner has wrapped, it updates compact_cached_free_pfn to the end
        of the zone. When a wrapped scanner isolates a page, it updates
        compact_cached_free_pfn to point to the highest pageblock it
        can isolate pages from. 

If a scanner has not wrapped when it has finished isolated pages it 
        checks if compact_cached_free_pfn is pointing to the end of the
        zone. If so, the value is updated to point to the highest 
        pageblock that pages were isolated from. This value will not
        be updated again until a free page scanner wraps and resets
        compact_cached_free_pfn.

This is not optimal and it can still race but the compact_cached_free_pfn
will be pointing to or very near a pageblock with free pages.

-- 
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ