diff --git a/softmmu/cpu-throttle.c b/softmmu/cpu-throttle.c
index 4e6b281..2ec4b8e 100644
--- a/softmmu/cpu-throttle.c
+++ b/softmmu/cpu-throttle.c
@@ -64,7 +64,7 @@
         }
         sleeptime_ns = endtime_ns - qemu_clock_get_ns(QEMU_CLOCK_REALTIME);
     }
-    atomic_set(&cpu->throttle_thread_scheduled, 0);
+    qatomic_set(&cpu->throttle_thread_scheduled, 0);
 }
 
 static void cpu_throttle_timer_tick(void *opaque)
@@ -77,7 +77,7 @@
         return;
     }
     CPU_FOREACH(cpu) {
-        if (!atomic_xchg(&cpu->throttle_thread_scheduled, 1)) {
+        if (!qatomic_xchg(&cpu->throttle_thread_scheduled, 1)) {
             async_run_on_cpu(cpu, cpu_throttle_thread,
                              RUN_ON_CPU_NULL);
         }
@@ -94,7 +94,7 @@
     new_throttle_pct = MIN(new_throttle_pct, CPU_THROTTLE_PCT_MAX);
     new_throttle_pct = MAX(new_throttle_pct, CPU_THROTTLE_PCT_MIN);
 
-    atomic_set(&throttle_percentage, new_throttle_pct);
+    qatomic_set(&throttle_percentage, new_throttle_pct);
 
     timer_mod(throttle_timer, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL_RT) +
                                        CPU_THROTTLE_TIMESLICE_NS);
@@ -102,7 +102,7 @@
 
 void cpu_throttle_stop(void)
 {
-    atomic_set(&throttle_percentage, 0);
+    qatomic_set(&throttle_percentage, 0);
 }
 
 bool cpu_throttle_active(void)
@@ -112,7 +112,7 @@
 
 int cpu_throttle_get_percentage(void)
 {
-    return atomic_read(&throttle_percentage);
+    return qatomic_read(&throttle_percentage);
 }
 
 void cpu_throttle_init(void)
