public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: NeilBrown <neilb@suse.de>
To: Ian Kent <raven@themaw.net>
Cc: autofs@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 0/6] autofs4: support RCU-walk
Date: Thu, 10 Jul 2014 09:41:14 +1000	[thread overview]
Message-ID: <20140709233541.4525.25151.stgit@notabene.brown> (raw)

autofs4 currently doesn't support RCU-walk - it immediately
aborts any attempt at RCU-walk to force REF-walk for path name
lookup.

This can cause a significant performance impact on multi-core
systems.
I have a client with a test case which spends >80% of its time
waiting for spinlocks with a "make -j 40" on a 40 core system.

This patchset aims to remove most of these spinlocks.  To be fully
effective in the particular case it needs a second patch set which
makes NFS RCU-walk friendly, but one thing at a time.

This has only been lightly tested so far so I'm really after feed-back
rather than to have the patch set accepted, though the first two
patches are trivial and could be taken immediately.

The last two patches are the most interesting so review comments on
those are particularly welcome.

Thanks,
NeilBrown


---

NeilBrown (6):
      autofs4: remove unused autofs4_ispending()
      autofs4: remove a redundant assignment
      autofs4: allow RCU-walk to walk through autofs4.
      autofs4: factor should_expire() out of autofs4_expire_indirect.
      autofs4: avoid taking fs_lock during rcu-walk
      autofs4: don't take spinlock when not needed in autofs4_lookup_expiring


 fs/autofs4/autofs_i.h  |   20 +----
 fs/autofs4/dev-ioctl.c |    2 -
 fs/autofs4/expire.c    |  192 +++++++++++++++++++++++++++++-------------------
 fs/autofs4/root.c      |   46 ++++++++----
 4 files changed, 151 insertions(+), 109 deletions(-)

-- 
Signature


             reply	other threads:[~2014-07-09 23:41 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-09 23:41 NeilBrown [this message]
2014-07-09 23:41 ` [PATCH 3/6] autofs4: allow RCU-walk to walk through autofs4 NeilBrown
2014-07-16  4:44   ` Ian Kent
2014-07-16  5:51     ` NeilBrown
2014-07-16  6:56       ` Ian Kent
2014-07-17  5:00         ` Ian Kent
2014-07-17  8:04           ` NeilBrown
2014-07-17 10:17             ` Ian Kent
2014-07-29  1:51               ` NeilBrown
2014-07-29  6:37                 ` Ian Kent
2014-07-09 23:41 ` [PATCH 2/6] autofs4: remove a redundant assignment NeilBrown
2014-07-16  3:27   ` Ian Kent
2014-07-09 23:41 ` [PATCH 5/6] autofs4: avoid taking fs_lock during rcu-walk NeilBrown
2014-07-16  9:52   ` Ian Kent
2014-07-09 23:41 ` [PATCH 6/6] autofs4: don't take spinlock when not needed in autofs4_lookup_expiring NeilBrown
2014-07-16  3:42   ` Ian Kent
2014-07-16  6:10     ` NeilBrown
2014-07-09 23:41 ` [PATCH 4/6] autofs4: factor should_expire() out of autofs4_expire_indirect NeilBrown
2014-07-14  0:53   ` [PATCH 4/6 v2] " NeilBrown
2014-07-15  3:48     ` Ian Kent
2014-07-15  4:05       ` NeilBrown
2014-07-15  7:44         ` Ian Kent
2014-07-16  7:50     ` Ian Kent
2014-07-17  4:34       ` NeilBrown
2014-07-09 23:41 ` [PATCH 1/6] autofs4: remove unused autofs4_ispending() NeilBrown
2014-07-16  3:26   ` Ian Kent
2014-07-10  7:43 ` [PATCH 0/6] autofs4: support RCU-walk Ian Kent
2014-07-10  7:45   ` Ian Kent
2014-07-10  8:25   ` NeilBrown
2014-07-11  2:49     ` Ian Kent
2014-07-16  3:24 ` Ian Kent
2014-07-16  6:00   ` NeilBrown
2014-07-16  7:21     ` Ian Kent

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=20140709233541.4525.25151.stgit@notabene.brown \
    --to=neilb@suse.de \
    --cc=autofs@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=raven@themaw.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