linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Nick Piggin <npiggin@suse.de>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Nishanth Aravamudan <nacc@us.ibm.com>,
	linux-mm@kvack.org, kniht@us.ibm.com, andi@firstfloor.org,
	abh@cray.com, joachim.deguara@amd.com
Subject: Re: [patch 00/21] hugetlb multi size, giant hugetlb support, etc
Date: Wed, 4 Jun 2008 11:35:17 +0200	[thread overview]
Message-ID: <20080604093517.GA32654@wotan.suse.de> (raw)
In-Reply-To: <20080604012938.53b1003c.akpm@linux-foundation.org>

On Wed, Jun 04, 2008 at 01:29:38AM -0700, Andrew Morton wrote:
> On Tue, 03 Jun 2008 19:59:56 +1000 npiggin@suse.de wrote:
> > 
> > Lastly, embarassingly, I'm not the best source of information for the
> > sysfs tunables, so incremental patches against Documentation/ABI would
> > be welcome :P
> > 
> 
> I think I'll duck this iteration.  Partly because I was unable to work
> out how nacky the feedback for 14/21 was,

I don't think it was at all. At least, any of the suggestions Dave was
making could even be implemented in a backwards compatible way even
after it goes upstream. Basically I'm taking the easy way out when it
comes to user API changes, changing none of the existing interfaces
and just providing very basic boot options.


> but mainly because I don't
> know what it all does, because none of the above explains this.
> 
> Can't review it if I don't know what it's all trying to do.

Fair enough.

 
> Things like this:
> 
> : Large, but rather mechanical patch that converts most of the hugetlb.c
> : globals into structure members and passes them around.
> : 
> : Right now there is only a single global hstate structure, but 
> : most of the infrastructure to extend it is there.
> 
> OK, but it didn't tell us why we want multiple hstate structures.

OK.

 
> : Add basic support for more than one hstate in hugetlbfs
> : 
> : - Convert hstates to an array
> : - Add a first default entry covering the standard huge page size
> : - Add functions for architectures to register new hstates
> : - Add basic iterators over hstates
> 
> And neither did that.
> 
> One for each hugepage size, I'd guess.

Yes.

 
> : Add support to have individual hstates for each hugetlbfs mount
> : 
> : - Add a new pagesize= option to the hugetlbfs mount that allows setting
> : the page size
> : - Set up pointers to a suitable hstate for the set page size option
> : to the super block and the inode and the vma.
> : - Change the hstate accessors to use this information
> : - Add code to the hstate init function to set parsed_hstate for command
> : line processing
> : - Handle duplicated hstate registrations to the make command line user proof
> 
> Nope, wrong guess.  It's one per mountpoint.
 
It is per hugepage size, but each mount point has a pointer to one
of the hstates. Hstate is basically a gathering of most of the
currently global attributes and state in hugetlb and put into a structure.


> So now I'm seeing (I think) that the patchset does indeed implement
> multiple page-size hugepages, and that it it does this by making an
> entire hugetlb mountpoint have a single-but-settable pagesize.

Yes.
 

> All pretty straightforward stuff, unless I'm missing something.  But
> please do spell it out because surely there's stuff in here which I
> will miss from the implementation and the skimpy changelog.
> 
> Please don't think I'm being anal here - changelogging matters.  It
> makes review more effective and it allows reviewers to find problems
> which they would otherwise have overlooked.  btdt, lots of times.

OK, well I'm keen to get it into mm so it's not holding up (or being
busted by) other work... can I just try replying with improved
changelogs? Or do you want me to resend the full series?

--
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:[~2008-06-04  9:35 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-03  9:59 [patch 00/21] hugetlb multi size, giant hugetlb support, etc npiggin
2008-06-03  9:59 ` [patch 01/21] hugetlb: factor out prep_new_huge_page npiggin
2008-06-03  9:59 ` [patch 02/21] hugetlb: modular state npiggin
2008-06-03 10:58   ` [patch 02/21] hugetlb: modular state (take 2) Nick Piggin
2008-06-03  9:59 ` [patch 03/21] hugetlb: multiple hstates npiggin
2008-06-03 10:00 ` [patch 04/21] hugetlbfs: per mount hstates npiggin
2008-06-03 10:00 ` [patch 05/21] hugetlb: new sysfs interface npiggin
2008-06-03 10:00 ` [patch 06/21] hugetlb: abstract numa round robin selection npiggin
2008-06-03 10:00 ` [patch 07/21] mm: introduce non panic alloc_bootmem npiggin
2008-06-03 10:00 ` [patch 08/21] mm: export prep_compound_page to mm npiggin
2008-06-03 10:00 ` [patch 09/21] hugetlb: support larger than MAX_ORDER npiggin
2008-06-03 10:00 ` [patch 10/21] hugetlb: support boot allocate different sizes npiggin
2008-06-03 10:00 ` [patch 11/21] hugetlb: printk cleanup npiggin
2008-06-03 10:00 ` [patch 12/21] hugetlb: introduce pud_huge npiggin
2008-06-03 10:00 ` [patch 13/21] x86: support GB hugepages on 64-bit npiggin
2008-06-03 10:00 ` [patch 14/21] x86: add hugepagesz option " npiggin
2008-06-03 17:48   ` Dave Hansen
2008-06-03 18:24     ` Andi Kleen
2008-06-03 18:59       ` Dave Hansen
2008-06-03 20:57         ` Andi Kleen
2008-06-03 21:27           ` Dave Hansen
2008-06-04  0:06             ` Andi Kleen
2008-06-04  1:04               ` Nick Piggin
2008-06-04 16:01                 ` Dave Hansen
2008-06-06 16:09                   ` Dave Hansen
2008-06-05 23:15               ` Nishanth Aravamudan
2008-06-06  0:29                 ` Andi Kleen
2008-06-04  1:10           ` Nick Piggin
2008-06-05 23:12             ` Nishanth Aravamudan
2008-06-05 23:23               ` Nishanth Aravamudan
2008-06-03 19:00       ` Dave Hansen
2008-06-03 10:00 ` [patch 15/21] hugetlb: override default huge page size npiggin
2008-06-03 10:00 ` [patch 16/21] hugetlb: allow arch overried hugepage allocation npiggin
2008-06-03 10:00 ` [patch 17/21] powerpc: function to allocate gigantic hugepages npiggin
2008-06-03 10:00 ` [patch 18/21] powerpc: scan device tree for gigantic pages npiggin
2008-06-03 10:00 ` [patch 19/21] powerpc: define support for 16G hugepages npiggin
2008-06-03 10:00 ` [patch 20/21] fs: check for statfs overflow npiggin
2008-06-03 10:00 ` [patch 21/21] powerpc: support multiple hugepage sizes npiggin
2008-06-03 10:29 ` [patch 1/1] x86: get_user_pages_lockless support 1GB hugepages Nick Piggin
2008-06-03 10:57 ` [patch 00/21] hugetlb multi size, giant hugetlb support, etc Nick Piggin
2008-06-06 17:12   ` Andy Whitcroft
2008-06-04  8:29 ` Andrew Morton
2008-06-04  9:35   ` Nick Piggin [this message]
2008-06-04  9:46     ` Andrew Morton
2008-06-04 11:04       ` Nick Piggin
2008-06-04 11:33       ` Nick Piggin
2008-06-04 11:57   ` Andi Kleen
2008-06-04 18:39     ` Andrew Morton

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=20080604093517.GA32654@wotan.suse.de \
    --to=npiggin@suse.de \
    --cc=abh@cray.com \
    --cc=akpm@linux-foundation.org \
    --cc=andi@firstfloor.org \
    --cc=joachim.deguara@amd.com \
    --cc=kniht@us.ibm.com \
    --cc=linux-mm@kvack.org \
    --cc=nacc@us.ibm.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).