[PATCH 1/3] bus/vmbus: use C11 memory model GCC builtin atomics

Tyler Retzlaff roretzla at linux.microsoft.com
Mon Mar 27 16:30:18 CEST 2023


Replace use of __sync_or_and_fetch with __atomic_fetch_or.

Signed-off-by: Tyler Retzlaff <roretzla at linux.microsoft.com>
---
 drivers/bus/vmbus/vmbus_channel.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/bus/vmbus/vmbus_channel.c b/drivers/bus/vmbus/vmbus_channel.c
index 5549fd0..4d74df3 100644
--- a/drivers/bus/vmbus/vmbus_channel.c
+++ b/drivers/bus/vmbus/vmbus_channel.c
@@ -22,7 +22,7 @@
 vmbus_sync_set_bit(volatile uint32_t *addr, uint32_t mask)
 {
 	/* Use GCC builtin which atomic does atomic OR operation */
-	__sync_or_and_fetch(addr, mask);
+	__atomic_fetch_or(addr, mask, __ATOMIC_SEQ_CST);
 }
 
 static inline void
-- 
1.8.3.1



More information about the dev mailing list