linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nick Piggin <npiggin@suse.de>
To: Al Viro <viro@ZenIV.linux.org.uk>,
	Frank Mayhar <fmayhar@google.com>,
	John Stultz <johnstul@us.ibm.com>,
	Andi Kleen <ak@linux.intel.com>,
	linux-fsdevel@vger.kernel.org
Subject: Re: [patch 2/2] fs: scale vfsmount_lock
Date: Tue, 16 Mar 2010 23:28:29 +1100	[thread overview]
Message-ID: <20100316122829.GR2869@laptop> (raw)
In-Reply-To: <20100316122319.GQ2869@laptop>

On Tue, Mar 16, 2010 at 11:23:20PM +1100, Nick Piggin wrote:
> fs: scale vfsmount_lock
> 
> Use a brlock for the vfsmount lock. It must be taken for write whenever
> modifying the mount hash or associated fields, and may be taken for read when
> performing mount hash lookups.
> 
> The slowpath will be made significantly slower due to use of brlock. On a 64
> core, 64 socket, 32 node Altix system (so a decent amount of latency to remote
> nodes), a simple umount microbenchmark (mount --bind mnt mnt2 ; umount mnt2
> loop 1000 times), before this patch it took 6.8s, afterwards took 7.1s, for
> about 5% increase in elapsed time.
> 
> Number of atomics should remain the same for fastpath rlock cases, though code
> will be slightly larger due to per-cpu access. Scalability will probably not be
> much improved in common cases yet, due to other locks getting in the way.
> However independent path lookups over mountpoints should be one case where
> scalability is improved.
> 
> Signed-off-by: Nick Piggin <npiggin@suse.de>
> ---
>  fs/dcache.c                |    4 -
>  fs/namei.c                 |   13 +--
>  fs/namespace.c             |  178 ++++++++++++++++++++++++++++-----------------
>  fs/pnode.c                 |   11 ++
>  fs/proc/base.c             |    4 -
>  include/linux/mount.h      |    4 -
>  kernel/audit_tree.c        |    6 -
>  security/tomoyo/realpath.c |    4 -
>  8 files changed, 141 insertions(+), 83 deletions(-)

This diffstat is obviously not refreshed since your vfsmount lock
cleanup, sorry.


  reply	other threads:[~2010-03-16 12:28 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-16 12:22 [patch 1/2] kernel: introduce brlock Nick Piggin
2010-03-16 12:23 ` [patch 2/2] fs: scale vfsmount_lock Nick Piggin
2010-03-16 12:28   ` Nick Piggin [this message]
2010-03-17 14:20   ` Nick Piggin
2010-03-17 20:33     ` Andreas Dilger
2010-03-16 19:01 ` [patch 1/2] kernel: introduce brlock Andreas Dilger
2010-03-16 20:12   ` Frank Mayhar
2010-03-16 23:44   ` Nick Piggin
2010-03-17 14:18     ` Nick Piggin

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=20100316122829.GR2869@laptop \
    --to=npiggin@suse.de \
    --cc=ak@linux.intel.com \
    --cc=fmayhar@google.com \
    --cc=johnstul@us.ibm.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=viro@ZenIV.linux.org.uk \
    /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).