public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@zip.com.au>
To: Daniel Phillips <phillips@bonn-fries.net>
Cc: Bill Davidsen <davidsen@tmr.com>, lkml <linux-kernel@vger.kernel.org>
Subject: Re: [patch] sys_sync livelock fix
Date: Wed, 13 Feb 2002 17:29:08 -0800	[thread overview]
Message-ID: <3C6B12E4.E3BC9881@zip.com.au> (raw)
In-Reply-To: <Pine.LNX.3.96.1020213170030.12448F-100000@gatekeeper.tmr.com> <E16bA59-0002Qa-00@starship.berlin> <3C6B0A70.D11DFC2A@zip.com.au>, <3C6B0A70.D11DFC2A@zip.com.au> <E16bAgV-0002R2-00@starship.berlin>

Daniel Phillips wrote:
> 
> On February 14, 2002 01:53 am, Andrew Morton wrote:
> > Daniel Phillips wrote:
> > >
> > > What's the theory behind writing the data both before and after the commit?
> >
> > see fsync_dev().  It starts I/O against existing dirty data, then
> > does various fs-level syncy things which can produce more dirty
> > data - this is where ext3 runs its commit, via brilliant reverse
> > engineering of its calling context :-(.
> 
> OK, so it sounds like cleaning that up with an ext3-specific super->sync would
> be cleaner for what it's worth, and save a little cpu.

Oh, having a filesystem sync entry point is much more than
a little cleanup.  It's quite important.  In current kernels
the same code path is used for both sync() and for periodic
kupdate writeback.  It's not possible for the filesystem
to know which context it's being called in, and we do want
different behaviour.

We want the sys_sync() path to wait on writeout, but it's
silly to make the kupdate path do that.


> > It then again starts I/O against new dirty data then waits on it again.  And
> > then again.  There's quite a lot of overkill there.  But that's OK, as long
> > as it terminates sometime.
> 
> /me doesn't comment

That's odd.

-

:)

  reply	other threads:[~2002-02-14  1:30 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-12 23:13 [patch] sys_sync livelock fix Andrew Morton
2002-02-12 23:31 ` Alan Cox
2002-02-12 23:22   ` Andrew Morton
2002-02-13  0:28     ` Alan Cox
2002-02-13  3:28       ` Bill Davidsen
2002-02-13  3:46         ` Jeff Garzik
2002-02-13 15:11           ` Daniel Phillips
2002-02-13 22:24             ` Bill Davidsen
2002-02-13 22:41               ` Mike Fedyk
2002-02-14  0:26               ` Daniel Phillips
2002-02-14  0:37                 ` Andrew Morton
2002-02-14  0:49                   ` Daniel Phillips
2002-02-14  0:53                     ` Andrew Morton
2002-02-14  1:27                       ` Daniel Phillips
2002-02-14  1:29                         ` Andrew Morton [this message]
2002-02-14  1:59                     ` Mike Fedyk
2002-02-14  2:07                       ` Daniel Phillips
2002-02-13 23:31             ` Rob Landley
2002-02-14  0:44               ` Daniel Phillips
2002-02-12 23:29   ` Rik van Riel
2002-02-13  0:25     ` Alan Cox
2002-02-13  0:15       ` Rik van Riel
2002-02-13  0:36         ` Alan Cox
2002-02-13  0:36           ` Rik van Riel
2002-02-13  0:39           ` Andrew Morton
2002-02-13  3:42             ` Bill Davidsen
2002-02-13  3:54             ` Bill Davidsen
2002-02-13  4:01               ` Jeff Garzik
2002-02-13  4:53                 ` Bill Davidsen
2002-02-13 15:17                 ` Daniel Phillips
2002-02-13  4:29               ` Andrew Morton
2002-02-13  5:21                 ` Bill Davidsen
2002-02-13  5:35                   ` Andrew Morton
2002-02-18  2:29                     ` Bill Davidsen
2002-02-13 14:09                   ` bill davidsen
2002-02-13 15:29                   ` Daniel Phillips
2002-02-13 22:53                     ` Bill Davidsen
2002-02-14  0:33                       ` Daniel Phillips
2002-02-13  1:36 ` What is a livelock? (was: [patch] sys_sync livelock fix) Olaf Dietsche
2002-02-13  1:56   ` Andrew Morton
2002-02-13  2:30     ` Olaf Dietsche
2002-02-13  2:39       ` Andrew Morton
2002-02-13 16:19         ` Olaf Dietsche
2002-02-13  2:52       ` William Lee Irwin III
2002-02-18 22:19       ` David Schwartz
2002-02-13  2:33   ` Rob Landley
  -- strict thread matches above, loose matches on Subject: below --
2002-02-13  9:18 [patch] sys_sync livelock fix Andries.Brouwer
2002-02-14  0:57 Andries.Brouwer

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=3C6B12E4.E3BC9881@zip.com.au \
    --to=akpm@zip.com.au \
    --cc=davidsen@tmr.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=phillips@bonn-fries.net \
    /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