about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/atomic.h1
-rw-r--r--arch/microblaze/atomic.h1
-rw-r--r--arch/mips/atomic.h1
-rw-r--r--arch/or1k/atomic.h1
-rw-r--r--arch/powerpc/atomic.h1
-rw-r--r--arch/sh/atomic.h1
6 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/atomic.h b/arch/arm/atomic.h
index 302e6d8f..52103542 100644
--- a/arch/arm/atomic.h
+++ b/arch/arm/atomic.h
@@ -103,6 +103,7 @@ static inline void a_store(volatile int *p, int x)
 
 static inline void a_spin()
 {
+	__k_cas(&(int){0}, 0, 0));
 }
 
 static inline void a_crash()
diff --git a/arch/microblaze/atomic.h b/arch/microblaze/atomic.h
index 96265fe6..abb79b53 100644
--- a/arch/microblaze/atomic.h
+++ b/arch/microblaze/atomic.h
@@ -97,6 +97,7 @@ static inline void a_store(volatile int *p, int x)
 
 static inline void a_spin()
 {
+	a_cas(&(int){0}, 0, 0);
 }
 
 static inline void a_crash()
diff --git a/arch/mips/atomic.h b/arch/mips/atomic.h
index 3ec03586..cc5bf498 100644
--- a/arch/mips/atomic.h
+++ b/arch/mips/atomic.h
@@ -137,6 +137,7 @@ static inline void a_store(volatile int *p, int x)
 
 static inline void a_spin()
 {
+	a_cas(&(int){0}, 0, 0);
 }
 
 static inline void a_crash()
diff --git a/arch/or1k/atomic.h b/arch/or1k/atomic.h
index 5b0411b0..f9e69815 100644
--- a/arch/or1k/atomic.h
+++ b/arch/or1k/atomic.h
@@ -74,6 +74,7 @@ static inline void a_store(volatile int *p, int x)
 
 static inline void a_spin()
 {
+	a_cas(&(int){0}, 0, 0);
 }
 
 static inline void a_crash()
diff --git a/arch/powerpc/atomic.h b/arch/powerpc/atomic.h
index 1044886d..1c50361e 100644
--- a/arch/powerpc/atomic.h
+++ b/arch/powerpc/atomic.h
@@ -80,6 +80,7 @@ static inline void a_store(volatile int *p, int x)
 
 static inline void a_spin()
 {
+	a_cas(&(int){0}, 0, 0);
 }
 
 static inline void a_crash()
diff --git a/arch/sh/atomic.h b/arch/sh/atomic.h
index 93ab54fe..b95bbffc 100644
--- a/arch/sh/atomic.h
+++ b/arch/sh/atomic.h
@@ -53,6 +53,7 @@ static inline void a_dec(volatile int *x)
 
 static inline void a_spin()
 {
+	a_cas(&(int){0}, 0, 0);
 }
 
 static inline void a_crash()