From: Oleg Nesterov <oleg@redhat.com>
To: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Jan Kara <jack@suse.cz>, Al Viro <viro@zeniv.linux.org.uk>,
Linus Torvalds <torvalds@linux-foundation.org>,
Paul McKenney <paulmck@linux.vnet.ibm.com>,
Peter Zijlstra <peterz@infradead.org>,
Daniel Wagner <daniel.wagner@bmw-carit.de>,
Davidlohr Bueso <dave@stgolabs.net>,
Ingo Molnar <mingo@redhat.com>, Tejun Heo <tj@kernel.org>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH RFC 0/4] change sb_writers to use percpu_rw_semaphore
Date: Tue, 14 Jul 2015 23:22:49 +0200 [thread overview]
Message-ID: <20150714212249.GA18441@redhat.com> (raw)
In-Reply-To: <55A57C50.1080406@linux.intel.com>
On 07/14, Dave Hansen wrote:
>
> On 07/14/2015 06:37 AM, Oleg Nesterov wrote:
> > On 07/14, Jan Kara wrote:
> >> So unless
> >> I'm missing something and there is a significant performance advantage to
> >> Dave's patches I'm all for using a generic primitive you suggest.
> >
> > I think percpu_rw_semaphore looks a bit better. And even a bit faster.
> > And it will not block __sb_start_write() entirely while freeze_super()
> > sleeps in synchronize_rcu().
>
> That's true, but freeze_super() and the code blocked by it is a
> super-rare path compared with write().
Yes, agreed, this is not that important too.
> > freeze_super() should be faster too after rcu_sync changes, but this
> > is not that important.
> >
> > But again, to me the main advantage is that we can use the generic
> > primitives and remove this nontrivial code in fs/super.c.
> >
> >> Can you perhaps work with Dave on some common resolution?
> >
> > Dave, what do you think? Will you agree with percpu_rw_semaphore ?
>
> Using my little write-1-byte test (under will-it-scale), your 4 patches
> improves the number of writes/sec by 12%. My 3 patches improve the
> number of writes/sec by 32%.
Thanks... I'll try to understand.
Just in case, could you send me (offlist) these 3 patches?
> My patches manage to get rid of the memory barriers entirely in the fast
> path. Your approach keeps the barriers.
Where? No, they do not keep the barriers.
Oleg.
next prev parent reply other threads:[~2015-07-14 21:24 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-13 21:25 [PATCH RFC 0/4] change sb_writers to use percpu_rw_semaphore Oleg Nesterov
2015-07-13 21:25 ` [PATCH 1/4] change get_super_thawed() to use sb_start/end_write() Oleg Nesterov
2015-07-14 10:49 ` Jan Kara
2015-07-14 13:38 ` Oleg Nesterov
2015-07-13 21:25 ` [PATCH 2/4] introduce sb_unlock_frozen() Oleg Nesterov
2015-07-13 21:25 ` [PATCH 3/4] introduce sb_lockdep_release() Oleg Nesterov
2015-07-13 21:25 ` [PATCH 4/4] change sb_writers to use percpu_rw_semaphore Oleg Nesterov
2015-07-13 22:23 ` [PATCH RFC 0/4] " Dave Chinner
2015-07-13 22:42 ` Oleg Nesterov
2015-07-13 23:14 ` Dave Chinner
2015-07-14 10:48 ` Jan Kara
2015-07-14 13:37 ` Oleg Nesterov
2015-07-14 21:17 ` Dave Hansen
2015-07-14 21:22 ` Oleg Nesterov [this message]
2015-07-14 21:41 ` Dave Hansen
2015-07-15 6:47 ` Jan Kara
2015-07-15 18:19 ` Oleg Nesterov
2015-07-16 7:26 ` Jan Kara
2015-07-16 7:30 ` Dave Hansen
2015-07-16 8:55 ` Jan Kara
2015-07-16 17:32 ` Oleg Nesterov
2015-07-17 1:27 ` Dave Chinner
2015-07-17 17:31 ` Oleg Nesterov
2015-07-17 22:40 ` Dave Chinner
2015-07-20 8:26 ` Jan Kara
2015-07-22 21:09 ` Oleg Nesterov
2015-07-20 16:23 ` Oleg Nesterov
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=20150714212249.GA18441@redhat.com \
--to=oleg@redhat.com \
--cc=daniel.wagner@bmw-carit.de \
--cc=dave.hansen@linux.intel.com \
--cc=dave@stgolabs.net \
--cc=jack@suse.cz \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=peterz@infradead.org \
--cc=tj@kernel.org \
--cc=torvalds@linux-foundation.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.