linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "Stephen C. Tweedie" <sct@redhat.com>
To: Hans Reiser <hans@reiser.to>
Cc: Rik van Riel <riel@conectiva.com.br>,
	"Stephen C. Tweedie" <sct@redhat.com>, bert hubert <ahu@ds9a.nl>,
	linux-kernel@vger.rutgers.edu, Chris Mason <mason@suse.com>,
	linux-mm@kvack.org,
	Alexander Zarochentcev <zam@odintsovo.comcor.ru>
Subject: Re: journaling & VM  (was: Re: reiserfs being part of the kernel: it'snot just the code)
Date: Wed, 7 Jun 2000 12:12:43 +0100	[thread overview]
Message-ID: <20000607121243.F29432@redhat.com> (raw)
In-Reply-To: <393DA31A.358AE46D@reiser.to>; from hans@reiser.to on Tue, Jun 06, 2000 at 06:19:22PM -0700

Hi,

On Tue, Jun 06, 2000 at 06:19:22PM -0700, Hans Reiser wrote:
> 
> There are two issues to address:
> 
> 1) If a buffer needs to be flushed to disk, how do we let the FS flush
> everything else that it is optimal to flush at the same time as that buffer. 
> zam's allocate on flush code addresses that issue for reiserfs, and he has some
> general hooks implemented also.  He is guessed to be two weeks away.

That's easy to deal with using address_space callbacks from shrink_mmap.
shrink_mmap just calls into the filesystem to tell it that something
needs to be done.  The filesystem can, in response, flush as much data
as it wants to in addition to the page requested --- or can flush none
at all if the page is pinned.  The address_space callbacks should be
thought of as hints from the VM that the filesystem needs to do 
something.  shrink_mmap will keep on trying until it finds something
to free if nothing happens on the first call.

> 2) If multiple kernel subsystem page pinners pin memory, how do we keep them
> from deadlocking.  Chris as you know is the reiserfs guy for that.

Use reservations.  That's the point --- you reserve in advance, so that 
the VM can *guarantee* that you can continue to pin more pages up to
the maximum you have reserved.  You take a reservation before starting
a fs operation, so that if you need to block, it doesn't prevent the
running transaction from being committed.

Cheers,
 Stephen
--
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.eu.org/Linux-MM/

  parent reply	other threads:[~2000-06-07 11:12 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <Pine.LNX.4.10.10006060811120.15888-100000@dax.joh.cam.ac.uk>
     [not found] ` <393CA40C.648D3261@reiser.to>
     [not found]   ` <20000606114851.A30672@home.ds9a.nl>
     [not found]     ` <393CBBB8.554A0D2A@reiser.to>
     [not found]       ` <20000606172606.I25794@redhat.com>
     [not found]         ` <393D37D1.1BC61DC3@reiser.to>
     [not found]           ` <20000606205447.T23701@redhat.com>
2000-06-06 23:06             ` journaling & VM (was: Re: reiserfs being part of the kernel: it's not " Rik van Riel
2000-06-07  1:19               ` journaling & VM (was: Re: reiserfs being part of the kernel: it'snot " Hans Reiser
2000-06-07  1:46                 ` Quintela Carreira Juan J.
2000-06-07  3:45                   ` Hans Reiser
2000-06-07 11:15                     ` Stephen C. Tweedie
2000-06-07 13:23                       ` Rik van Riel
2000-06-07 13:41                         ` Stephen C. Tweedie
2000-06-07 14:27                           ` Rik van Riel
2000-06-07 14:46                             ` Stephen C. Tweedie
2000-06-07 14:51                               ` bert hubert
2000-06-07 15:20                               ` Quintela Carreira Juan J.
2000-06-07 15:35                                 ` Stephen C. Tweedie
2000-06-07 15:41                                   ` Rik van Riel
2000-06-07 15:44                                   ` Juan J. Quintela
2000-06-07 17:10                                   ` Jeff V. Merkey
2000-06-07 17:14                                     ` Stephen C. Tweedie
2000-06-07 17:21                                       ` Jeff V. Merkey
2000-06-07 20:16                                   ` Hans Reiser
2000-06-07 21:20                                     ` Rik van Riel
2000-06-07 21:52                                       ` journaling & VM Hans Reiser
2000-06-07 22:11                                         ` James Sutherland
2000-06-07 22:29                                           ` Rik van Riel
2000-06-08  1:11                                         ` Neil Schemenauer
2000-06-08  1:29                                           ` Rik van Riel
2000-06-07 20:16                                 ` journaling & VM (was: Re: reiserfs being part of the kernel: it'snot just the code) Hans Reiser
2000-06-07 20:54                                   ` Stephen C. Tweedie
2000-06-07 21:29                                     ` Hans Reiser
2000-06-07 21:31                                       ` Rik van Riel
2000-06-07 21:33                                       ` Stephen C. Tweedie
2000-06-07 22:20                                         ` journaling & VM Hans Reiser
2000-06-07 21:50                                       ` journaling & VM (was: Re: reiserfs being part of the kernel: it'snot just the code) Juan J. Quintela
2000-06-07 19:02                         ` journaling & VM (was: Re: reiserfs being part of the kernel:it'snot " Hans Reiser
2000-06-07 13:40                       ` journaling & VM (was: Re: reiserfs being part of the kernel: it'snot " Chris Mason
2000-06-07 13:47                         ` Stephen C. Tweedie
2000-06-07 11:12                 ` Stephen C. Tweedie [this message]
2000-06-07 16:35                   ` journaling & VM John Fremlin
2000-06-07 17:11                     ` Stephen C. Tweedie
     [not found]                       ` <20000608114435.A15433@uni-koblenz.de>
2000-06-08 21:29                         ` Stephen C. Tweedie
2000-06-09 11:53                           ` Ralf Baechle
2000-06-07 17:48                   ` journaling & VM (was: Re: reiserfs being part of the kernel: it'snot just the code) Hans Reiser
2000-06-07 18:01                     ` Rik van Riel
2000-06-07 19:58                       ` Stephen C. Tweedie
2000-06-07 20:56                         ` Juan J. Quintela
2000-06-07 21:14                           ` Rik van Riel
2000-06-07 21:24                           ` Stephen C. Tweedie
2000-06-07 21:40                             ` Juan J. Quintela
2000-06-07 21:49                               ` Stephen C. Tweedie
2000-06-07 22:00                                 ` Juan J. Quintela
2000-06-07 22:22                                 ` Manfred Spraul
2000-06-09 15:08                                   ` Rik van Riel
2000-06-09 16:52                                     ` Manfred Spraul
2000-06-09 17:23                                       ` Rik van Riel
2000-06-09 18:26                                         ` journaling & VM (was: Re: reiserfs being part of the kernel:it'snot " Manfred Spraul
2000-06-07 22:28                                 ` journaling & VM (was: Re: reiserfs being part of the kernel: it'snot " Hans Reiser
2000-06-07 10:10               ` journaling & VM (was: Re: reiserfs being part of the kernel: it's not " Stephen C. Tweedie
     [not found]             ` <393DACC8.5DB60A81@reiser.to>
2000-06-07 11:00               ` reiserfs being part of the kernel: it's not just the code Stephen C. Tweedie
2000-06-07 17:11                 ` Rik van Riel
2000-06-07 17:13                   ` Stephen C. Tweedie
2000-06-07 17:46                 ` Hans Reiser
2000-06-07 19:53                   ` Stephen C. Tweedie

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=20000607121243.F29432@redhat.com \
    --to=sct@redhat.com \
    --cc=ahu@ds9a.nl \
    --cc=hans@reiser.to \
    --cc=linux-kernel@vger.rutgers.edu \
    --cc=linux-mm@kvack.org \
    --cc=mason@suse.com \
    --cc=riel@conectiva.com.br \
    --cc=zam@odintsovo.comcor.ru \
    /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