From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754131AbcEZO0g (ORCPT ); Thu, 26 May 2016 10:26:36 -0400 Received: from bombadil.infradead.org ([198.137.202.9]:43222 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754102AbcEZO0e (ORCPT ); Thu, 26 May 2016 10:26:34 -0400 Message-Id: <20160526141922.163198062@infradead.org> User-Agent: quilt/0.61-1 Date: Thu, 26 May 2016 16:19:22 +0200 From: Peter Zijlstra To: linux-kernel@vger.kernel.org, torvalds@linux-foundation.org, manfred@colorfullife.com, dave@stgolabs.net, paulmck@linux.vnet.ibm.com, will.deacon@arm.com Cc: boqun.feng@gmail.com, Waiman.Long@hpe.com, tj@kernel.org, pablo@netfilter.org, kaber@trash.net, davem@davemloft.net, oleg@redhat.com, netfilter-devel@vger.kernel.org, sasha.levin@oracle.com, hofrat@osadl.org, "Peter Zijlstra (Intel)" Subject: [PATCH -v2 0/6] spin_unlock_wait borkage Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This version rewrites all spin_unlock_wait() implementations to provide the acquire order against the spin_unlock() release we wait on, ensuring we can fully observe the critical section we waited on. It pulls in the smp_cond_acquire() rewrite because it introduces a lot more users of it. All simple spin_unlock_wait implementations end up being an smp_cond_load_acquire(). And while this still introduces smp_acquire__after_ctrl_dep() it keeps its usage contained to a few sites. Please consider.. carefully.