[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CALAqxLUZ90ZLKKnJhh6Pafm89Ph_syGG4dgTPTVHU-ba_tUXMg@mail.gmail.com>
Date: Wed, 13 Jul 2016 13:57:06 -0700
From: John Stultz <john.stultz@...aro.org>
To: Tejun Heo <tj@...nel.org>
Cc: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
lkml <linux-kernel@...r.kernel.org>,
Dmitry Shmidt <dimitrysh@...gle.com>,
Rom Lemarchand <romlem@...gle.com>,
Colin Cross <ccross@...gle.com>, Todd Kjos <tkjos@...gle.com>,
Oleg Nesterov <oleg@...hat.com>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
Subject: Re: Severe performance regression w/ 4.4+ on Android due to cgroup
locking changes
On Wed, Jul 13, 2016 at 1:39 PM, Tejun Heo <tj@...nel.org> wrote:
> Hello,
>
> On Wed, Jul 13, 2016 at 10:26:57PM +0200, Peter Zijlstra wrote:
>> > So, it's a percpu rwsem issue then. I haven't really followed the
>> > perpcpu rwsem changes closely. Oleg, are multi-milisec delay expected
>> > on down write expected with the current implementation of
>> > percpu_rwsem?
>>
>> There is a synchronize_sched() in there, so sorta. That thing is heavily
>> geared towards readers, as is the only 'sane' choice for global locks.
>
> It used to use the expedited variant until 001dac627ff3
> ("locking/percpu-rwsem: Make use of the rcu_sync infrastructure"), so
> it might have been okay before then.
Just as a datapoint, just reverting 001dac627ff3
("locking/percpu-rwsem: Make use of the rcu_sync infrastructure"),
doesn't seem to help as much as your prior patch going to a normal
rwsem.
I'm consistently seeing values in the 100-550us range (with occasional
spikes around 6ms), with a max value at 36ms.
thanks
-john
Powered by blists - more mailing lists