linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Matthew Wilcox <willy@infradead.org>
To: "Kirill A. Shutemov" <kirill@shutemov.name>
Cc: linux-mm@kvack.org, Matthew Wilcox <mawilcox@microsoft.com>
Subject: Re: [PATCH] mm: Split page_type out from _map_count
Date: Fri, 9 Feb 2018 05:49:42 -0800	[thread overview]
Message-ID: <20180209134942.GB16666@bombadil.infradead.org> (raw)
In-Reply-To: <20180209105132.hhkjoijini3f74fz@node.shutemov.name>

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@microsoft.com>
> > 
> > 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@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2018-02-09 13:49 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-07 21:30 [PATCH] mm: Split page_type out from _map_count Matthew Wilcox
2018-02-09 10:51 ` Kirill A. Shutemov
2018-02-09 13:49   ` Matthew Wilcox [this message]
2018-02-09 15:28     ` [PATCH v2] " Matthew Wilcox
2018-02-09 18:43       ` Dave Hansen
2018-02-09 19:04         ` Christopher Lameter
2018-02-09 19:28         ` Matthew Wilcox
2018-02-10  5:00 ` [PATCH] " kbuild test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180209134942.GB16666@bombadil.infradead.org \
    --to=willy@infradead.org \
    --cc=kirill@shutemov.name \
    --cc=linux-mm@kvack.org \
    --cc=mawilcox@microsoft.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).