public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: Waiman Long <waiman.long@hp.com>
Cc: Dave Chinner <david@fromorbit.com>,
	Alexander Viro <viro@zeniv.linux.org.uk>,
	Jeff Layton <jlayton@redhat.com>,
	Miklos Szeredi <mszeredi@suse.cz>, Ian Kent <raven@themaw.net>,
	Sage Weil <sage@inktank.com>, Steve French <sfrench@samba.org>,
	Trond Myklebust <Trond.Myklebust@netapp.com>,
	Eric Paris <eparis@redhat.com>,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
	autofs@vger.kernel.org, ceph-devel@vger.kernel.org,
	linux-cifs@vger.kernel.org, linux-nfs@vger.kernel.org,
	"Chandramouleeswaran, Aswin" <aswin@hp.com>,
	"Norton, Scott J" <scott.norton@hp.com>,
	Andi Kleen <andi@firstfloor.org>
Subject: Re: [PATCH 0/3 v3] dcache: make it more scalable on large system
Date: Wed, 29 May 2013 18:13:58 +0200	[thread overview]
Message-ID: <20130529161358.GJ6123@two.firstfloor.org> (raw)
In-Reply-To: <51A624E2.3000301@hp.com>

> The d_path() is called by perf_event_mmap_event() which translates
> VMA to its file path for memory segments backed by files. As perf is
> not just for sampling data within the kernel, it can also be used
> for checking access pattern in the user space. As a result, it needs
> to map VMAs back to the backing files to access their symbols
> information. If d_path() is not the right function to call for this
> purpose, what other alternatives do we have?

In principle it should be only called for new file mappings
getting maped.  Do you really have that many new file mappings all
the time? Or is this related to program startup?

> 
> My patch set consists of 2 different changes. The first one is to
> avoid taking the d_lock lock when updating the reference count in
> the dentries. This particular change also benefit some other
> workloads that are filesystem intensive. One particular example is
> the short workload in the AIM7 benchmark. One of the job type in the
> short workload is "misc_rtns_1" which calls security functions like
> getpwnam(), getpwuid(), getgrgid() a couple of times. These
> functions open the /etc/passwd or /etc/group files, read their
> content and close the files. It is the intensive open/read/close
> sequence from multiple threads that is causing 80%+ contention in
> the d_lock on a system with large number of cores. The MIT's
> MOSBench paper also outlined dentry reference counting as a

The paper was before Nick Piggin's RCU (and our) work on this.
Modern kernels do not have dcache problems with mosbench, unless
you run weird security modules like SMACK that effectively 
disable dcache RCU.

BTW lock elision may fix these problems anyways, in a much
simpler way.

-Andi

ak@linux.intel.com -- Speaking for myself only.

  reply	other threads:[~2013-05-29 16:14 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-23  1:37 [PATCH 0/3 v3] dcache: make it more scalable on large system Waiman Long
2013-05-23  1:37 ` [PATCH 1/3 v3] dcache: Don't take unnecessary lock in d_count update Waiman Long
2013-05-23  1:37 ` [PATCH 2/3 v3] dcache: introduce a new sequence read/write lock type Waiman Long
2013-05-23  1:37 ` [PATCH 3/3 v3] dcache: change rename_lock to a sequence read/write lock Waiman Long
2013-05-23  9:42 ` [PATCH 0/3 v3] dcache: make it more scalable on large system Dave Chinner
2013-05-23 21:34   ` Waiman Long
2013-05-27  2:09     ` Dave Chinner
2013-05-29 15:55       ` Waiman Long
2013-05-29 16:13         ` Andi Kleen [this message]
2013-05-29 20:23           ` Waiman Long
2013-05-29 16:18         ` Simo Sorce
2013-05-29 16:56           ` Andi Kleen
2013-05-29 17:03             ` Simo Sorce
2013-05-29 20:37             ` Waiman Long
2013-05-29 20:32           ` Waiman Long
2013-05-29 18:46         ` J. Bruce Fields
2013-05-29 20:37           ` Andi Kleen
2013-05-29 20:43             ` J. Bruce Fields
2013-05-29 21:01               ` Andi Kleen
2013-05-29 21:19             ` Jörn Engel
2013-05-30 15:48               ` Waiman Long
2013-05-30 15:11                 ` Jörn Engel
2013-06-06  3:48             ` Dave Chinner
2013-05-29 20:40           ` Waiman Long

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=20130529161358.GJ6123@two.firstfloor.org \
    --to=andi@firstfloor.org \
    --cc=Trond.Myklebust@netapp.com \
    --cc=aswin@hp.com \
    --cc=autofs@vger.kernel.org \
    --cc=ceph-devel@vger.kernel.org \
    --cc=david@fromorbit.com \
    --cc=eparis@redhat.com \
    --cc=jlayton@redhat.com \
    --cc=linux-cifs@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=mszeredi@suse.cz \
    --cc=raven@themaw.net \
    --cc=sage@inktank.com \
    --cc=scott.norton@hp.com \
    --cc=sfrench@samba.org \
    --cc=viro@zeniv.linux.org.uk \
    --cc=waiman.long@hp.com \
    /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