Re: [PATCH] dm.c - device-mapper I/O path fixes

Paul Mackerras
2002-12-11T21:04:47Z

Kevin Corry writes:

> Storing an int is *not* atomic unless it is declared as atomic_t and you use
> the appropriate macros (see include/asm-*/atomic.h). Remember, we are talking
> about a field in a data structure that can be accessed from multiple threads
> on multiple CPUs.

As a practical matter, I believe that storing an int to an int-aligned
address _is_ actually atomic on any CPU that can run Linux. The
PowerPC architecture spec requires that single-word (i.e. 32-bit)
aligned stores are atomic, for instance, and I think that would be the
case on any other sane architecture as well.

The language lawyers would probably agree with you, though.

Regards,
Paul.