lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 24 Nov 2010 11:37:02 -0800 From: Jeremy Fitzhardinge <jeremy@...p.org> To: Christoph Lameter <cl@...ux.com> CC: Pekka Enberg <penberg@...nel.org>, akpm@...ux-foundation.org, Pekka Enberg <penberg@...helsinki.fi>, Ingo Molnar <mingo@...e.hu>, Peter Zijlstra <peterz@...radead.org>, linux-kernel@...r.kernel.org, Eric Dumazet <eric.dumazet@...il.com>, Mathieu Desnoyers <mathieu.desnoyers@...icios.com>, Tejun Heo <tj@...nel.org> Subject: Re: [thiscpuops upgrade 10/10] Lockless (and preemptless) fastpaths for slub On 11/24/2010 08:17 AM, Christoph Lameter wrote: > On Wed, 24 Nov 2010, Pekka Enberg wrote: > >>> + /* >>> + * The transaction ids are globally unique per cpu and per operation on >>> + * a per cpu queue. Thus they can be guarantee that the cmpxchg_double >>> + * occurs on the right processor and that there was no operation on the >>> + * linked list in between. >>> + */ >>> + tid = c->tid; >>> + barrier(); >> You're using a compiler barrier after every load from c->tid. Why? > To make sure that the compiler does not do something like loading the tid > later. The tid must be obtained before the rest of the information from > the per cpu slab data is retrieved in order to ensure that we have a > consistent set of data to operate on. Isn't that best expressed with ACCESS_ONCE()? J -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists