public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Stephan von Krawczynski <skraw@ithnet.com>
To: Rik van Riel <riel@conectiva.com.br>
Cc: davidsen@tmr.com, linux-kernel@vger.kernel.org
Subject: Re: broken VM in 2.4.10-pre9
Date: Fri, 21 Sep 2001 14:55:56 +0200	[thread overview]
Message-ID: <20010921145556.1f0af431.skraw@ithnet.com> (raw)
In-Reply-To: <Pine.LNX.4.33L.0109210912310.19147-100000@imladris.rielhome.conectiva>
In-Reply-To: <20010921124338.4e31a635.skraw@ithnet.com> <Pine.LNX.4.33L.0109210912310.19147-100000@imladris.rielhome.conectiva>

On Fri, 21 Sep 2001 09:13:07 -0300 (BRST) Rik van Riel <riel@conectiva.com.br>
wrote:

> On Fri, 21 Sep 2001, Stephan von Krawczynski wrote:
> 
> > Shit, if I only were able to implement that. Can anybody help me to
> > proove my point?
> 
> Trying to implement your idea would probably pose a nice
> counter-argument. Without measuring which pages are in
> heavy use, how are you going to evict the right pages ?

Hi Rik,

The really beautiful thing about it is that you can divide it completely in two
parts:
1) basic list handling, you obviously need the list itself and some atomic
functions to queue/dequeue/requeue entries, possibly as well as
get_next_freeable() for simplicity. The rest vm only uses this to work.
2) the management "plugins" where you can virtually do any check of heavy use
or aging or buddy-finding or whatever comes to your mind and requeue
accordingly. You may do that on every alloc (surely not nice), or on page hits,
or on low-mem condition (like page_launder), or in a independant process
(somehow like kswapd), whatever you tend to believe is the best performing way
- feel free to find the killer-plugin :-). 

BUT (and thats the real good point): (2) is completely independant in structure
and processing from the basic mem-handling, because the only interaction is
requeuing, which means as a first step (only experimental of course) you could
just fill the list with addtail and shorten it on demand of free pages with
remhead (hope my short-terms are understandable). This implements a _very_
simple aging based on only the age of the allocation and nothing else (FIFO).
You can spend any time and brain in refining the strategy without ever touching
the vm basics _and_ (because of the simple and clean interface between (1) and
(2), you got no chance to screw things up (unless you do not drop entries in a
bug-implementation)). No obvious need for patches or weird workarounds.

Your opinion?

Regards,
Stephan



  reply	other threads:[~2001-09-21 12:56 UTC|newest]

Thread overview: 133+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-09-16 15:19 broken VM in 2.4.10-pre9 Ricardo Galli
2001-09-16 15:23 ` Michael Rothwell
2001-09-16 16:33   ` Rik van Riel
2001-09-16 16:50     ` Andreas Steinmetz
2001-09-16 17:12       ` Ricardo Galli
2001-09-16 17:06     ` Ricardo Galli
2001-09-16 17:18       ` Jeremy Zawodny
2001-09-16 18:16       ` Stephan von Krawczynski
2001-09-16 18:45         ` Stephan von Krawczynski
2001-09-21  3:16           ` Bill Davidsen
2001-09-21 10:21             ` Stephan von Krawczynski
2001-09-21 14:08               ` Bill Davidsen
2001-09-21 14:23                 ` Rik van Riel
2001-09-23 13:13                   ` Eric W. Biederman
2001-09-23 13:27                     ` Rik van Riel
2001-09-21 10:43             ` Stephan von Krawczynski
2001-09-21 12:13               ` Rik van Riel
2001-09-21 12:55                 ` Stephan von Krawczynski [this message]
2001-09-21 13:01                   ` Rik van Riel
2001-09-22 11:01               ` Daniel Phillips
2001-09-22 20:05                 ` Rik van Riel
2001-09-24  9:36                 ` Linux VM design VDA
2001-09-24 11:06                   ` Dave Jones
2001-09-24 12:15                     ` Kirill Ratkin
2001-09-24 13:29                   ` Rik van Riel
2001-09-24 14:05                     ` VDA
2001-09-24 14:37                       ` Rik van Riel
2001-09-24 14:42                       ` Rik van Riel
2001-09-24 18:37                   ` Daniel Phillips
2001-09-24 18:46                     ` Jonathan Morton
2001-09-24 19:16                       ` Daniel Phillips
2001-09-24 19:32                     ` Rik van Riel
2001-09-24 17:27                       ` Rob Landley
2001-09-24 21:48                         ` Rik van Riel
2001-09-25  9:58                       ` Daniel Phillips
2001-09-25 16:03                     ` bill davidsen
2001-09-24 19:11                   ` Dan Mann
2001-09-25 10:55                     ` VDA
2001-09-16 19:43     ` broken VM in 2.4.10-pre9 Linus Torvalds
2001-09-16 19:57       ` Rik van Riel
2001-09-16 20:17       ` Rik van Riel
2001-09-16 20:29       ` Andreas Steinmetz
2001-09-16 21:28         ` Linus Torvalds
2001-09-16 22:47           ` Alex Bligh - linux-kernel
2001-09-16 22:55             ` Linus Torvalds
2001-09-16 22:59           ` Stephan von Krawczynski
2001-09-16 22:14             ` Linus Torvalds
2001-09-16 23:29               ` Stephan von Krawczynski
2001-09-17 15:35               ` Stephan von Krawczynski
2001-09-17 15:51                 ` Linus Torvalds
2001-09-17 16:34                   ` Stephan von Krawczynski
2001-09-17 16:46                     ` Linus Torvalds
2001-09-17 17:20                       ` Stephan von Krawczynski
2001-09-17 17:37                         ` Linus Torvalds
2001-09-17  0:37       ` Daniel Phillips
2001-09-17  1:07         ` Linus Torvalds
2001-09-17  2:23           ` Daniel Phillips
2001-09-17  5:11           ` Jan Harkes
2001-09-17 12:33             ` Daniel Phillips
2001-09-17 12:41               ` Rik van Riel
2001-09-17 14:49                 ` Daniel Phillips
2001-09-17 16:14               ` Jan Harkes
2001-09-17 16:34                 ` Linus Torvalds
2001-09-17 15:38             ` Linus Torvalds
2001-09-17 12:26           ` Rik van Riel
2001-09-17 15:42             ` Linus Torvalds
2001-09-18 12:04               ` Rik van Riel
2001-09-17 17:33             ` Linus Torvalds
2001-09-17 18:07               ` Linus Torvalds
2001-09-18 12:09               ` Rik van Riel
2001-09-21  3:10       ` Bill Davidsen
2001-09-17  8:06     ` Eric W. Biederman
2001-09-17 12:12       ` Rik van Riel
2001-09-17 15:45         ` Eric W. Biederman
  -- strict thread matches above, loose matches on Subject: below --
2001-09-22 19:59 Peter Magnusson
2001-09-22 20:46 ` Jan Harkes
2001-09-22 21:46   ` Peter Magnusson
2001-09-22 19:59 Peter Magnusson
2001-09-22 20:18 ` Rik van Riel
2001-09-19 22:15 Rob Fuller
2001-09-19 22:21 ` David S. Miller
2001-09-19 22:26 ` Christoph Hellwig
2001-09-20  3:16   ` GOTO Masanori
2001-09-20  7:38     ` Christoph Hellwig
2001-09-19 22:30 ` Alan Cox
2001-09-19 22:48 ` Eric W. Biederman
2001-09-19 22:51 ` Bryan O'Sullivan
2001-09-17 15:40 Rob Fuller
2001-09-17 16:03 ` Eric W. Biederman
2001-09-19  9:45   ` Daniel Phillips
2001-09-19 19:45     ` Alan Cox
2001-09-19 21:03       ` Eric W. Biederman
2001-09-19 22:04         ` Alan Cox
2001-09-19 22:26           ` Eric W. Biederman
2001-09-19 23:05           ` Rik van Riel
2001-09-20 11:28           ` Daniel Phillips
2001-09-20 12:06             ` Rik van Riel
2001-09-21  8:13               ` Daniel Phillips
2001-09-21 12:10                 ` Rik van Riel
2001-09-21 15:27                 ` Jan Harkes
2001-09-22  7:09                   ` Daniel Phillips
2001-09-25 11:04                     ` Mike Fedyk
2001-09-20 12:57             ` Alan Cox
2001-09-20 13:40               ` Daniel Phillips
2001-09-24 22:50           ` Pavel Machek
2001-09-26 18:22             ` Marcelo Tosatti
2001-09-26 23:44               ` Pavel Machek
2001-09-27 13:52                 ` Eric W. Biederman
2001-10-01 11:37                 ` Marcelo Tosatti
2001-09-19 23:00         ` Rik van Riel
2001-09-21  8:23           ` Eric W. Biederman
2001-09-21 12:01             ` Rik van Riel
2001-09-22  2:14             ` Alexander Viro
2001-09-22  3:09               ` Rik van Riel
2001-09-21 14:29           ` Gábor Lénárt
2001-09-21 14:35             ` Horst von Brand
2001-09-19 21:37       ` Eric W. Biederman
2001-09-19 21:55         ` David S. Miller
2001-09-20 13:02           ` Rik van Riel
2001-09-16 19:07 vm rewrite ready [Re: broken VM in 2.4.10-pre9] Rik van Riel
2001-09-16 15:19 ` broken VM in 2.4.10-pre9 Phillip Susi
2001-09-16 19:33   ` Jeremy Zawodny
2001-09-16 19:52   ` Rik van Riel
     [not found] <fa.i95if5v.74un2p@ifi.uio.no>
     [not found] ` <fa.gu977tv.1b7u0g9@ifi.uio.no>
2001-09-16 18:06   ` Dan Maas
2001-09-15 22:43 Peter Magnusson
2001-09-15 23:50 ` Jan Harkes
2001-09-16  5:31 ` Linus Torvalds
2001-09-16  8:45   ` Eric W. Biederman
2001-09-17 10:25   ` Tonu Samuel
2001-09-16 16:47     ` Jeremy Zawodny
2001-09-16 18:36       ` Alan Cox
2001-09-16 19:38         ` Linus Torvalds
2001-09-16 19:37     ` Linus Torvalds
2001-09-17 14:04       ` Olaf Zaplinski

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=20010921145556.1f0af431.skraw@ithnet.com \
    --to=skraw@ithnet.com \
    --cc=davidsen@tmr.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=riel@conectiva.com.br \
    /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