All of lore.kernel.org
 help / color / mirror / Atom feed
From: Keir Fraser <keir@xensource.com>
To: Jan Beulich <jbeulich@novell.com>, Keir Fraser <keir@xensource.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: Fwd: Re: struct page field arrangement
Date: Fri, 16 Mar 2007 15:30:05 +0000	[thread overview]
Message-ID: <C220687D.BABD%keir@xensource.com> (raw)
In-Reply-To: <45FAC2A7.76E4.0078.0@novell.com>

On 16/3/07 15:15, "Jan Beulich" <jbeulich@novell.com> wrote:

> But without being attached to an mm, the user portion of the pgd should
> be blank? I really can't follow why i386 requires so much more special
> handling here than x86-64.

PAE allocates the pmd's early (in pgd_alloc() in fact). So any pgd_alloc()ed
pgd must be captured by mm_pin_all().

> And what about the pgd_test_and_unpin() case?

It's only called from pgd_alloc, pgd_free, pgd_dtor. I'm not sure it's
needed in all those places, but it's needed in some of them to deal with the
case that _arch_exit_mmap() didn't unpin the pgd, because a PAE pgd does not
lose its pmd's until pgd_free(). In none of those cases is there a
concurrency problem: there's no mm associated with the pgd and hence no
concurrency issue.

I just checked in a patch to clarify some of this, particularly around
mm_pin_all, as c/s 14408. Feel free to submit more clarification patches --
I suspect a few more comments around these functions would help avoid
confusion!

 -- Keir

  reply	other threads:[~2007-03-16 15:30 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-16 13:47 Fwd: Re: struct page field arrangement Jan Beulich
2007-03-16 14:13 ` Keir Fraser
2007-03-16 14:30   ` Keir Fraser
2007-03-16 15:15     ` Jan Beulich
2007-03-16 15:30       ` Keir Fraser [this message]
  -- strict thread matches above, loose matches on Subject: below --
2007-03-16 11:58 Jan Beulich
2007-03-16 12:11 ` Keir Fraser
2007-03-16 12:25   ` Keir Fraser
2007-03-16 12:54     ` Jan Beulich
2007-03-16 12:37 ` Keir Fraser
2007-03-16 12:46   ` Jan Beulich
2007-02-28 14:31 Jan Beulich
2007-02-28 21:08 ` Hugh Dickins
2007-03-01  8:42   ` Fwd: " Jan Beulich
2007-03-01 10:22     ` Keir Fraser
2007-03-01 11:45       ` Jan Beulich
2007-03-01 12:12         ` Keir Fraser
2007-03-01 12:50           ` Jan Beulich
2007-03-01 13:42             ` Keir Fraser

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=C220687D.BABD%keir@xensource.com \
    --to=keir@xensource.com \
    --cc=jbeulich@novell.com \
    --cc=xen-devel@lists.xensource.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 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.