Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1203886

Re: [PATCH] ipc/sem.c: Update/correct memory barriers

Path csiph.com!goblin2!goblin.stu.neva.ru!aioe.org!bofh.it!news.nic.it!robomod
From Peter Zijlstra <peterz@infradead.org>
Newsgroups linux.kernel
Subject Re: [PATCH] ipc/sem.c: Update/correct memory barriers
Date Mon, 10 Aug 2015 10:20:02 +0200
Message-ID <pVQtk-m5-17@gated-at.bofh.it> (permalink)
References <pVD33-4W3-1@gated-at.bofh.it>
X-Original-To Manfred Spraul <manfred@colorfullife.com>
MIME-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
User-Agent Mutt/1.5.21 (2012-12-30)
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 28
Organization linux.* mail to news gateway
X-Original-Cc Andrew Morton <akpm@linux-foundation.org>, LKML <linux-kernel@vger.kernel.org>, 1vier1@web.de, Oleg Nesterov <oleg@redhat.com>, "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>, Kirill Tkhai <ktkhai@parallels.com>, Ingo Molnar <mingo@redhat.com>, Josh Poimboeuf <jpoimboe@redhat.com>, stable@vger.kernel.org
X-Original-Date Mon, 10 Aug 2015 10:15:52 +0200
X-Original-Message-ID <20150810081552.GV16853@twins.programming.kicks-ass.net>
X-Original-References <1439142939-2605-1-git-send-email-manfred@colorfullife.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1203886

Show key headers only | View raw


On Sun, Aug 09, 2015 at 07:55:39PM +0200, Manfred Spraul wrote:
> sem_lock() did not properly pair memory barriers:
> 
> !spin_is_locked() and spin_unlock_wait() are both only control barriers.
> The code needs an acquire barrier, otherwise the cpu might perform
> read operations before the lock test.
> As no primitive exists inside <include/spinlock.h> and since it seems
> noone wants another primitive, the code creates a local primitive within
> ipc/sem.c.
> 
> With regards to -stable:
> The change of sem_wait_array() is a bugfix, the change to sem_lock()
> is a nop (just a preprocessor redefinition to improve the readability).
> The bugfix is necessary for all kernels that use sem_wait_array()
> (i.e.: starting from 3.10).
> 
> Andrew: Could you include it into your tree and forward it?
> 
> Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
> Reported-by: Oleg Nesterov <oleg@redhat.com>
> Cc: <stable@vger.kernel.org>

Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
--
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/

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH] ipc/sem.c: Update/correct memory barriers Manfred Spraul <manfred@colorfullife.com> - 2015-08-09 20:00 +0200
  Re: [PATCH] ipc/sem.c: Update/correct memory barriers Peter Zijlstra <peterz@infradead.org> - 2015-08-10 10:20 +0200
  Re: [PATCH] ipc/sem.c: Update/correct memory barriers Oleg Nesterov <oleg@redhat.com> - 2015-08-12 15:40 +0200

csiph-web