From: Andrea Arcangeli <andrea@suse.de>
To: Andrew Morton <akpm@digeo.com>
Cc: William Lee Irwin III <wli@holomorphy.com>,
Norman Gaywood <norm@turing.une.edu.au>,
linux-kernel@vger.kernel.org
Subject: Re: Maybe a VM bug in 2.4.18-18 from RH 8.0?
Date: Sat, 7 Dec 2002 01:22:32 +0100 [thread overview]
Message-ID: <20021207002232.GW4335@dualathlon.random> (raw)
In-Reply-To: <3DF13A54.927C04C1@digeo.com>
On Fri, Dec 06, 2002 at 04:01:24PM -0800, Andrew Morton wrote:
> William Lee Irwin III wrote:
> >
> > ...
> > A 16KB or 64KB kernel allocation unit would then annihilate
>
> You want to be careful about this:
>
> CPU: L1 I cache: 16K, L1 D cache: 16K
>
> Because instantiating a 16k page into user pagetables in
> one hit means that it must all be zeroed. With these large
> pagesizes that means that the application is likely to get
> 100% L1 misses against the new page, whereas it currently
> gets 100% hits.
>
> I'd expect this performance dropoff to occur when going from 8k
> to 16k. By the time you get to 32k it would be quite bad.
>
> One way to address this could be to find a way of making the
> pages present, but still cause a fault on first access. Then
> have a special-case fastpath in the fault handler to really wipe
> the page just before it is used. I don't know how though - maybe
> _PAGE_USER?
I think taking the page fault itself is the biggest overhead that would
be nice to avoid on every second virtually consecutive page, if we've to
take the page fault on every page we could as well do the rest of the
work that should not that big compared to the overhead of
entering/exiting kernel and preparing to handle the fault.
>
> get_user_pages() would need attention too - you don't want to
> allow the user to perform O_DIRECT writes of uninitialised
> pages to their files...
Andrea
next prev parent reply other threads:[~2002-12-07 0:14 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-12-06 0:13 Maybe a VM bug in 2.4.18-18 from RH 8.0? Norman Gaywood
2002-12-06 1:00 ` Andrew Morton
2002-12-06 1:17 ` Andrea Arcangeli
2002-12-06 1:34 ` Andrew Morton
2002-12-06 1:44 ` Andrea Arcangeli
2002-12-06 2:15 ` William Lee Irwin III
2002-12-06 2:28 ` Andrea Arcangeli
2002-12-06 2:41 ` William Lee Irwin III
2002-12-06 5:25 ` Andrew Morton
2002-12-06 5:48 ` Andrea Arcangeli
2002-12-06 6:14 ` William Lee Irwin III
2002-12-06 6:55 ` Andrew Morton
2002-12-06 7:14 ` GrandMasterLee
2002-12-06 7:25 ` Andrew Morton
2002-12-06 7:34 ` GrandMasterLee
2002-12-06 7:51 ` Andrew Morton
2002-12-06 11:37 ` Christoph Hellwig
2002-12-06 16:19 ` GrandMasterLee
2002-12-06 14:57 ` Andrea Arcangeli
2002-12-06 15:12 ` William Lee Irwin III
2002-12-06 23:32 ` Andrea Arcangeli
2002-12-06 23:45 ` William Lee Irwin III
2002-12-06 23:57 ` Andrea Arcangeli
2002-12-06 6:00 ` William Lee Irwin III
2002-12-06 22:28 ` Andrea Arcangeli
2002-12-06 23:21 ` William Lee Irwin III
2002-12-06 23:50 ` Andrea Arcangeli
2002-12-07 0:30 ` William Lee Irwin III
2002-12-07 0:01 ` Andrew Morton
2002-12-07 0:21 ` William Lee Irwin III
2002-12-07 0:30 ` Andrew Morton
2002-12-07 2:19 ` Alan Cox
2002-12-07 1:46 ` William Lee Irwin III
2002-12-07 1:56 ` Andrea Arcangeli
2002-12-07 2:31 ` Alan Cox
2002-12-07 2:09 ` William Lee Irwin III
2002-12-07 0:22 ` Andrea Arcangeli [this message]
2002-12-07 0:35 ` Andrew Morton
2002-12-07 0:46 ` William Lee Irwin III
2002-12-07 10:55 ` Arjan van de Ven
2002-12-06 10:36 ` Arjan van de Ven
2002-12-06 14:23 ` William Lee Irwin III
2002-12-06 15:12 ` William Lee Irwin III
2002-12-06 22:34 ` Andrea Arcangeli
2002-12-07 18:27 ` Eric W. Biederman
2002-12-06 1:08 ` Andrea Arcangeli
[not found] <mailman.1039133948.27411.linux-kernel2news@redhat.com>
2002-12-06 0:35 ` Pete Zaitcev
2002-12-06 1:27 ` Norman Gaywood
2002-12-06 12:48 ` Rik van Riel
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=20021207002232.GW4335@dualathlon.random \
--to=andrea@suse.de \
--cc=akpm@digeo.com \
--cc=linux-kernel@vger.kernel.org \
--cc=norm@turing.une.edu.au \
--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