mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Dave Hansen <dave@linux.vnet.ibm.com>
To: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Salman Qazi <sqazi@google.com>,
	linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>,
	Thomas Gleixner <tglx@linutronix.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Andi Kleen <andi@firstfloor.org>,
	Dave Hansen <haveblue@us.ibm.com>,
	Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: Another Performance Regression in write() syscall
Date: Tue, 24 Feb 2009 08:58:52 -0800	[thread overview]
Message-ID: <1235494732.26788.256.camel@nimitz> (raw)
In-Reply-To: <200902241947.53180.nickpiggin@yahoo.com.au>

On Tue, 2009-02-24 at 19:47 +1100, Nick Piggin wrote:
> On Tuesday 24 February 2009 17:25:45 Dave Hansen wrote:
> > On Mon, 2009-02-23 at 22:05 -0800, Salman Qazi wrote:
> > > Analysis of profile data has led us to believe that the commit
> > > 3d733633a633065729c9e4e254b2e5442c00ef7e has caused a performance
> > > regression.  This commit provides for tracking of writers so that read
> > > only bind mounts function correctly.
> > >
> > > We can verify this regression by applying the following patch to
> > > partially disable the above-mentioned commit and then running the fstime
> > > component of Unixbench.  The settings used were 256 byte writes with
> > > MAX_BLOCK of 2000.
> >
> > I'm a bit surprised that write() is what is regressing.  Unless I
> > screwed up, we do all the expensive accounting at open()/close() time.
> > Is this a test that gets run in parallel on multiple cpus?
> 
> Don't forget touch_atime...

Yeah, that's a good point.  Are we sure that's what is happening here,
though?  That's one thing a profile would hopefully help with.

> Still, open/close isn't unimportant either.

Yeah, that's true.  But, what I noticed was that all of the other
open/close activity masked out any overhead from mnt_want/drop_write()
since a big chunk of the overhead was just going and bringing the
vfsmount pieces into the cache.

> > Could you take a look at Nick's patches to speed this stuff up?
> >
> > 	http://thread.gmane.org/gmane.linux.file-systems/28186
> >
> > We may need to dust those off, although I'm still a bit worried about
> > the complexities of open-coding all the barriers.
> 
> I really need to do something about trying to push them upstream again
> actually because we've got them in SLES11 tree.

Were the patches that you integrated any different from the ones you
posted a few months ago?

-- Dave


  reply	other threads:[~2009-02-24 16:59 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-24  6:05 Salman Qazi
2009-02-24  6:25 ` Dave Hansen
2009-02-24  8:47   ` Nick Piggin
2009-02-24 16:58     ` Dave Hansen [this message]
2009-02-24 17:29       ` Linus Torvalds
2009-02-24 17:50         ` Ingo Molnar
2009-02-25  3:49       ` Nick Piggin
2009-02-25  1:05   ` Salman Qazi

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=1235494732.26788.256.camel@nimitz \
    --to=dave@linux.vnet.ibm.com \
    --cc=andi@firstfloor.org \
    --cc=haveblue@us.ibm.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=nickpiggin@yahoo.com.au \
    --cc=sqazi@google.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    /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®