From: Hans Reiser <reiser@namesys.com>
To: Chris Mason <mason@suse.com>
Cc: berthiaume_wayne@emc.com, reiserfs-list@namesys.com, green@namesys.com
Subject: Re: fsync() Performance Issue
Date: Mon, 06 May 2002 17:02:40 +0400 [thread overview]
Message-ID: <3CD67EF0.9090100@namesys.com> (raw)
In-Reply-To: 1020688827.3947.2087.camel@tiny
Chris Mason wrote:
>On Sat, 2002-05-04 at 10:59, Hans Reiser wrote:
>
>
>>So how about if you revise fsync so that it always sends data blocks to
>>the journal not to the main disk?
>>
>>
>
>This gets a little sticky.
>
>Once you log a block, it might be replayed after a crash. So, you have
>to protect against corner cases like this:
>
>write(file)
>fsync(file) ; /* logs modified data blocks */
>write(file) ; /* write the same blocks without fsync */
>sync ; /* use expects new version of the blocks on disk */
><crash>
>
>During replay, the logged data blocks overwrite the blocks sent to disk
>via sync().
>
>This isn't hard to correct for, every time a buffer is marked dirty, you
>check the journal hash tables to see if it is replayable, and if so you
>log it instead (the 2.2.x code did this due to tails). This translates
>to increased CPU usage for every write.
>
Significant increased CPU usage?
>
>I'd rather not put it back in because it adds yet another corner case to
>maintain for all time. Most of the fsync/O_SYNC bound applications are
>just given their own partition anyway, so most users that need data
>logging need it for every write.
>
most users don't know enough to turn it on....;-)
>
>-chris
>
>
>
>
>
>
>
>
next prev parent reply other threads:[~2002-05-06 13:02 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-05-03 20:35 fsync() Performance Issue berthiaume_wayne
2002-05-03 22:00 ` Chris Mason
2002-05-04 2:05 ` Hans Reiser
2002-05-04 5:41 ` Valdis.Kletnieks
2002-05-04 13:11 ` Chris Mason
2002-05-04 14:59 ` Hans Reiser
2002-05-06 12:40 ` Chris Mason
2002-05-06 13:02 ` Hans Reiser [this message]
2002-05-06 21:21 ` Hans Reiser
2002-05-06 22:57 ` Chris Mason
2002-05-06 23:41 ` Hans Reiser
2002-05-07 1:17 ` Manuel Krause
2002-05-07 2:04 ` Chris Mason
2002-05-07 20:26 ` Manuel Krause
2002-05-08 1:22 ` Chris Mason
-- strict thread matches above, loose matches on Subject: below --
2002-05-06 12:54 berthiaume_wayne
2002-04-30 14:45 berthiaume_wayne
2002-04-29 17:26 berthiaume_wayne
2002-04-26 20:28 berthiaume_wayne
2002-04-29 16:20 ` Russell Coker
2002-04-29 16:30 ` Chris Mason
2002-04-29 16:32 ` Toby Dickenson
2002-04-29 16:45 ` Chris Mason
2002-04-29 17:56 ` Matthias Andree
2002-04-29 18:58 ` Valdis.Kletnieks
2002-04-29 18:56 ` Hans Reiser
2002-04-30 14:20 ` Oleg Drokin
2002-04-30 14:27 ` Chris Mason
2002-05-02 5:07 ` Christian Stuke
2002-05-02 6:20 ` Oleg Drokin
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=3CD67EF0.9090100@namesys.com \
--to=reiser@namesys.com \
--cc=berthiaume_wayne@emc.com \
--cc=green@namesys.com \
--cc=mason@suse.com \
--cc=reiserfs-list@namesys.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.