All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jamie Lokier <lk@tantalophile.demon.co.uk>
To: Linus Torvalds <torvalds@transmeta.com>,
	"H. Peter Anvin" <hpa@zytor.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: /proc/<n>/maps getting _VERY_ long
Date: Mon, 6 Aug 2001 19:41:20 +0100	[thread overview]
Message-ID: <20010806194120.A5803@thefinal.cern.ch> (raw)
In-Reply-To: <20010805171202.A20716@weta.f00f.org> <20010805204143.A18899@alcove.wittsend.com> <9kkq9k$829$1@penguin.transmeta.com> <9kkr7r$mov$1@cesium.transmeta.com> <9kl6aa$87l$1@penguin.transmeta.com>
In-Reply-To: <9kl6aa$87l$1@penguin.transmeta.com>; from torvalds@transmeta.com on Mon, Aug 06, 2001 at 04:26:50AM +0000

Linus Torvalds wrote:
> >Do you count applications which selectively mprotect()'s memory (to
> >trap SIGSEGV and maintain coherency with on-disk data structures) as
> >"broken applications"?
> >
> >Such applications *can* use large amounts of mprotect()'s.
> 
> Note that such applications tend to not get any advantage from merging -
> it does in fact only slow things down (because then the next mprotect
> just has to split the thing again).
> 
> No, they aren't broken, but they should know that the use of lots of
> small memory segments (even if it is a design goal) can and will slow
> down page faulting, and use more memory for MM management for example. 
> 
> Linux does have a log(n) vma lookup, so the slowdown isn't huge.

There are garbage collectors that use mprotect() and SEGV trapping per
page.  It would be nice if there was a way to change the protections per
page without requiring a VMA for each one.

Btw, Linux has pretty fast SIGSEGV handling (the fastest of any
OS/machine combination that I measured), so it's a good platform for
this sort of thing.  I measured 7.75 microseconds per page for SEGV
trapping followed by mprotect() in the handler, on a particular test on
a 600MHz Pentium III.

-- Jamie

  parent reply	other threads:[~2001-08-10 21:31 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-08-04 15:43 /proc/<n>/maps getting _VERY_ long Chris Wedgwood
2001-08-05  2:17 ` Rik van Riel
2001-08-05  5:12   ` Chris Wedgwood
2001-08-05 13:06     ` Alan Cox
2001-08-05 13:18       ` Chris Wedgwood
2001-08-05 23:07       ` Jakob Østergaard
2001-08-05 23:41       ` Linus Torvalds
2001-08-06  0:41         ` Michael H. Warfield
2001-08-06  1:01           ` Linus Torvalds
2001-08-06  1:17             ` H. Peter Anvin
2001-08-06  4:26               ` Linus Torvalds
2001-08-06  6:30                 ` H. Peter Anvin
2001-08-06 18:41                 ` Jamie Lokier [this message]
2001-08-10 21:55                   ` Linus Torvalds
2001-08-10 22:00                     ` H. Peter Anvin
2001-08-10 23:03                       ` Nicolas Pitre
2001-08-10 23:26                       ` Linus Torvalds
2001-08-10 23:55                         ` Rik van Riel
2001-08-11  1:04                     ` Pavel Machek
2001-08-06 11:52               ` Alan Cox
2001-08-06 12:23                 ` Chris Wedgwood
2001-08-06 13:17                   ` Alan Cox
2001-08-06 13:55                     ` Chris Wedgwood
2001-08-06  9:43         ` [LONGish] Brief analysis of VMAs (was: /proc/<n>/maps getting _VERY_ long) Chris Wedgwood
  -- strict thread matches above, loose matches on Subject: below --
2001-08-05  6:44 /proc/<n>/maps getting _VERY_ long David Luyer
2001-08-05  7:21 ` Anders Eriksson

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=20010806194120.A5803@thefinal.cern.ch \
    --to=lk@tantalophile.demon.co.uk \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.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.