User: Password:
|
|
Subscribe / Log in / New account

Re: [bisected] pre-3.16 regression on open() scalability

From:  Eric Dumazet <eric.dumazet-AT-gmail.com>
To:  Andi Kleen <ak-AT-linux.intel.com>
Subject:  Re: [bisected] pre-3.16 regression on open() scalability
Date:  Wed, 18 Jun 2014 21:52:25 -0700
Message-ID:  <1403153545.1225.8.camel@edumazet-glaptop2.roam.corp.google.com>
Cc:  "Paul E. McKenney" <paulmck-AT-linux.vnet.ibm.com>, Dave Hansen <dave.hansen-AT-intel.com>, LKML <linux-kernel-AT-vger.kernel.org>, Josh Triplett <josh-AT-joshtriplett.org>, "Chen, Tim C" <tim.c.chen-AT-intel.com>, Christoph Lameter <cl-AT-linux.com>
Archive-link:  Article

On Wed, 2014-06-18 at 20:38 -0700, Andi Kleen wrote:
> On Wed, Jun 18, 2014 at 07:13:37PM -0700, Paul E. McKenney wrote:
> > On Wed, Jun 18, 2014 at 06:42:00PM -0700, Andi Kleen wrote:
> > > 
> > > I still think it's totally the wrong direction to pollute so 
> > > many fast paths with this obscure debugging check workaround
> > > unconditionally.
> > 
> > OOM prevention should count for something, I would hope.
> 
> OOM in what scenario? This is getting bizarre.
> 
> If something keeps looping forever in the kernel creating 
> RCU callbacks without any real quiescent states it's simply broken.

Typical problem we faced in the past is in exit() path when multi
thousands of files/sockets are rcu-freed, and qhimark is hit.

Huge latency alerts, as freeing 10000+ items takes a while (about 70 ns
per item...)

Maybe close_files() should use a
cond_resched_and_keep_rcu_queues_small_please() ;)





(Log in to post comments)


Copyright © 2014, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds