From: Linus Torvalds <torvalds@transmeta.com>
To: Daniel Phillips <phillips@bonn-fries.net>
Cc: Hugh Dickins <hugh@veritas.com>,
dmccr@us.ibm.com,
Kernel Mailing List <linux-kernel@vger.kernel.org>,
linux-mm@kvack.org, Robert Love <rml@tech9.net>,
Rik van Riel <riel@conectiva.com.br>,
mingo@redhat.com, Andrew Morton <akpm@zip.com.au>,
manfred@colorfullife.com, wli@holomorphy.com
Subject: Re: [RFC] Page table sharing
Date: Mon, 18 Feb 2002 17:53:50 -0800 (PST) [thread overview]
Message-ID: <Pine.LNX.4.33.0202181749110.24597-100000@home.transmeta.com> (raw)
In-Reply-To: <E16czQ1-0000yf-00@starship.berlin>
On Tue, 19 Feb 2002, Daniel Phillips wrote:
>
> Somebody might read fault, changing an entry when we're in the middle of
> copying it and might might do a duplicated read fault.
You're confusing the mm->mmap_sem with the page_table_lock.
The mm semaphore is really a read-write semaphore, and yes, there can be
multiple faulters active at the same time readin gin pages.
But the page_table_lock is 100% exclusive, and while you hold the
page_table_lock there is absolutely _not_ going to be any concurrent page
faulting.
(NOTE! Sure, there might be another mm that has the same pmd shared, but
that one is going to do an unshare before it actually touches anything in
the pmd, so it's NOT going to change the values in the original pmd).
So I'm personally convinced that the locking shouldn't be needed at all,
if you just make sure that you do things in the right order (that, of
course, might need some memory barriers, which had better be implied by
the atomic dec-and-test anyway).
Linus
--
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/
next prev parent reply other threads:[~2002-02-19 1:53 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.33.0202162219230.8326-100000@home.transmeta.com>
2002-02-17 19:39 ` Daniel Phillips
2002-02-17 20:16 ` Daniel Phillips
2002-02-17 22:16 ` Hugh Dickins
2002-02-18 1:35 ` Daniel Phillips
2002-02-18 8:09 ` Hugh Dickins
2002-02-18 9:41 ` Daniel Phillips
2002-02-18 11:32 ` Daniel Phillips
2002-02-18 19:04 ` Hugh Dickins
2002-02-18 23:37 ` Daniel Phillips
2002-02-19 0:56 ` Linus Torvalds
2002-02-19 1:22 ` Rik van Riel
2002-02-19 1:29 ` Daniel Phillips
2002-02-19 1:48 ` Linus Torvalds
2002-02-19 1:53 ` Rik van Riel
2002-02-19 2:05 ` Linus Torvalds
2002-02-19 2:22 ` Daniel Phillips
2002-02-19 2:35 ` Linus Torvalds
2002-02-19 2:55 ` Daniel Phillips
2002-02-19 3:11 ` Daniel Phillips
2002-02-19 3:22 ` Linus Torvalds
2002-02-19 3:45 ` Daniel Phillips
2002-02-19 17:29 ` Linus Torvalds
2002-02-19 18:11 ` Hugh Dickins
2002-02-20 14:18 ` Daniel Phillips
2002-02-20 15:30 ` Hugh Dickins
2002-02-20 14:10 ` Daniel Phillips
2002-02-20 14:38 ` Hugh Dickins
2002-02-20 14:57 ` Daniel Phillips
2002-02-19 11:39 ` Daniel Phillips
2002-02-19 12:22 ` Hugh Dickins
2002-02-19 12:43 ` Daniel Phillips
2002-02-19 10:02 ` Roman Zippel
2002-02-22 5:29 ` Daniel Phillips
2002-02-22 6:32 ` Daniel Phillips
2002-02-22 9:21 ` [RFC] Page table sharing, leak gone Daniel Phillips
2002-02-19 1:57 ` [RFC] Page table sharing Daniel Phillips
2002-02-19 1:23 ` Daniel Phillips
2002-02-19 1:50 ` Daniel Phillips
2002-02-19 1:53 ` Linus Torvalds [this message]
2002-02-19 2:12 ` Daniel Phillips
2002-02-18 23:48 ` Daniel Phillips
2002-02-18 23:59 ` Daniel Phillips
2002-02-19 0:03 ` Hugh Dickins
2002-02-19 0:27 ` Daniel Phillips
2002-02-19 4:27 ` Eric W. Biederman
2002-02-19 17:30 ` Linus Torvalds
2002-02-19 18:18 Qing Huang
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=Pine.LNX.4.33.0202181749110.24597-100000@home.transmeta.com \
--to=torvalds@transmeta.com \
--cc=akpm@zip.com.au \
--cc=dmccr@us.ibm.com \
--cc=hugh@veritas.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=manfred@colorfullife.com \
--cc=mingo@redhat.com \
--cc=phillips@bonn-fries.net \
--cc=riel@conectiva.com.br \
--cc=rml@tech9.net \
--cc=wli@holomorphy.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