All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ray Bryant" <raybry@mpdtxmail.amd.com>
To: "Dave McCracken" <dmccr@us.ibm.com>
Cc: "Robin Holt" <holt@sgi.com>, "Hugh Dickins" <hugh@veritas.com>,
	"Linux Kernel" <linux-kernel@vger.kernel.org>,
	"Linux Memory Management" <linux-mm@kvack.org>
Subject: Re: [PATCH/RFC] Shared page tables
Date: Wed, 25 Jan 2006 18:16:14 -0600	[thread overview]
Message-ID: <200601251816.15037.raybry@mpdtxmail.amd.com> (raw)
In-Reply-To: <F6EF7D7093D441B7655A8755@[10.1.1.4]>

Dave,

Here's another one to keep you awake at night:

mmap a shared, anonymous region of 8MB (2MB aligned), and fork off some 
children (4 is good enough for me).    In each child, munmap() a 2 MB portion 
of the shared region (starting at offset 2MB in the shared region) and then 
mmap() a private, anonymous region in its place.   Have each child store some 
unique data in that region, sleep for a bit and then go look to see if its 
data is still there.

Under 2.6.15, this works just fine.   Under 2.6.15 + shpt patch, each child 
still points at the shared region and steps on the data of the other 
children.

I imagine the above gets even more interesting if the offset or length of the 
unmapped region is not a multiple of the 2MB alignment.

All of these test cases are for Opteron.   Your alignment may vary.

(Sorry about this... )

-- 
Ray Bryant
AMD Performance Labs                   Austin, Tx
512-602-0038 (o)                 512-507-7807 (c)


WARNING: multiple messages have this Message-ID (diff)
From: "Ray Bryant" <raybry@mpdtxmail.amd.com>
To: Dave McCracken <dmccr@us.ibm.com>
Cc: Robin Holt <holt@sgi.com>, Hugh Dickins <hugh@veritas.com>,
	Linux Kernel <linux-kernel@vger.kernel.org>,
	Linux Memory Management <linux-mm@kvack.org>
Subject: Re: [PATCH/RFC] Shared page tables
Date: Wed, 25 Jan 2006 18:16:14 -0600	[thread overview]
Message-ID: <200601251816.15037.raybry@mpdtxmail.amd.com> (raw)
In-Reply-To: <F6EF7D7093D441B7655A8755@[10.1.1.4]>

Dave,

Here's another one to keep you awake at night:

mmap a shared, anonymous region of 8MB (2MB aligned), and fork off some 
children (4 is good enough for me).    In each child, munmap() a 2 MB portion 
of the shared region (starting at offset 2MB in the shared region) and then 
mmap() a private, anonymous region in its place.   Have each child store some 
unique data in that region, sleep for a bit and then go look to see if its 
data is still there.

Under 2.6.15, this works just fine.   Under 2.6.15 + shpt patch, each child 
still points at the shared region and steps on the data of the other 
children.

I imagine the above gets even more interesting if the offset or length of the 
unmapped region is not a multiple of the 2MB alignment.

All of these test cases are for Opteron.   Your alignment may vary.

(Sorry about this... )

-- 
Ray Bryant
AMD Performance Labs                   Austin, Tx
512-602-0038 (o)                 512-507-7807 (c)

--
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:[~2006-01-26  0:16 UTC|newest]

Thread overview: 109+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-05 16:19 [PATCH/RFC] Shared page tables Dave McCracken
2006-01-07 12:25 ` Heiko Carstens
2006-01-07 12:25   ` Heiko Carstens
2006-01-07 18:09   ` Dave McCracken
2006-01-07 18:09     ` Dave McCracken
2006-01-08 12:09     ` Heiko Carstens
2006-01-08 12:09       ` Heiko Carstens
2006-01-08 14:04       ` Dave McCracken
2006-01-08 14:04         ` Dave McCracken
2006-01-13  5:15 ` Brian Twichell
2006-01-13  5:15   ` Brian Twichell
2006-01-13 22:34   ` Ray Bryant
2006-01-13 22:34     ` Ray Bryant
2006-01-17  4:50     ` Brian Twichell
2006-01-17  4:50       ` Brian Twichell
2006-01-25  4:14   ` Brian Twichell
2006-01-25  4:14     ` Brian Twichell
2006-01-13 15:18 ` Phillip Susi
2006-01-13 15:18   ` Phillip Susi
2006-01-14 20:45   ` Brian Twichell
2006-01-14 20:45     ` Brian Twichell
2006-01-17 23:53 ` Robin Holt
2006-01-17 23:53   ` Robin Holt
2006-01-18  0:17   ` Dave Hansen
2006-01-18  0:17     ` Dave Hansen
2006-01-18  6:11     ` Dave McCracken
2006-01-18  6:11       ` Dave McCracken
2006-01-18  1:27   ` Chen, Kenneth W
2006-01-18  1:27     ` Chen, Kenneth W
2006-01-18  3:32     ` Robin Holt
2006-01-18  3:32       ` Robin Holt
2006-01-23 23:58   ` Ray Bryant
2006-01-23 23:58     ` Ray Bryant
2006-01-24  0:16     ` Ray Bryant
2006-01-24  0:16       ` Ray Bryant
2006-01-24  0:39       ` Andi Kleen
2006-01-24  0:39         ` Andi Kleen
2006-01-24  0:51         ` Dave McCracken
2006-01-24  0:51           ` Dave McCracken
2006-01-24  1:11           ` Andi Kleen
2006-01-24  1:11             ` Andi Kleen
2006-01-24  1:26             ` Dave McCracken
2006-01-24  1:26               ` Dave McCracken
2006-01-24  0:53         ` Ray Bryant
2006-01-24  0:53           ` Ray Bryant
2006-01-24  1:00           ` Dave McCracken
2006-01-24  1:00             ` Dave McCracken
2006-01-24  1:10           ` Andi Kleen
2006-01-24  1:10             ` Andi Kleen
2006-01-24  1:23             ` Benjamin LaHaise
2006-01-24  1:23               ` Benjamin LaHaise
2006-01-24  1:38               ` Andi Kleen
2006-01-24  1:38                 ` Andi Kleen
2006-01-24  7:08                 ` Arjan van de Ven
2006-01-24  7:08                   ` Arjan van de Ven
2006-01-24  7:06             ` Arjan van de Ven
2006-01-24  7:06               ` Arjan van de Ven
2006-01-24  7:18               ` Andi Kleen
2006-01-24  7:18                 ` Andi Kleen
2006-01-27 18:16                 ` Martin Bligh
2006-01-27 18:16                   ` Martin Bligh
2006-02-01  9:49                 ` Nick Piggin
2006-02-01  9:49                   ` Nick Piggin
2006-01-24 14:48               ` Dave McCracken
2006-01-24 14:48                 ` Dave McCracken
2006-01-24 14:56                 ` Arjan van de Ven
2006-01-24 14:56                   ` Arjan van de Ven
2006-01-24  0:19     ` Dave McCracken
2006-01-24  0:19       ` Dave McCracken
2006-01-24  0:46       ` Ray Bryant
2006-01-24  0:46         ` Ray Bryant
2006-01-24 23:43       ` Ray Bryant
2006-01-24 23:43         ` Ray Bryant
2006-01-24 23:50         ` Dave McCracken
2006-01-24 23:50           ` Dave McCracken
2006-01-25  0:21           ` Ray Bryant
2006-01-25  0:21             ` Ray Bryant
2006-01-25 22:48           ` Ray Bryant
2006-01-25 22:48             ` Ray Bryant
2006-01-25 22:52             ` Dave McCracken
2006-01-25 22:52               ` Dave McCracken
2006-01-26  0:16               ` Ray Bryant [this message]
2006-01-26  0:16                 ` Ray Bryant
2006-01-26  0:58               ` Ray Bryant
2006-01-26  0:58                 ` Ray Bryant
2006-01-26  4:06                 ` Robin Holt
2006-01-26  4:06                   ` Robin Holt
2006-01-20 21:24 ` Hugh Dickins
2006-01-20 21:24   ` Hugh Dickins
2006-01-20 21:54   ` Chen, Kenneth W
2006-01-20 21:54     ` Chen, Kenneth W
2006-01-23 17:39   ` Dave McCracken
2006-01-23 17:39     ` Dave McCracken
2006-01-23 20:19     ` Benjamin LaHaise
2006-01-23 20:19       ` Benjamin LaHaise
2006-01-24 17:50     ` Hugh Dickins
2006-01-24 17:50       ` Hugh Dickins
2006-01-24 18:07       ` Dave McCracken
2006-01-24 18:07         ` Dave McCracken
2006-01-24 18:20         ` Hugh Dickins
2006-01-24 18:20           ` Hugh Dickins
2006-01-27 22:50   ` Brian Twichell
2006-01-27 22:50     ` Brian Twichell
2006-01-30 18:46     ` Ray Bryant
2006-01-30 18:46       ` Ray Bryant
2006-01-31 18:47       ` Brian Twichell
2006-01-31 18:47         ` Brian Twichell
2006-01-31 19:18         ` Dave McCracken
2006-01-31 19:18           ` Dave McCracken

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=200601251816.15037.raybry@mpdtxmail.amd.com \
    --to=raybry@mpdtxmail.amd.com \
    --cc=dmccr@us.ibm.com \
    --cc=holt@sgi.com \
    --cc=hugh@veritas.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.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.