Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Oct 2017 10:28:22 -0600
From:      Ian Lepore <ian@freebsd.org>
To:        Konstantin Belousov <kib@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r324926 - head/share/man/man9
Message-ID:  <1508776102.34364.7.camel@freebsd.org>
In-Reply-To: <201710231614.v9NGEtuP036360@repo.freebsd.org>
References:  <201710231614.v9NGEtuP036360@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 2017-10-23 at 16:14 +0000, Konstantin Belousov wrote:
> Author: kib
> Date: Mon Oct 23 16:14:55 2017
> New Revision: 324926
> URL: https://svnweb.freebsd.org/changeset/base/324926
> 
> Log:
>   Expand explanation of atomicity.
>   
>   Mention per-location total order, out of thin air, and torn writes
>   guarantees.  Mention C11 standard' memory model and one most important
>   FreeBSD additional requirement, that is aligned ordinary loads and
>   stores are atomic on processors.
>   
> [...]
> 
> +On all architectures supported by
> +.Fx ,
> +ordinary loads and stores of naturally aligned integer types
> +are atomic, as executed by the processor.

This is not true on arm{v6,v7}.  64-bit integer types can be atomically
loaded and stored with the appropriate functions from atomic.h, but are
not ordinarily so, regardless of alignment.  Smaller integer types do
meet this requirement.

-- Ian




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1508776102.34364.7.camel>