linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Robert Love <rml@tech9.net>
To: Chris Wedgwood <cw@f00f.org>
Cc: linux-kernel@vger.kernel.org, akpm@digeo.com
Subject: Re: [PATCH] O_STREAMING - flag for optimal streaming I/O
Date: 08 Oct 2002 15:59:50 -0400	[thread overview]
Message-ID: <1034107190.29467.1533.camel@phantasy> (raw)
In-Reply-To: <20021008195223.GA5040@tapu.f00f.org>

On Tue, 2002-10-08 at 15:52, Chris Wedgwood wrote:

> On Tue, Oct 08, 2002 at 03:17:16PM -0400, Robert Love wrote:
> 
> > Yep.  Linux treats most "hints" (e.g. madvise) as a requirement - it
> > fails if it cannot do it.  That is against the spec most of the
> > time, but oh well...
> 
> There is no spec for O_DIRECT... SGI 'invented' this in '93 or perhaps
> earlier (but the idea wasn't new) for IRIX.

I was speaking more of madvise() and in general.  I know O_DIRECT does
not have a spec.  In general, Linux returns failures on things that many
other operating systems just consider hints (i.e. madvise()).

> O_DIRECT is a very special thing, you shouldn't ask for this unless
> yoy know you want it and how to deal with it --- treating it as
> anything less that a requirement is bogus IMO.

Agreed.  Partly why O_STREAMING is needed.

Remember not everything implements O_DIRECT, especially not some odd
device you are streaming into/out of.

I think Andrew summed it up: if O_DIRECT will work in your environment,
and you can rewrite your application, it is probably preferred. 
O_STREAMING is a simple solution to solve the pagecache waste which
requires one change to the application.

I did not intend for this to be an O_DIRECT vs. O_STREAMING thread.  A
lot of people agree we need something like O_STREAMING - despite never
being implemented, you can find its name referenced often in archives
via google.  A much more interesting argument is whether we should not
have an explicit O_STREAMING but instead an intelligent drop-behind
heuristic... but that is a 2.5 issue and the patch is for 2.4.

20% increase in kernel compilation is amazingly nice, for free.

	Robert Love


  reply	other threads:[~2002-10-08 19:59 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-10-08  2:38 [PATCH] O_STREAMING - flag for optimal streaming I/O Robert Love
2002-10-08 10:42 ` J.A. Magallon
2002-10-08 18:08   ` Robert Love
2002-10-08 18:38 ` Chris Wedgwood
2002-10-08 18:49   ` Robert Love
2002-10-08 19:05     ` Chris Wedgwood
2002-10-08 19:17       ` Robert Love
2002-10-08 19:30         ` Andrew Morton
2002-10-09 14:14           ` Marco Colombo
2002-10-09 16:30           ` kernel
2002-10-08 19:52         ` Chris Wedgwood
2002-10-08 19:59           ` Robert Love [this message]
2002-10-08 20:01             ` Chris Wedgwood
2002-10-09  8:33         ` Giuliano Pochini
2002-10-09  8:43           ` Andrew Morton
2002-10-09 10:55             ` Giuliano Pochini
2002-10-09 17:05           ` Mark Mielke
2002-10-09 19:36             ` Giuliano Pochini
2002-10-09 22:24               ` Mark Mielke
2002-10-09 23:20                 ` Jamie Lokier
2002-10-10  3:07                   ` Mark Mielke
2002-10-10 10:55                     ` Helge Hafting
2002-10-10 17:50                       ` Mark Mielke
2002-10-10  3:29                   ` Erik Andersen
2002-10-10  3:37                     ` Robert Love
2002-10-10 13:39                       ` Giuliano Pochini
2002-10-10 22:50                         ` Mike Fedyk
2002-10-10 22:58                           ` Erik Andersen
2002-10-11  8:26                           ` Giuliano Pochini
2002-10-11  8:32                           ` Helge Hafting
2002-10-10  8:33                     ` Giuliano Pochini
2002-10-10  9:10                       ` Erik Andersen
2002-10-10  9:38                         ` Giuliano Pochini
2002-10-10 10:40                           ` Miquel van Smoorenburg
2002-10-10 11:01                           ` Helge Hafting
2002-10-10 12:29                             ` Xavier Bestel
2002-10-10 13:17                             ` Giuliano Pochini
2002-10-10 22:44                               ` Mike Fedyk
2002-10-11  8:13                                 ` Giuliano Pochini
2002-10-10 11:38                     ` O_STREAMING has insufficient info - how about fadvise() ? Alan Cox
2002-10-10 11:47                       ` William Lee Irwin III
2002-10-10 15:34                       ` Andrew Morton
2002-10-10 16:08                         ` Alan Cox
2002-10-10 16:49                         ` Oliver Xymoron
2002-10-10 15:37                     ` [PATCH] O_STREAMING - flag for optimal streaming I/O Gerhard Mack
2002-10-10 22:47                       ` Mike Fedyk
2002-10-11  2:14                         ` Gerhard Mack
2002-10-11  8:10                           ` Chris Wedgwood
2002-10-10  9:14                 ` David Lang
2002-10-10 14:51               ` Denis Vlasenko
2002-10-08 19:53       ` Matthias Schniedermeyer
2002-10-08 19:59         ` Chris Wedgwood
2002-10-08 20:03         ` Andrew Morton
2002-10-08 20:34           ` Matthias Schniedermeyer
2002-10-08 20:42             ` Andrew Morton
2002-10-08 20:37           ` Larry McVoy
2002-10-09 11:53 ` Roy Sigurd Karlsbakk
2002-10-09 14:10 ` Marco Colombo
2002-10-09 14:14   ` Robert Love
2002-10-09 14:33     ` Richard B. Johnson
2002-10-09 15:27     ` Andreas Dilger
2002-10-09 23:17       ` Jamie Lokier
2002-10-09 23:46       ` Rik van Riel
2002-10-10  0:16         ` Jamie Lokier
2002-10-10  2:39           ` Erik Andersen
2002-10-10 10:33         ` Marco Colombo
2002-10-10 20:00           ` Erik Andersen
2002-10-11  4:16 Hank Leininger

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=1034107190.29467.1533.camel@phantasy \
    --to=rml@tech9.net \
    --cc=akpm@digeo.com \
    --cc=cw@f00f.org \
    --cc=linux-kernel@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).