On Fri, Feb 09, 2018 at 01:51:32PM +0300, Kirill A. Shutemov wrote: > On Wed, Feb 07, 2018 at 01:30:47PM -0800, Matthew Wilcox wrote: > > From: Matthew Wilcox <mawilcox@xxxxxxxxxxxxx> > > > > We're already using a union of many fields here, so stop abusing the > > _map_count and make page_type its own field. That implies renaming some > > of the machinery that creates PageBuddy, PageBalloon and PageKmemcg; > > bring back the PG_buddy, PG_balloon and PG_kmemcg names. > > Sounds reasonable to me. > > > Also, the special values don't need to be (and probably shouldn't be) powers > > of two, so renumber them to just start at -128. > > Are you sure about this? Is it guarantee that we would not need in the > future PG_buddy|PG_kmemcg for instance? > > I guess we may want to make it a bitfield. In negative space it's kinda > interesting. :) Far too interesting ;-) We still wouldn't want it to be powers of two ... We'd want to do something like: #define PAGE_TYPE_BASE 0xfffff000 #define PG_buddy 0x00000080 #define PG_balloon 0x00000100 #define PG_kmemcg 0x00000200 #define PG_pte 0x00000400 ... etc ... I think that's a worthwhile improvement, particularly since I think PG_kmemcg might want to be a completely independent flag from everything else ("This is a page allocated for userspace PTEs, so it's both a kmemcg page and a PTE page"). I'll respin the patch. Thanks! -- 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>