From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753669AbbGAOBj (ORCPT ); Wed, 1 Jul 2015 10:01:39 -0400 Received: from e32.co.us.ibm.com ([32.97.110.150]:47978 "EHLO e32.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750798AbbGAOBc (ORCPT ); Wed, 1 Jul 2015 10:01:32 -0400 X-Helo: d03dlp02.boulder.ibm.com X-MailFrom: paulmck@linux.vnet.ibm.com X-RcptTo: linux-kernel@vger.kernel.org Date: Wed, 1 Jul 2015 07:01:22 -0700 From: "Paul E. McKenney" To: Peter Zijlstra Cc: Josh Triplett , linux-kernel@vger.kernel.org, mingo@kernel.org, laijs@cn.fujitsu.com, dipankar@in.ibm.com, akpm@linux-foundation.org, mathieu.desnoyers@efficios.com, tglx@linutronix.de, rostedt@goodmis.org, dhowells@redhat.com, edumazet@google.com, dvhart@linux.intel.com, fweisbec@gmail.com, oleg@redhat.com, bobby.prani@gmail.com Subject: Re: [PATCH RFC tip/core/rcu 0/5] Expedited grace periods encouraging normal ones Message-ID: <20150701140121.GC3717@linux.vnet.ibm.com> Reply-To: paulmck@linux.vnet.ibm.com References: <20150630214805.GA7795@linux.vnet.ibm.com> <20150630220014.GA10916@cloud> <20150630221224.GQ3717@linux.vnet.ibm.com> <20150630234633.GA11450@cloud> <20150701001558.GU3717@linux.vnet.ibm.com> <20150701004214.GA30853@x> <20150701033701.GV3717@linux.vnet.ibm.com> <20150701101221.GS19282@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150701101221.GS19282@twins.programming.kicks-ass.net> User-Agent: Mutt/1.5.21 (2010-09-15) X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15070114-0005-0000-0000-0000133C4688 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jul 01, 2015 at 12:12:21PM +0200, Peter Zijlstra wrote: > On Tue, Jun 30, 2015 at 08:37:01PM -0700, Paul E. McKenney wrote: > > > Wait, what? Why is anything using traditional (non-S) RCU while *any* > > > lock is held? > > > > In their defense, it is a sleeplock that is never taken except when > > rearranging networking configuration. Sometimes they need a grace period > > under the lock. So synchronize_net() checks to see if RTNL is held, and > > does a synchronize_rcu_expedited() if so and a synchronize_rcu() if not. > > Sounds vile. OK, I'll bite. Exactly what seems especially vile about it? Thanx, Paul