[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150715181920.GA1797@redhat.com>
Date: Wed, 15 Jul 2015 20:19:20 +0200
From: Oleg Nesterov <oleg@...hat.com>
To: Jan Kara <jack@...e.cz>
Cc: Dave Hansen <dave.hansen@...ux.intel.com>,
Al Viro <viro@...iv.linux.org.uk>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Paul McKenney <paulmck@...ux.vnet.ibm.com>,
Peter Zijlstra <peterz@...radead.org>,
Daniel Wagner <daniel.wagner@...-carit.de>,
Davidlohr Bueso <dave@...olabs.net>,
Ingo Molnar <mingo@...hat.com>, Tejun Heo <tj@...nel.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH RFC 0/4] change sb_writers to use percpu_rw_semaphore
On 07/15, Jan Kara wrote:
>
> On Tue 14-07-15 14:41:13, Dave Hansen wrote:
> >
> > I looked at it again. I tested with this patch in addition to the ones
> > modifying __sb_start/end_write():
> >
> > https://lkml.org/lkml/2015/6/24/682
> >
> > That is where the performance delta came from. Your patches (plus the
> > fsnotify optimization) perform very similarly to my approach.
> >
> > Yours remove so much code that I think they are the preferable approach.
> >
> > They don't compile with lockdep on, btw. :)
>
> Great, thanks for hashing it out.
Yes, thanks Dave!
> So I'm also in favor of Oleg's approach
> as well. We just have to wait until he fixes the outstanding issues with
> his code.
Yes. I'll try to make the working version, hopefully this week.
But,
> Dave, just send your fsnotify patch separately to AKPM - he
> usually merges fsnotify stuff.
Perhaps it makes to merge other 2 patches from Dave first? (those which
change __sb_start/end_write to rely on RCU). Afaics these changes are
straightforward and correct. Although I'd suggest to use preempt_disable()
and synchronize_sched() instead. I will be happy to (try to) make this
conversion on top of his changes.
Because I do not want to delay the performance improvements and I do not
know when exactly I'll send the next version: I need to finish the previous
discussion about rcu_sync first. And the necessary changes in fs/super.c
depend on whether percpu_rw_semaphore will have rcu_sync or not (not too
much, only destroy_super() depends, but still).
And of course, I am worried that I missed something and percpu_rw_semaphore
can't work for some reason. The code in fs/super.c looks simple, but it
seems that filesystems do the "strange" things with lockdep at least.
Oleg.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists