linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Chris Metcalf <cmetcalf@tilera.com>
To: Hillf Danton <dhillf@gmail.com>
Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Michal Hocko <mhocko@suse.cz>,
	KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
	Hugh Dickins <hughd@google.com>
Subject: Re: [PATCH v3] arch/tile: support multiple huge page sizes dynamically
Date: Sun, 1 Apr 2012 12:46:45 -0400	[thread overview]
Message-ID: <4F788675.6060604@tilera.com> (raw)
In-Reply-To: <CAJd=RBDqQ2jwxyVgn-WwoJfu0vOs9YUHfKxkcqUczr=cnk+8wg@mail.gmail.com>

On 4/1/2012 8:33 AM, Hillf Danton wrote:
> On Sat, Mar 31, 2012 at 3:37 AM, Chris Metcalf <cmetcalf@tilera.com> wrote:
>> This change adds support for a new "super" bit in the PTE, and a
>> new arch_make_huge_pte() method called from make_huge_pte().
>> The Tilera hypervisor sees the bit set at a given level of the page
>> table and gangs together 4, 16, or 64 consecutive pages from
>> that level of the hierarchy to create a larger TLB entry.
>>
>> One extra "super" page size can be specified at each of the
>> three levels of the page table hierarchy on tilegx, using the
>> "hugepagesz" argument on the boot command line.  A new hypervisor
>> API is added to allow Linux to tell the hypervisor how many PTEs
>> to gang together at each level of the page table.
>>
>> To allow pre-allocating huge pages larger than the buddy allocator
>> can handle, this change modifies the Tilera bootmem support to
>> put all of memory on tilegx platforms into bootmem.
>>
>> As part of this change I eliminate the vestigial CONFIG_HIGHPTE
>> support, which never worked anyway, and eliminate the hv_page_size()
>> API in favor of the standard vma_kernel_pagesize() API.
>>
>> Reviewed-by: Hillf Danton <dhillf@gmail.com>
>> Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
>> ---
>> This version of the patch adds a generic no-op definition to
>> <linux/hugetlb.h> if "arch_make_huge_pte" is not #defined.  I'm following
>> Linus's model in https://lkml.org/lkml/2012/1/19/443 which says you create
>> the inline, then "#define func func" to indicate that the function exists.
>>
>> Hillf, let me know if you want to provide an Acked-by, or I'll leave it
>> as Reviewed-by.  I'm glad you didn't like the v2 patch;
>>
> Frankly I like this work, if merged, many tile users benefit.
>
> And a few more words,
> 1, the Reviewed-by tag does not match what I did, really, and
> over 98% of this work should be reviewed by tile gurus IMO.

I can split this into two patches, one with your Reviewed-by: (just the
include/asm-generic/hugetlb.h and mm/hugetlb.c parts), and one without (the
arch/tile stuff).  As it happens, I am the tile guru for this code :-)

> 2, this work was delivered in a monolithic huge patch, and it is hard
> to be reviewed. The rule of thumb is to split it into several parts, then
> reviewers read a good story, chapter after another.

Yes.  I put it all together because it's all inter-dependent; there's no
piece of it that's useful in isolation, though as you've observed, there is
at least one piece that's helpfully reviewed separately.

So does it make sense for me to push the two resulting changes through the
tile tree?  I'd like to ask Linus to pull this stuff for 3.4 (I know, I'm
late in the cycle for that), but obviously it's not much use without the
part that you reviewed.  I imagine that if I'm pushing it through my tree,
it might be more appropriate to have an Acked-by than a Reviewed-by from
you, perhaps? What do you think?

Thanks!

-- 
Chris Metcalf, Tilera Corp.
http://www.tilera.com

--
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/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2012-04-01 16:46 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-01 16:51 [PATCH v2] hugetlb: fix race condition in hugetlb_fault() Chris Metcalf
2012-03-30 20:07 ` [PATCH] " Chris Metcalf
2012-03-30 20:07   ` [PATCH v2] " Chris Metcalf
2012-04-01 12:10     ` Hillf Danton
2012-03-30 20:07       ` [PATCH v3] " Chris Metcalf
2012-03-31 12:27   ` [PATCH] " Hillf Danton
2012-03-30 19:37     ` [PATCH v2] arch/tile: support multiple huge page sizes dynamically Chris Metcalf
2012-03-31 14:03       ` Hillf Danton
2012-03-30 19:37         ` [PATCH v3] " Chris Metcalf
2012-04-01 12:33           ` Hillf Danton
2012-04-01 16:46             ` Chris Metcalf [this message]
2012-04-02  2:21               ` Hillf Danton
2012-04-06 22:23 ` [PATCH v2] hugetlb: fix race condition in hugetlb_fault() Andrew Morton
2012-04-06 23:10   ` Hugh Dickins
2012-04-06 23:26     ` Andrew Morton
2012-04-06 23:35       ` Hugh Dickins
2012-04-07  0:25         ` Chris Metcalf

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=4F788675.6060604@tilera.com \
    --to=cmetcalf@tilera.com \
    --cc=akpm@linux-foundation.org \
    --cc=dhillf@gmail.com \
    --cc=hughd@google.com \
    --cc=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mhocko@suse.cz \
    /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