public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Valdis.Kletnieks@vt.edu
To: "D. Jansen" <d.g.jansen@googlemail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>,
	linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
	tytso@mit.edu
Subject: Re: [rfc] Ignore Fsync Calls in Laptop_Mode
Date: Fri, 20 May 2011 11:34:47 -0400	[thread overview]
Message-ID: <9885.1305905687@localhost> (raw)
In-Reply-To: Your message of "Thu, 19 May 2011 17:02:21 +0200." <BANLkTikuEERvEnBvm9-zHy2Uoc=4PUwHjQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1693 bytes --]

On Thu, 19 May 2011 17:02:21 +0200, "D. Jansen" said:
> On Thu, May 19, 2011 at 3:43 PM, Alan Cox <alan@lxorguk.ukuu.org.uk> wrote:
> > That at least cuts down most failures (but not all - eg commits with a network
> > component such as email receives)
>
> I don't understand your email example.

If you don't understand Alan's example, maybe you shouldn't be messing with
code that's used for correctness guarantees.  But I'll spell it out for you:

You turn on laptop mode.  You check your mail.  You download 5 new messages,
which your laptop then *assures* the mail server "I've got them, we're cool".
Now, this is a pretty heavy responsibility (for example, RFC2821 says this:

6.1 Reliable Delivery and Replies by Email

   When the receiver-SMTP accepts a piece of mail (by sending a "250 OK"
   message in response to DATA), it is accepting responsibility for
   delivering or relaying the message.  It must take this responsibility
   seriously.  It MUST NOT lose the message for frivolous reasons, such
   as because the host later crashes or because of a predictable
   resource shortage.

So - the mail server then deletes the mail because the laptop has told it "Yes,
I've gotten it, it's stable, and even if I crash I won't lose it".  But since
the mail program's fsync() calls got suppressed, it really *isn't* stable, so
when you crash, the mails are gone. Poof.

Second order effects crop up after that - after you recover from the crash,
your end has no memory of downloading the 5 messages, so it tries again - only
to have the mail server say "No such message".  This is the sort of inconsistency
that gives guys at the support desk indigestion...

Understand better now?


[-- Attachment #2: Type: application/pgp-signature, Size: 227 bytes --]

  reply	other threads:[~2011-05-20 15:35 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-19 13:34 [rfc] Ignore Fsync Calls in Laptop_Mode Dennis Jansen
2011-05-19 13:43 ` Alan Cox
     [not found]   ` <BANLkTikFRwPY_qOQpPmCmNUJbBUsGcuGUw@mail.gmail.com>
     [not found]     ` <20110519153928.40521b93@lxorguk.ukuu.org.uk>
2011-05-19 15:01       ` D. Jansen
2011-05-19 15:02   ` D. Jansen
2011-05-20 15:34     ` Valdis.Kletnieks [this message]
2011-05-20  3:39 ` Dave Chinner
2011-05-20  6:01   ` D. Jansen
2011-05-22  0:48     ` Dave Chinner
2011-05-23  8:12       ` Oliver Neukum
2011-05-23 13:05         ` D. Jansen
2011-05-25  0:00         ` Dave Chinner
2011-05-25  6:50           ` Oliver Neukum
2011-05-26  7:01             ` D. Jansen
2011-05-26 10:49               ` Theodore Tso
     [not found]                 ` <BANLkTimNjt4=9v33Z9Nr12xa6GmyJ-Ue5A@mail.gmail.com>
2011-05-26 13:31                   ` Ted Ts'o
2011-05-26 16:05                     ` D. Jansen
2011-05-26 16:21                       ` Ted Ts'o
2011-05-27  7:12                         ` D. Jansen
2011-05-27 14:17                           ` Theodore Tso
2011-05-27 17:51                             ` david
2011-05-29 10:45                             ` D. Jansen
2011-05-30  1:53                               ` david
2011-05-30  7:13                                 ` Oliver Neukum
2011-05-30 12:55                                   ` Valdis.Kletnieks
2011-05-30 18:03                                     ` david
2011-05-30 13:55                                 ` D. Jansen
2011-05-30 18:02                                   ` david
2011-05-30 18:28                                     ` D. Jansen
2011-05-30 18:43                                       ` Valdis.Kletnieks
2011-05-30 19:54                                         ` D. Jansen
2011-05-30 18:45                                       ` david
2011-05-30 19:49                                         ` D. Jansen
2011-05-30 20:53                                           ` david
2011-05-30 21:24                                             ` D. Jansen
2011-05-30 22:41                                               ` david
2011-05-31  2:03                                               ` Ted Ts'o
2011-05-31  2:26                                                 ` david
2011-05-31 13:47                                                 ` D. Jansen
2011-05-31 18:23                                                   ` david
2011-05-31 18:37                                                     ` D. Jansen
2011-05-31 18:54                                                       ` david
2011-05-31 19:04                                                         ` D. Jansen
2011-06-02  7:42                                                 ` D. Jansen
2011-05-31  8:22                                               ` Valdis.Kletnieks
2011-05-30 22:10                                           ` Jesper Juhl
2011-05-31  6:48                                         ` Oliver Neukum
2011-05-26 19:31               ` Matthew Garrett
2011-05-27  7:22                 ` D. Jansen
2011-05-20 15:28 ` Valdis.Kletnieks
2011-05-20 16:40   ` D. Jansen
2011-05-20 22:03     ` torbenh
2011-05-21  8:23       ` D. Jansen
2011-05-23  8:22     ` Jesper Juhl

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=9885.1305905687@localhost \
    --to=valdis.kletnieks@vt.edu \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=d.g.jansen@googlemail.com \
    --cc=linux-kernel@vger.kernel.org \
    --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