From: Erik Corry <erik@arbat.com>
To: Kanoj Sarcar <kanoj@google.engr.sgi.com>
Cc: ak-uu@muc.de, Linux-MM@kvack.org
Subject: Re: Assumed Failure rates in Various o.s's ?
Date: Fri, 21 May 1999 12:07:25 +0200 [thread overview]
Message-ID: <19990521120725.A581384@daimi.au.dk> (raw)
In-Reply-To: <199905191737.KAA85790@google.engr.sgi.com>; from Kanoj Sarcar on Wed, May 19, 1999 at 10:37:42AM -0700
On Wed, May 19, 1999 at 10:37:42AM -0700, Kanoj Sarcar wrote:
> >
> > to http://x35.deja.com/=dnc/[ST_rn=ps]/getdoc.xp?AN=467741389
>
> Unfortunately, I couldn't quite trace back to the roots of this
> thread,
You can click on the 'Thread button to get an overview of the
thread. I don't think there is an actual bug demonstration or
exploit available.
> I think my patch might actually help your situation, given that the
> *software* is checking the pte bits and making decisions about writability,
> rather than relying on broken *hardware* which ignores the pte writability
> bit.
Yes. Though the performace hit would be even worse on the i386.
> Now for a proposal: I don't see a down(mm->mmap_sem) being done
> in the code path leading up to calls to __verify_write. Am I missing
> it? If a down(mm->mmap_sem) were added around __verify_write, you could
> quit worrying about simultaneous munmaps while an user access function
> was executing.
I think this is the wrong place. As far as I understand it,
the verify_write runs before the actual copying takes place.
So after verify_write has run, while the copy_to_user is
taking place there can be a page fault (is that even necessary
on SMP?). While that is happening, the black hat user can do
an mmap/munmap in another thread. But I haven't really looked
into it much, I am relying mostly on hearsay here.
According to Andi you already fixed this with a read lock that
prevents mmap and mmunmap from doing anything while the copy
is running. This makes sense, since if you do it right with a
readers/writers lock you can keep out mmap without serialising
copy_to_user or copy_from_user.
--
Erik Corry erik@arbat.com Ceterum censeo, Microsoftem esse delendam!
--
To unsubscribe, send a message with 'unsubscribe linux-mm my@address'
in the body to majordomo@kvack.org. For more info on Linux MM,
see: http://humbolt.geo.uu.nl/Linux-MM/
next prev parent reply other threads:[~1999-05-21 10:07 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <199905191428.QAA1295681@beryllium.daimi.au.dk>
1999-05-19 17:37 ` Kanoj Sarcar
1999-05-21 10:07 ` Erik Corry [this message]
1999-05-21 14:25 ` Benjamin C.R. LaHaise
1999-05-21 14:54 ` Erik Corry
1999-05-21 16:02 ` Benjamin C.R. LaHaise
1999-05-21 17:06 ` Kanoj Sarcar
1999-05-21 17:23 ` Kanoj Sarcar
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=19990521120725.A581384@daimi.au.dk \
--to=erik@arbat.com \
--cc=Linux-MM@kvack.org \
--cc=ak-uu@muc.de \
--cc=kanoj@google.engr.sgi.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