From: David Gibson <david@gibson.dropbear.id.au>
To: Andrew Morton <akpm@osdl.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
ak@suse.de, linux-kernel@vger.kernel.org, anton@samba.org,
paulus@samba.org, linuxppc64-dev@lists.linuxppc.org
Subject: Re: RFC: COW for hugepages
Date: Thu, 8 Apr 2004 13:09:23 +1000 [thread overview]
Message-ID: <20040408030923.GA29551@zax> (raw)
In-Reply-To: <20040407190126.06a9c38f.akpm@osdl.org>
On Wed, Apr 07, 2004 at 07:01:26PM -0700, Andrew Morton wrote:
> Benjamin Herrenschmidt <benh@kernel.crashing.org> wrote:
> >
> >
> > > Implementing this for ppc64 only is just wrong. Before you do this
> > > I would suggest to factor out the common code in the various hugetlbpage
> > > implementations and then implement it in common code.
> >
> > Have you actually looked at it and how huge pages are implemented
> > on the various architectures ?
> >
> > Honestly, I don't think we have any common abstraction on things
> > like hugepte's etc... actually, archs aren't even required to use
> > PTEs at all.
> >
> > I don't see how we can make that code arch-neutral, at least not
> > without a major redesign of the whole large pages mecanism.
>
> I don't see much in the COW code which is ppc64-specific. All the hardware
> needs to do is to provide a way to make the big pages readonly. With a bit
> of an abstraction for the TLB manipulation in there it should be pretty
> straightforward.
>
> Certainly worth the attempt, no?
Yes, you have a point. However doing it in a cross-arch way will
require building more of a shared abstraction about hugepage pte
entries that exists currently. And that will mean making significant
changes to all the archs to create that abstraction. I don't know
enough about the other archs to be confident of debugging such
changes, but I'll see what I can do.
That should let the actual handle_mm_fault->hugepage_cow codepath be
shared. However how the hugepage ptes fit in with the rest of the
pagetables varies from arch to arch - on ppc64 we're considering
putting hugepages into their own entirely separate pagetables, even -
so anything that actually walks the pagetables (like
copy_hugetlb_page_range()) will still have to be arch-specific.
--
David Gibson | For every complex problem there is a
david AT gibson.dropbear.id.au | solution which is simple, neat and
| wrong.
http://www.ozlabs.org/people/dgibson
next prev parent reply other threads:[~2004-04-08 3:12 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-04-07 7:42 RFC: COW for hugepages David Gibson
2004-04-07 7:53 ` Andrew Morton
2004-04-07 8:03 ` Anton Blanchard
2004-04-07 8:29 ` Benjamin Herrenschmidt
2004-04-08 1:57 ` David Gibson
2004-04-07 9:00 ` Zoltan Menyhart
2004-04-08 1:53 ` David Gibson
2004-04-08 11:10 ` Zoltan Menyhart
2004-04-08 14:19 ` David Gibson
2004-04-07 12:34 ` Andi Kleen
2004-04-07 14:27 ` Anton Blanchard
2004-04-07 14:50 ` Andi Kleen
2004-04-07 21:41 ` Anton Blanchard
2004-04-07 21:47 ` Andi Kleen
2004-04-08 1:11 ` Benjamin Herrenschmidt
2004-04-08 2:01 ` Andrew Morton
2004-04-08 3:09 ` David Gibson [this message]
2004-04-08 3:24 ` Andrew Morton
2004-04-08 3:56 ` David Gibson
2004-04-08 1:50 ` David Gibson
2004-04-07 15:21 ` Dave Hansen
2004-04-08 3:22 ` David Gibson
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=20040408030923.GA29551@zax \
--to=david@gibson.dropbear.id.au \
--cc=ak@suse.de \
--cc=akpm@osdl.org \
--cc=anton@samba.org \
--cc=benh@kernel.crashing.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc64-dev@lists.linuxppc.org \
--cc=paulus@samba.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.