All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Stephen C. Tweedie" <sct@redhat.com>
To: Russell Cattelan <cattelan@thebarn.com>
Cc: "Stephen C. Tweedie" <sct@redhat.com>,
	Alexander Viro <viro@math.psu.edu>,
	Linus Torvalds <torvalds@transmeta.com>,
	linux-kernel@vger.kernel.org
Subject: Re: Test12 ll_rw_block error.
Date: Mon, 18 Dec 2000 11:44:04 +0000	[thread overview]
Message-ID: <20001218114404.D21351@redhat.com> (raw)
In-Reply-To: <Pine.LNX.4.10.10012142208420.1308-100000@penguin.transmeta.com> <Pine.GSO.4.21.0012150150570.11106-100000@weyl.math.psu.edu> <20001215105148.E11931@redhat.com> <3A3C11F2.130DE89E@thebarn.com>
In-Reply-To: <3A3C11F2.130DE89E@thebarn.com>; from cattelan@thebarn.com on Sat, Dec 16, 2000 at 07:08:02PM -0600

Hi,

On Sat, Dec 16, 2000 at 07:08:02PM -0600, Russell Cattelan wrote:
> > There is a very clean way of doing this with address spaces.  It's
> > something I would like to see done properly for 2.5: eliminate all
> > knowledge of buffer_heads from the VM layer.  It would be pretty
> > simple to remove page->buffers completely and replace it with a
> > page->private pointer, owned by whatever address_space controlled the
> > page.  Instead of trying to unmap and flush buffers on the page
> > directly, these operations would become address_space operations.
> 
> Yes this is a lot of what page buf would like to do eventually.
> Have the VM system pressure page_buf for pages which would
> then be able to intelligently call the file system to free up cached pages.
> A big part of getting Delay Alloc to not completely consume all the
> system pages, is being told when it's time to start really allocating disk
> space and push pages out.

Delayed allocation is actually much easier, since it's entirely an
operation on logical page addresses, not physical ones --- by
definition you don't have any buffer_heads yet because you haven't
decided on the disk blocks.  If you're just dealing with pages, not
blocks, then the address_space is the natural way of dealing with it
already.  

Only the full semantics of the flush callback have been missing to
date, and with 2.4.0-test12 even that is mostly solved, since
page_launder will give you the writeback() callbacks you need to flush
things to disk when you start getting memory pressure.  You can even
treat the writepage() as an advisory call.  

--Stephen
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

  reply	other threads:[~2000-12-18 12:18 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <3A398F84.2CD3039D@thebarn.com>
2000-12-15  6:20 ` Test12 ll_rw_block error Linus Torvalds
2000-12-15  7:00   ` Alexander Viro
2000-12-15  9:14     ` Chris Mason
2000-12-17  0:54       ` Russell Cattelan
2000-12-17 12:20         ` Chris Mason
2000-12-15 10:51     ` Stephen C. Tweedie
2000-12-15 19:04       ` Linus Torvalds
2000-12-17  1:08       ` Russell Cattelan
2000-12-18 11:44         ` Stephen C. Tweedie [this message]
2000-12-17  2:38       ` Marcelo Tosatti
2000-12-18 11:46         ` Stephen C. Tweedie
2000-12-19 14:05           ` Marcelo Tosatti
2000-12-19 16:43             ` Daniel Phillips
2000-12-19 17:18               ` Marcelo Tosatti
2000-12-19 17:40               ` Christoph Hellwig
2000-12-21 23:25           ` [RFC] changes to buffer.c (was Test12 ll_rw_block error) Chris Mason
2000-12-22  0:19             ` Marcelo Tosatti
2000-12-22  2:20               ` Andreas Dilger
2000-12-22  0:38                 ` Marcelo Tosatti
2000-12-22 13:56                   ` Chris Mason
2000-12-22 16:45                     ` Daniel Phillips
2000-12-22 19:35                       ` Chris Mason
2000-12-22 15:07                   ` Chris Mason
2000-12-22 19:52                     ` Marcelo Tosatti
2000-12-22 23:18                       ` Chris Mason
2000-12-22 23:26                         ` Marcelo Tosatti
2000-12-23 18:21                           ` Chris Mason
2000-12-23 19:02                             ` Linus Torvalds
2000-12-23 19:25                               ` Chris Mason
2000-12-23 15:47                         ` Daniel Phillips
2000-12-27  0:57                       ` Chris Mason
2000-12-26 23:18                         ` Marcelo Tosatti
2000-12-27 20:26                         ` Daniel Phillips
2000-12-27 20:49                           ` Chris Mason
2000-12-28 15:49                             ` Daniel Phillips
2000-12-28 19:19                               ` Chris Mason
2000-12-28 19:29                                 ` Linus Torvalds
2000-12-29 16:03                                   ` Chris Mason
2000-12-29 16:21                                     ` Marcelo Tosatti
2000-12-29 18:33                                       ` Alexander Viro
2001-01-05 15:54                                         ` Chris Mason
2001-01-05 15:43                                           ` Marcelo Tosatti
2001-01-05 17:49                                             ` Daniel Phillips
2001-01-05 17:52                                             ` Chris Mason
2001-01-05 19:51                                             ` Chris Mason
2001-01-05 18:32                                               ` Marcelo Tosatti
2001-01-05 20:29                                                 ` Rik van Riel
2001-01-05 18:43                                                   ` Marcelo Tosatti
2001-01-05 20:37                                                     ` Rik van Riel
2001-01-05 21:08                                                 ` Chris Mason
2001-01-05 18:09                                           ` Juergen Schneider
2000-12-29 17:58                                     ` Daniel Phillips
2001-01-02 15:49                                       ` Chris Mason
2000-12-22  1:54             ` Alexander Viro
2000-12-22 13:49               ` Chris Mason
2000-12-17  0:51     ` Test12 ll_rw_block error Russell Cattelan
2000-12-17  0:21   ` Russell Cattelan
2000-12-16  0:58 Jeff Chua
2000-12-16  1:12 ` Linus Torvalds
2000-12-16 17:13   ` Chris Mason
2000-12-16 19:07     ` Linus Torvalds
2000-12-16 19:35       ` Chris Mason
     [not found] <3A398D58.92BBC9A4@thebarn.com>
2000-12-15  3:28 ` Linus Torvalds
  -- strict thread matches above, loose matches on Subject: below --
2000-12-15  2:02 Russell Cattelan
2000-12-15  2:48 ` Linus Torvalds

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=20001218114404.D21351@redhat.com \
    --to=sct@redhat.com \
    --cc=cattelan@thebarn.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.com \
    --cc=viro@math.psu.edu \
    /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.