Date: Sat, 20 Jun 2015 17:18:46 +0000 (UTC) From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r284646 - head/share/man/man9 Message-ID: <201506201718.t5KHIkM2056426@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kib Date: Sat Jun 20 17:18:46 2015 New Revision: 284646 URL: https://svnweb.freebsd.org/changeset/base/284646 Log: The barriers, provided by _acq and _rel atomics, are acquire and release barriers, not read and write barriers. They fence all memory accesses from the respective side, not limited by the kind of operation. Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/share/man/man9/atomic.9 Modified: head/share/man/man9/atomic.9 ============================================================================== --- head/share/man/man9/atomic.9 Sat Jun 20 15:55:53 2015 (r284645) +++ head/share/man/man9/atomic.9 Sat Jun 20 17:18:46 2015 (r284646) @@ -23,7 +23,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 20, 2013 +.Dd June 20, 2015 .Dt ATOMIC 9 .Os .Sh NAME @@ -123,7 +123,9 @@ The first form just performs the operati The second form uses a read memory barrier, and the third variant uses a write memory barrier. .Pp -The second variant of each operation includes a read memory barrier. +The second variant of each operation includes an +.Em acquire +memory barrier. This barrier ensures that the effects of this operation are completed before the effects of any later data accesses. As a result, the operation is said to have acquire semantics as it acquires a @@ -137,7 +139,9 @@ For example, to subtract two integers en happen after the subtraction is performed, use .Fn atomic_subtract_acq_int . .Pp -The third variant of each operation includes a write memory barrier. +The third variant of each operation includes a +.Em release +memory barrier. This ensures that all effects of all previous data accesses are completed before this operation takes place. As a result, the operation is said to have release semantics as it releases
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201506201718.t5KHIkM2056426>