All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bernd Schubert <bernd.schubert@fastmail.fm>
To: Eric Sandeen <sandeen@redhat.com>
Cc: "Ted Ts'o" <tytso@mit.edu>, Jonathan Nieder <jrnieder@gmail.com>,
	linux-ext4@vger.kernel.org
Subject: Re: Bug#605009: serious performance regression with ext4
Date: Mon, 29 Nov 2010 17:20:25 +0100	[thread overview]
Message-ID: <201011291720.26440.bernd.schubert@fastmail.fm> (raw)
In-Reply-To: <4CF3CCD3.8040608@redhat.com>

On Monday, November 29, 2010, Eric Sandeen wrote:
> On 11/29/10 9:18 AM, Bernd Schubert wrote:
> > On Monday, November 29, 2010, Ted Ts'o wrote:
> >> By using sync_file_range() first, for all files, this forces the
> >> delayed allocation to be resolved, so all of the block bitmaps, inode
> >> data structures, etc., are updated.  Then on the first fdatasync(),
> >> the resulting journal commit updates all of the block bitmaps and all
> >> of the inode table blocks(), and we're done.  The subsequent
> >> fdatasync() calls become no-ops --- which the ftrace shell script will
> >> show.
> > 
> > Wouldn't it make sense to modify ext4 or even the vfs to do that on
> > close() itself? Most applications expect the file to be on disk after a
> > close anyway
> 
> but those applications would be wrong.

Of course they are, I don't deny that. But denying the most applications 
expect the file to be on disk after a close() also denies reality, in my 
experience.
And IMHO, such temporary files as pointed out by Ted either should go to tmpfs 
or should be specially flagged as something like O_TMP. Unfortunately, that 
changes symantics and so indeed the only way left is to do it the other way 
around as Ted suggested.


Cheers,
Bernd

  reply	other threads:[~2010-11-29 16:20 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20101126093257.23480.86900.reportbug@pluto.milchstrasse.xx>
     [not found] ` <20101126145327.GB19399@rivendell.home.ouaza.com>
     [not found]   ` <20101126215254.GJ2767@thunk.org>
     [not found]     ` <20101127075831.GC24433@burratino>
     [not found]       ` <20101127085346.GD14011@rivendell.home.ouaza.com>
     [not found]         ` <20101129041152.GQ2767@thunk.org>
2010-11-29  7:29           ` Bug#605009: serious performance regression with ext4 Jonathan Nieder
2010-11-29 14:44             ` Ted Ts'o
2010-11-29 15:18               ` Bernd Schubert
2010-11-29 15:37                 ` Ted Ts'o
2010-11-29 15:54                 ` Eric Sandeen
2010-11-29 16:20                   ` Bernd Schubert [this message]
2010-11-29 16:27                 ` Florian Weimer
2010-11-29 20:50                 ` Andreas Dilger

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=201011291720.26440.bernd.schubert@fastmail.fm \
    --to=bernd.schubert@fastmail.fm \
    --cc=jrnieder@gmail.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=sandeen@redhat.com \
    --cc=tytso@mit.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.