From: jim owens <jowens@hp.com>
To: Timothy Shimmin <tes@sgi.com>, Bryan Henderson <hbryan@us.ibm.com>
Cc: linux-fsdevel@vger.kernel.org
Subject: Re: fdatasync/barriers (was : [Bug 421482] Firefox 3 uses fsync excessively)
Date: Fri, 30 May 2008 10:14:41 -0400 [thread overview]
Message-ID: <48400BD1.8040308@hp.com> (raw)
In-Reply-To: <483F7BCF.6080107@sgi.com>
Timothy Shimmin wrote:
>>>Bryan Henderson wrote:
>>
>>Must have been where he assumes we think of a barrier as something that
>>causes a flush of the drive write cache.
In my case maybe I only assume the barrier will do that because
that is what I want to happen and I have not had time to
really dig into the docs and code.
>>If the idea is for fdatasync() to have that sync-to-platter function,
>>fdatasync() should just tell the block layer to sync previously written
>>data (now in the drive cache) to the platter; it has an interface for
>>that, doesn't it?
>>
>
> blkdev_issue_flush() do you mean?
My understanding (but I don't know this as fact) is:
Instead of a "flush-all-drive-cache" command, the FS
should issue the proper barrier(s) to the blkdev layer
so it knows this set of data must sync-to-platter.
The key is "this set of data", not "all data".
The blkdev should know what the device supports for
caching and tagging I/Os and how to sync-to-platter
that "set of data". If we are lucky, the device and
layers under the FS can sync-to-platter without a full
drive cache flush. If not, then the device cache should
be flushed.
My further understanding is that some layers (and devices)
have bugs and don't sync-to-platter. In my opinion those
are problems to fix or document so users can make the
right choices to protect their data.
jim
next prev parent reply other threads:[~2008-05-30 14:14 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <bug-421482-310856@https.bugzilla.mozilla.org/>
[not found] ` <200805260513.m4Q5DAU8018498@mrapp54.mozilla.org>
2008-05-26 7:05 ` [Bug 421482] Firefox 3 uses fsync excessively Andrew Morton
2008-05-26 10:07 ` Theodore Tso
2008-05-26 11:10 ` Jörn Engel
2008-05-26 11:38 ` Theodore Tso
2008-05-26 12:52 ` Jörn Engel
2008-05-26 20:22 ` Jamie Lokier
2008-05-29 17:08 ` fdatasync/barriers (was : [Bug 421482] Firefox 3 uses fsync excessively) Bryan Henderson
2008-05-29 18:46 ` jim owens
2008-05-29 23:15 ` Bryan Henderson
2008-05-30 4:00 ` Timothy Shimmin
2008-05-30 14:14 ` jim owens [this message]
2008-05-30 16:25 ` Bryan Henderson
2008-05-30 18:48 ` jim owens
2008-06-02 17:31 ` Bryan Henderson
2008-05-26 18:49 ` [Bug 421482] Firefox 3 uses fsync excessively Andrew Morton
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=48400BD1.8040308@hp.com \
--to=jowens@hp.com \
--cc=hbryan@us.ibm.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=tes@sgi.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 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.