Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752732AbbBRQLX (ORCPT ); Wed, 18 Feb 2015 11:11:23 -0500 Received: from bombadil.infradead.org ([198.137.202.9]:33696 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752658AbbBRQLV (ORCPT ); Wed, 18 Feb 2015 11:11:21 -0500 Date: Wed, 18 Feb 2015 17:11:12 +0100 From: Peter Zijlstra To: Oleg Nesterov Cc: "Paul E. McKenney" , Kirill Tkhai , linux-kernel@vger.kernel.org, Ingo Molnar , Josh Poimboeuf Subject: Re: [PATCH 2/2] [PATCH] sched: Add smp_rmb() in task rq locking cycles Message-ID: <20150218161112.GB5029@twins.programming.kicks-ass.net> References: <20150217104516.12144.85911.stgit@tkhai> <1424170021.5749.22.camel@tkhai> <20150217121258.GM5029@twins.programming.kicks-ass.net> <20150217130523.GV24151@twins.programming.kicks-ass.net> <20150217160532.GW4166@linux.vnet.ibm.com> <20150217183636.GR5029@twins.programming.kicks-ass.net> <20150217215231.GK4166@linux.vnet.ibm.com> <20150218155334.GA26006@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150218155334.GA26006@redhat.com> User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2008 Lines: 38 On Wed, Feb 18, 2015 at 04:53:34PM +0100, Oleg Nesterov wrote: > On 02/17, Paul E. McKenney wrote: > > > > | mb | wmb | rmb | rbd | acq | rel | ctl | > > -----+-------+-------+-------+-------+-------+-------+-------+ > > mb | Y | | Y | y | Y | | Y + > > -----+-------+-------+-------+-------+-------+-------+-------+ > > wmb | Y | | Y | y | Y | | Y + > > -----+-------+-------+-------+-------+-------+-------+-------+ > > rmb | | | | | | | + > > -----+-------+-------+-------+-------+-------+-------+-------+ > > rbd | | | | | | | + > > -----+-------+-------+-------+-------+-------+-------+-------+ > > acq | | | | | | | + > > -----+-------+-------+-------+-------+-------+-------+-------+ > > rel | Y | | Y | y | Y | | Y + > > -----+-------+-------+-------+-------+-------+-------+-------+ > > ctl | | | | | | | + > > -----+-------+-------+-------+-------+-------+-------+-------+ > > OK, so "acq" can't pair with "acq", and I am not sure I understand. Please consider the table in the context of message passing; that is what Paul proposed. Your example from sysvsems, while interesting, would not fit the general scenario of message passing. This too illustrates a problem with that approach, people can't read, so they'll pick the wrong table to look at. I really think having just the _one_ table with obvious pairings marked, and everything not marked in the table needs careful reading. And acq-acq pairing would be a careful one in my book. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/