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 PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 20 Aug 2007 09:28:05 -0400 From: Chris Snook <csnook@...hat.com> To: Stefan Richter <stefanr@...6.in-berlin.de> CC: Jonathan Corbet <corbet@....net>, Greg Kroah-Hartman <gregkh@...e.de>, Nick Piggin <nickpiggin@...oo.com.au>, paulmck@...ux.vnet.ibm.com, Herbert Xu <herbert@...dor.apana.org.au>, Paul Mackerras <paulus@...ba.org>, Satyam Sharma <satyam@...radead.org>, Christoph Lameter <clameter@....com>, Linux Kernel Mailing List <linux-kernel@...r.kernel.org>, linux-arch@...r.kernel.org, Linus Torvalds <torvalds@...ux-foundation.org>, netdev@...r.kernel.org, Andrew Morton <akpm@...ux-foundation.org>, ak@...e.de, heiko.carstens@...ibm.com, davem@...emloft.net, schwidefsky@...ibm.com, wensong@...ux-vs.org, horms@...ge.net.au, wjiang@...ilience.com, cfriesen@...tel.com, zlynx@....org, rpjday@...dspring.com, jesper.juhl@...il.com, segher@...nel.crashing.org Subject: Re: LDD3 pitfalls (was Re: [PATCH 0/24] make atomic_read() behave consistently across all architectures) Stefan Richter wrote: > Nick Piggin wrote: >> Stefan Richter wrote: >>> Nick Piggin wrote: >>> >>>> I don't know why people would assume volatile of atomics. AFAIK, most >>>> of the documentation is pretty clear that all the atomic stuff can be >>>> reordered etc. except for those that modify and return a value. >>> >>> Which documentation is there? >> Documentation/atomic_ops.txt >> >> >>> For driver authors, there is LDD3. It doesn't specifically cover >>> effects of optimization on accesses to atomic_t. >>> >>> For architecture port authors, there is Documentation/atomic_ops.txt. >>> Driver authors also can learn something from that document, as it >>> indirectly documents the atomic_t and bitops APIs. >>> >> "Semantics and Behavior of Atomic and Bitmask Operations" is >> pretty direct :) >> >> Sure, it says that it's for arch maintainers, but there is no >> reason why users can't make use of it. > > > Note, LDD3 page 238 says: "It is worth noting that most of the other > kernel primitives dealing with synchronization, such as spinlock and > atomic_t operations, also function as memory barriers." > > I don't know about Linux 2.6.10 against which LDD3 was written, but > currently only _some_ atomic_t operations function as memory barriers. > > Besides, judging from some posts in this thread, saying that atomic_t > operations dealt with synchronization may not be entirely precise. atomic_t is often used as the basis for implementing more sophisticated synchronization mechanisms, such as rwlocks. Whether or not they are designed for that purpose, the atomic_* operations are de facto synchronization primitives. -- Chris - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists