Message-Id: <20080304000452.514878384@sgi.com> User-Agent: quilt/0.46-1 Date: Mon, 03 Mar 2008 16:04:52 -0800 From: Christoph Lameter To: Andrew Morton Cc: linux-kernel@vger.kernel.org Cc: Mel Gorman Cc: apw@shadowen.org Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Rik van Riel Cc: linux-mm@kvack.org Subject: [Patch] Page flags: Cleanup, Reorg and introduce 5 new flags Subject-Prefix: [rfc @num@/@total@] A set of patches that attempts to improve page flag handling. First of all a method is introduced to generate the page flag functions using macros. Then the number of page flags used by sparsemem is reduced. All page flag operations will no longer be macros. All flags will use inline function. Then we add a way to export enum constants to the preprocessor which allows us to get rid of __ZONE_COUNT and use the NR_PAGEFLAGS for the dynamic calculation of actually available page flags for fields. Optimization of sparsemem vmemmap allows us to avoid the use of page flags for section ids. The newly available flags are taken for various ongoing VM projects. RFC->V1 - Fix various things as suggested by Mel and Kame-san. - Avoid the #idef CONFIG_PAGEFLAG_EXTENDED. The new page flags are always available. --