From: Jan Kiszka <[email protected]>

Prepend "atomic" so that it becomes clear that this and only this bitop
works atomically.

Signed-off-by: Jan Kiszka <[email protected]>
---
 hypervisor/arch/arm/include/asm/bitops.h   | 2 +-
 hypervisor/arch/arm64/include/asm/bitops.h | 2 +-
 hypervisor/arch/x86/include/asm/bitops.h   | 2 +-
 hypervisor/printk.c                        | 3 ++-
 4 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/hypervisor/arch/arm/include/asm/bitops.h 
b/hypervisor/arch/arm/include/asm/bitops.h
index 8b9c9d1f..a0c4e9dd 100644
--- a/hypervisor/arch/arm/include/asm/bitops.h
+++ b/hypervisor/arch/arm/include/asm/bitops.h
@@ -17,7 +17,7 @@ test_bit(unsigned int nr, const volatile unsigned long *addr)
                (addr[nr / BITS_PER_LONG])) != 0;
 }
 
-static inline int test_and_set_bit(int nr, volatile unsigned long *addr)
+static inline int atomic_test_and_set_bit(int nr, volatile unsigned long *addr)
 {
        unsigned long ret, val, test;
 
diff --git a/hypervisor/arch/arm64/include/asm/bitops.h 
b/hypervisor/arch/arm64/include/asm/bitops.h
index 004c3b44..3de2a24d 100644
--- a/hypervisor/arch/arm64/include/asm/bitops.h
+++ b/hypervisor/arch/arm64/include/asm/bitops.h
@@ -18,7 +18,7 @@ test_bit(unsigned int nr, const volatile unsigned long *addr)
                (addr[nr / BITS_PER_LONG])) != 0;
 }
 
-static inline int test_and_set_bit(int nr, volatile unsigned long *addr)
+static inline int atomic_test_and_set_bit(int nr, volatile unsigned long *addr)
 {
        u32 ret;
        u64 test, tmp;
diff --git a/hypervisor/arch/x86/include/asm/bitops.h 
b/hypervisor/arch/x86/include/asm/bitops.h
index 12d85fdb..6d265bca 100644
--- a/hypervisor/arch/x86/include/asm/bitops.h
+++ b/hypervisor/arch/x86/include/asm/bitops.h
@@ -47,7 +47,7 @@ static inline int variable_test_bit(int nr, volatile const 
unsigned long *addr)
         ? constant_test_bit((nr), (addr))      \
         : variable_test_bit((nr), (addr)))
 
-static inline int test_and_set_bit(int nr, volatile unsigned long *addr)
+static inline int atomic_test_and_set_bit(int nr, volatile unsigned long *addr)
 {
        int oldbit;
 
diff --git a/hypervisor/printk.c b/hypervisor/printk.c
index 1b6151e0..c9e22b29 100644
--- a/hypervisor/printk.c
+++ b/hypervisor/printk.c
@@ -262,7 +262,8 @@ void panic_printk(const char *fmt, ...)
        unsigned long cpu_id = phys_processor_id();
        va_list ap;
 
-       if (test_and_set_bit(0, &panic_in_progress) && panic_cpu != cpu_id)
+       if (atomic_test_and_set_bit(0, &panic_in_progress) &&
+           panic_cpu != cpu_id)
                return;
        panic_cpu = cpu_id;
 
-- 
2.16.4

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jailhouse-dev/84844ce64639ff86ca42d8ea2a2b7d437f6ef9be.1581930651.git.jan.kiszka%40siemens.com.

Reply via email to