From: Dave Chinner <david@fromorbit.com>
To: Boaz Harrosh <bharrosh@panasas.com>
Cc: Chris Mason <chris.mason@oracle.com>, Ted Ts'o <tytso@mit.edu>,
Zach Brown <zab@zabbo.net>, Eric Sandeen <sandeen@redhat.com>,
linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org
Subject: Re: [PATCH, RFC] Don't do page stablization if !CONFIG_BLKDEV_INTEGRITY
Date: Fri, 9 Mar 2012 10:32:41 +1100 [thread overview]
Message-ID: <20120308233241.GV3592@dastard> (raw)
In-Reply-To: <4F591BA2.2080803@panasas.com>
On Thu, Mar 08, 2012 at 12:50:42PM -0800, Boaz Harrosh wrote:
> On 03/08/2012 12:37 PM, Chris Mason wrote:
> > On Thu, Mar 08, 2012 at 12:20:26PM -0800, Boaz Harrosh wrote:
> >> On 03/08/2012 10:09 AM, Chris Mason wrote:
> >>>
> >>> But, why are we writeback for a second or more? Aren't there other
> >>> parts of this we would want to fix as well?
> >>>
> >>> I'm not against only turning on stable pages when they are needed, but
> >>> the code that isn't the default tends to be somewhat less used. So it
> >>> does increase testing burden when we do want stable pages, and it tends
> >>> to make for awkward bugs that are hard to reproduce because someone
> >>> neglects to mention it.
> >>>
> >>> IMHO it's much more important to nail down the 2 second writeback
> >>> latency. That's not good.
> >>>
> >>
> >> I think I understand this one. It's do to the sync nature introduced
> >> by page_waiting in mkwrite.
> >
> > Pages go from dirty to writeback for a few reasons. Background
> > writeout, or O_DIRECT or someone running sync
> >
> > background writeout shouldn't be queueing up so much work that
> > synchronous writeout has a 2 second delay.
> >
> > If the latencies are coming from something that was run through
> > fsync...well there's not too much we can do about that. The problem is
> > that our page_mkwrite call isn't starting the IO it is just waiting on
> > it, so we can't bump the priority on it.
> >
>
> I agree. I think the logger model is: write, than sync
>
> Before they used to be waiting on the sync phase now their waiting
> on write, when concurrent with sync. I would like to inspect this situation.
> I agree with you that it's just shifting heaviness that is now hiding somewhere
> else.
I'd argue that the application is broken, not the kernel. IO
latencies are always going to occur, so if the application is
sensitive to them, then the app needs to take measures to minimise
the effect of potential latencies. Double/ring buffering with async
IO dispatch is the general method of avoiding significant latencies
in IO aggregator applications like loggers...
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
next prev parent reply other threads:[~2012-03-08 23:32 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-07 23:40 [PATCH, RFC] Don't do page stablization if !CONFIG_BLKDEV_INTEGRITY Theodore Ts'o
2012-03-07 23:54 ` Eric Sandeen
2012-03-08 0:05 ` Darrick J. Wong
2012-03-08 2:18 ` Darrick J. Wong
2012-03-08 3:00 ` Boaz Harrosh
2012-03-08 3:21 ` Boaz Harrosh
2012-03-08 2:39 ` Zach Brown
2012-03-08 15:54 ` Ted Ts'o
2012-03-08 18:09 ` Chris Mason
2012-03-08 20:20 ` Boaz Harrosh
2012-03-08 20:37 ` Chris Mason
2012-03-08 20:42 ` Jeff Moyer
2012-03-08 20:55 ` Chris Mason
2012-03-08 21:12 ` Ted Ts'o
2012-03-08 21:20 ` Chris Mason
2012-03-09 8:11 ` Dave Chinner
2012-03-08 20:50 ` Boaz Harrosh
2012-03-08 23:32 ` Dave Chinner [this message]
2012-03-08 21:24 ` Ted Ts'o
2012-03-08 21:38 ` Chris Mason
2012-03-08 21:41 ` Ted Ts'o
2012-03-09 1:02 ` Chris Mason
2012-03-09 1:08 ` Martin K. Petersen
2012-03-09 16:20 ` Ted Ts'o
2012-03-08 21:52 ` Boaz Harrosh
2012-03-08 0:23 ` Boaz Harrosh
2012-03-08 3:45 ` Martin K. Petersen
2012-03-08 4:37 ` Boaz Harrosh
2012-03-08 6:27 ` Sage Weil
2012-03-08 15:43 ` Ted Ts'o
2012-03-08 16:36 ` Martin K. Petersen
2012-03-08 16:43 ` Sage Weil
2012-03-15 2:10 ` Andy Lutomirski
2012-03-15 4:46 ` Boaz Harrosh
2012-03-15 5:02 ` Andy Lutomirski
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=20120308233241.GV3592@dastard \
--to=david@fromorbit.com \
--cc=bharrosh@panasas.com \
--cc=chris.mason@oracle.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=sandeen@redhat.com \
--cc=tytso@mit.edu \
--cc=zab@zabbo.net \
/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;
as well as URLs for NNTP newsgroup(s).