mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@linux-foundation.org>
To: Bart Trojanowski <bart@jukie.net>
Cc: linux-kernel@vger.kernel.org, Al Viro <viro@zeniv.linux.org.uk>
Subject: Re: vfat BKL/lock_super regression in v2.6.26-rc3-g8f59342
Date: Tue, 19 Aug 2008 17:56:10 -0700 (PDT)	[thread overview]
Message-ID: <alpine.LFD.1.10.0808191748040.3324@nehalem.linux-foundation.org> (raw)
In-Reply-To: <alpine.LFD.1.10.0808191729330.3324@nehalem.linux-foundation.org>



On Tue, 19 Aug 2008, Linus Torvalds wrote:
> 
> But I don't know exactly what the timeout should be, though (although I 
> suspect that it should involve _ignoring_ non-data writes like the atime 
> updates, and trigger a timeout on data writes so that when you actually 
> write a file, you'll know that the sync will happen within five seconds of 
> you having finished the write or whatever).

.. and by "finished the write" I mean "closed the file", not "end of 
write() system call". Ie it's one of those things where it really doesn't 
mostly make much sense to try to give any kinds of flush guarantees until 
the user has basically shown that he's all done with writing.

If you have something like removable media, and you actually remove it 
while you have a "cp -R" in progress, it damn well won't matter whether we 
were synchronous or not. But if you remove it after the "cp" has actually 
finished, it's a lot more understandable if somebody expects it to be on 
disk.

So one thing we could perhaps consider is to make FAT in particular 
consider "sync" mounts to be about open/close consistency, not about 
per-write-system-call consistency. So the "close()" wouldn't return until 
the file is on disk, but we wouldn't force a synchronous rewrite the inode 
or the file allocation table thousands of times just because the file was 
big.

FAT really is kind of different. I suspect we could just change what 
"sync" means for it. But it would probably be good to have a VFS-level 
notion of open-close consistency. It is, after all, what NFS is already 
supposed to give you, so there is precedence for that being a useful IO 
serialization model.

Al, what do you think?

		Linus

  reply	other threads:[~2008-08-20  0:56 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-19 22:03 Bart Trojanowski
2008-08-19 22:06 ` [PATCH] make lock_super recursive to simulate BKL Bart Trojanowski
2008-08-19 22:21   ` Linus Torvalds
2008-08-20  1:14     ` Bart Trojanowski
2008-08-19 22:17 ` vfat BKL/lock_super regression in v2.6.26-rc3-g8f59342 Linus Torvalds
2008-08-20  0:03   ` Bart Trojanowski
2008-08-20  0:11     ` Linus Torvalds
2008-08-20  0:24       ` Bart Trojanowski
2008-08-20  0:18   ` Bart Trojanowski
2008-08-20  0:43     ` Linus Torvalds
2008-08-20  0:56       ` Linus Torvalds [this message]
2008-08-20  2:27         ` Bart Trojanowski
2008-08-20 21:23           ` Diego Calleja
2008-08-23  0:54           ` [PATCH] document additional vfat mount options Bart Trojanowski
2008-08-23  2:33             ` Grant Coady
2008-08-23  3:12               ` Bart Trojanowski
2008-08-23  3:14                 ` Bart Trojanowski
2008-08-23  3:27                   ` OGAWA Hirofumi
2008-08-23 13:11                     ` Bart Trojanowski
2008-08-23 14:47                       ` OGAWA Hirofumi
2008-08-23  3:10             ` OGAWA Hirofumi

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=alpine.LFD.1.10.0808191748040.3324@nehalem.linux-foundation.org \
    --to=torvalds@linux-foundation.org \
    --cc=bart@jukie.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=viro@zeniv.linux.org.uk \
    /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

all inboxes | Powered by JetHome®