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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:	Mon, 30 Oct 2006 16:20:55 -0500 (EST)
From:	"Robert P. J. Day" <rpjday@...dspring.com>
To:	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
cc:	trivial@...nel.org
Subject: [PATCH] atomic.h : atomic_t "counter" members should be volatile


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

Signed-off-by: Robert P. J. Day <rpjday@...dspring.com>
---
  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 majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ