Thread (20 messages) 20 messages, 6 authors, 2012-10-31

Re: semi-stable page writes

flat view

From: Dave Chinner <david@fromorbit.com>
Date: 2012-10-30 23:30:21
Also in: linux-fsdevel

On Mon, Oct 29, 2012 at 09:00:27PM -0400, Theodore Ts'o wrote:
On Tue, Oct 30, 2012 at 09:01:22AM +1100, Dave Chinner wrote:
quoted
On Fri, Oct 26, 2012 at 03:19:09AM -0700, Darrick J. Wong wrote:
quoted
Hi everyone,

Are people still annoyed about writes taking unexpectedly long amounts of tme
due to the stable page write patchset?  I'm guessing yes...
I haven't heard anyone except th elunatic fringe complain
recently...
We are currently carrying a patch in the Google kernel which
unconditionally disables stable page writes specifically because it
introduced significant latencies that were unacceptable for some of
our (internal) customers of said production kernel.

I'll leave it to others to decide whether the Google production kernel
is part of the lunatic fringe or not.  :-)
Google is, and has the resources to maintain a lunatic fringe kernel
;)

Besides, we've discussed google's problem before, and it came down
to bad application design (i.e. no buffering to protect against
variable filesystem/storage latency) and not stable pages being the
source of the problem. Turning off stable pages was a hack to work
around a badly designed application stack....

....
IMO, it would be better to have the system automatically do the right
thing, though.  If there is no need for stable page writes, why pay
the performance penalty for it?
Yes, and the right thing to do is to put correctness before
performance. Stable pages are needed for correctness in a lot of
cases, so that shoul dbe the default. If the user has performance
problems, then they can turn it off. At no time should the default
require tuning to get correct behaviour. case in point: filesystems
default to "barriers = on".

Safe should *always* be the default choice, even if it is sometimes
slow.

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help