public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Theodore Tso <tytso@mit.edu>
To: Matthew Garrett <mjg59@srcf.ucam.org>
Cc: david@lang.hm, Sitsofe Wheeler <sitsofe@yahoo.com>,
	"Andreas T.Auer" <andreas.t.auer_lkml_73537@ursus.ath.cx>,
	Alberto Gonzalez <info@gnebu.es>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: Ext4 and the "30 second window of death"
Date: Fri, 3 Apr 2009 00:54:14 -0400	[thread overview]
Message-ID: <20090403045414.GL9870@mit.edu> (raw)
In-Reply-To: <20090403013603.GA10886@srcf.ucam.org>

On Fri, Apr 03, 2009 at 02:36:03AM +0100, Matthew Garrett wrote:
> > if spinning down a drive saves so little power that it wouldn't make a 
> > significant difference to battery lift to leave it on, why does anyone 
> > bother to spin the drive down?
> 
> There's various circumstances in which it's beneficial. The difference 
> between an optimal algorithm for typical use and an optimal algorithm 
> for typical use where there's an fsync() every 5 minutes isn't actually 
> that great.

More to the point, if an application is insane enough to push 2.5
megabytes to disk every single time you click on a web page (this is
excluding the cache; I had my firefox cache pointed at /tmp when I did
this measurement), *and* you are running the WiFi for the browser,
*and* the browser is running flash applications, etc., whether you
defer the writes or not, you're going to be burning a lot of power.
Fundamentally, if an application needs to be writing hundreds of files
or hundreds of kilibytes or more of data all the time, there's
something wrong with the application.

If some KDE applications needs to rewrite hundreds of files at desktop
startup, when the user hasn't even changed any configuration options
yet (this is that desktop **startup**, mind you, where this was
reported), then you're going to burning a lot of power.  Anything we
do at the filesystem level is really going to be at the margins.

The annoying thing is the applications programmers aren't willing to
fix their d*mn applications, and instead heap all of the blame on the
filesystem.  I will be the first to admit that filesystem designers
have to do their part, and once I realized how bad and sloppy people
had gotten with fsync(), and needlessly rewriting files, I implemented
the ext4 workaround patches *first*.  I only started talking about how
application programmers might make changes to obey the established
standards and work with other filesystems after I had put my own house
in order.  These are system-wide problems we are talking about, that
will require system-wide solutions.  I can provide workarounds for
existing application behaviours, but claiming that applications can
never change, and we must always accomodate the way applications are
currently working and are designed is going to be a losing strategy
for us all.

    	       	  	      	   - Ted

  parent reply	other threads:[~2009-04-03  4:54 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-29 10:24 Ext4 and the "30 second window of death" Alberto Gonzalez
2009-03-31 12:25 ` Theodore Tso
2009-03-31 12:52   ` Alberto Gonzalez
2009-03-31 13:45     ` Theodore Tso
2009-03-31 14:45       ` Alberto Gonzalez
2009-04-01  0:04         ` Theodore Tso
2009-04-01  1:14           ` Alberto Gonzalez
2009-03-31 22:02       ` Alberto Gonzalez
2009-03-31 23:22         ` Andreas T.Auer
2009-04-01  1:25           ` Alberto Gonzalez
2009-04-01  1:50           ` Theodore Tso
2009-04-01  5:20             ` Sitsofe Wheeler
2009-04-01 15:12               ` Matthew Garrett
2009-04-01 17:35                 ` Theodore Tso
2009-04-01 17:43                   ` Matthew Garrett
2009-04-01 21:21                     ` Ray Lee
2009-04-01 21:26                       ` Matthew Garrett
2009-04-02 11:25                       ` Sitsofe Wheeler
2009-04-02 18:22                     ` david
2009-04-02 18:29                       ` Matthew Garrett
2009-04-02 18:44                         ` david
2009-04-02 20:07                           ` Ray Lee
2009-04-02 20:59                             ` Andreas T.Auer
2009-04-02 23:38                               ` Theodore Tso
2009-04-03  0:00                                 ` Matthew Garrett
2009-04-03  7:33                                 ` Pavel Machek
2009-04-03  8:14                                 ` Andreas T.Auer
2009-04-02 22:36                           ` Bron Gondwana
2009-04-02 23:46                           ` Matthew Garrett
2009-04-03  0:55                             ` david
2009-04-03  1:06                               ` Matthew Garrett
2009-04-03  1:16                                 ` david
2009-04-03  1:19                                   ` Matthew Garrett
2009-04-03  1:24                                     ` david
2009-04-03  1:36                                       ` Matthew Garrett
2009-04-03  3:08                                         ` david
2009-04-03 13:42                                           ` Matthew Garrett
2009-04-03  4:54                                         ` Theodore Tso [this message]
2009-04-03 11:09                                           ` Sitsofe Wheeler
2009-04-03 13:07                                           ` Alberto Gonzalez
2009-04-03 13:45                                           ` Matthew Garrett
2009-04-02 18:34                       ` Nick Piggin
2009-04-02 18:38                         ` Matthew Garrett
2009-04-02 18:56                           ` Nick Piggin
2009-04-02 23:47                             ` Matthew Garrett
2009-04-03  0:59                               ` david
2009-04-03  1:09                                 ` Matthew Garrett
2009-04-03  1:17                                   ` david
2009-04-03  1:22                                     ` Matthew Garrett
2009-04-03  2:22                             ` Ric Wheeler
2009-04-02 21:47                         ` david
2009-04-06 21:32                     ` supporting laptops fs-semantic changes (was Re: Ext4 and the "30 second window of death") Linda Walsh
2009-04-02 11:37                   ` Ext4 and the "30 second window of death" Sitsofe Wheeler
2009-04-01  8:51             ` Andreas T.Auer
2009-04-03  7:13   ` Bojan Smojver
2009-04-05  4:07     ` Bojan Smojver
2009-04-05  4:51       ` Bojan Smojver
2009-04-05  5:41       ` Bojan Smojver
2009-04-05 17:27   ` Ed Tomlinson
  -- strict thread matches above, loose matches on Subject: below --
2009-04-05 18:13 Tomasz Chmielewski

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=20090403045414.GL9870@mit.edu \
    --to=tytso@mit.edu \
    --cc=andreas.t.auer_lkml_73537@ursus.ath.cx \
    --cc=david@lang.hm \
    --cc=info@gnebu.es \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mjg59@srcf.ucam.org \
    --cc=sitsofe@yahoo.com \
    /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