[PATCH] atomic.h : atomic_t "counter" members should be volatile

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Make sure all typedef struct's for atomic_t have a "volatile" counter
member.

Signed-off-by: Robert P. J. Day <[email protected]>
---
  According to what I read, it's highly recommended that that counter
member be declared with storage class "volatile".  This patch just
makes it consistently volatile across all architectures.

 asm-frv/atomic.h       |    2 +-
 asm-h8300/atomic.h     |    2 +-
 asm-m68k/atomic.h      |    2 +-
 asm-m68knommu/atomic.h |    2 +-
 asm-v850/atomic.h      |    2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/include/asm-frv/atomic.h b/include/asm-frv/atomic.h
index 066386a..df564bb 100644
--- a/include/asm-frv/atomic.h
+++ b/include/asm-frv/atomic.h
@@ -35,7 +35,7 @@ #define smp_mb__before_atomic_inc()	barr
 #define smp_mb__after_atomic_inc()	barrier()

 typedef struct {
-	int counter;
+	volatile int counter;
 } atomic_t;

 #define ATOMIC_INIT(i)		{ (i) }
diff --git a/include/asm-h8300/atomic.h b/include/asm-h8300/atomic.h
index 21f5442..3436bda 100644
--- a/include/asm-h8300/atomic.h
+++ b/include/asm-h8300/atomic.h
@@ -6,7 +6,7 @@ #define __ARCH_H8300_ATOMIC__
  * resource counting etc..
  */

-typedef struct { int counter; } atomic_t;
+typedef struct { volatile int counter; } atomic_t;
 #define ATOMIC_INIT(i)	{ (i) }

 #define atomic_read(v)		((v)->counter)
diff --git a/include/asm-m68k/atomic.h b/include/asm-m68k/atomic.h
index d5eed64..4a8c625 100644
--- a/include/asm-m68k/atomic.h
+++ b/include/asm-m68k/atomic.h
@@ -13,7 +13,7 @@ #include <asm/system.h>	/* local_irq_XXX
  * We do not have SMP m68k systems, so we don't have to deal with that.
  */

-typedef struct { int counter; } atomic_t;
+typedef struct { volatile int counter; } atomic_t;
 #define ATOMIC_INIT(i)	{ (i) }

 #define atomic_read(v)		((v)->counter)
diff --git a/include/asm-m68knommu/atomic.h b/include/asm-m68knommu/atomic.h
index 6c4e4b6..c77e601 100644
--- a/include/asm-m68knommu/atomic.h
+++ b/include/asm-m68knommu/atomic.h
@@ -12,7 +12,7 @@ #include <asm/system.h>	/* local_irq_XXX
  * We do not have SMP m68k systems, so we don't have to deal with that.
  */

-typedef struct { int counter; } atomic_t;
+typedef struct { volatile int counter; } atomic_t;
 #define ATOMIC_INIT(i)	{ (i) }

 #define atomic_read(v)		((v)->counter)
diff --git a/include/asm-v850/atomic.h b/include/asm-v850/atomic.h
index e4e57de..527480e 100644
--- a/include/asm-v850/atomic.h
+++ b/include/asm-v850/atomic.h
@@ -21,7 +21,7 @@ #ifdef CONFIG_SMP
 #error SMP not supported
 #endif

-typedef struct { int counter; } atomic_t;
+typedef struct { volatile int counter; } atomic_t;

 #define ATOMIC_INIT(i)	{ (i) }

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux