From: Matthew Garrett <mjg59@srcf.ucam.org>
To: david@lang.hm
Cc: Theodore Tso <tytso@mit.edu>, 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:46:17 +0100 [thread overview]
Message-ID: <20090402234617.GB9538@srcf.ucam.org> (raw)
In-Reply-To: <alpine.DEB.1.10.0904021134560.28893@asgard.lang.hm>
On Thu, Apr 02, 2009 at 11:44:20AM -0700, david@lang.hm wrote:
> On Thu, 2 Apr 2009, Matthew Garrett wrote:
> >The solution to "fsync() causes disk spinups" isn't "ignore fsync()".
> >It's "ensure that applications only use fsync() when they really need
> >it", which requires us to also be able to say "fsync() should not be
> >required to ensure that events occur in order".
>
> ignore the issue of order on the local disk for the moment.
>
> what should an application do to make sure it's data isn't lost?
fsync().
> however, some (many, most??) users would probably be willing to loose a
> little e-mail to gain a significant increase in battery life on their
> laptops.
Then they shouldn't use a mail client that fsync()s.
> today they have no choice (other than picking a mail client that doesn't
> try to protect it's local data)
>
> with the proposed addition to laptop mode (delaying fsync until the disk
> is awake), the user (or more precisely the admin) gains the ability to
> define this trade-off rather than depending on the application developers
> all doing this right.
No. Ignoring fsync() makes it difficult for an application to
inappropriately spin up a disk - but it also makes it *impossible* for
an application to save data that it genuinely needs to. Doing this in
kernel means that you have no granularity. You ignore the inappropriate
fsync()s, but you also ignore the ones that are vitally important. I've
no objection to the kernel supporting this functionality, but it should
be /proc/sys/vm/fuck-my-data-harder rather than
/proc/sys/vm/laptop-mode.
Power management is a tradeoff. Sometimes providing correct
functionality costs more than providing incorrect functionality. In
general we strive to carry on providing applications the behaviour they
expect even if it costs us more power - the alternative leads to users
disabling power management functionality because they can't trust it.
Throwing data away isn't an acceptable tradeoff for an extra three
minutes of battery life for most users.
--
Matthew Garrett | mjg59@srcf.ucam.org
next prev parent reply other threads:[~2009-04-02 23:46 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 [this message]
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
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=20090402234617.GB9538@srcf.ucam.org \
--to=mjg59@srcf.ucam.org \
--cc=andreas.t.auer_lkml_73537@ursus.ath.cx \
--cc=david@lang.hm \
--cc=info@gnebu.es \
--cc=linux-kernel@vger.kernel.org \
--cc=sitsofe@yahoo.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox