mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-09-22 17:27:53 +00:00
hv: use asm_pause() to replace inline ASM to satisfy MISRAC
pause_cpu() --> asm_pause() hlt_cpu() --> asm_hlt() inline ASM pause --> asm_pause() Tracked-On: #1821 Signed-off-by: Shuo A Liu <shuo.a.liu@intel.com> Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
@@ -301,7 +301,7 @@ void stop_cpus(void)
|
||||
|
||||
void cpu_do_idle(void)
|
||||
{
|
||||
__asm __volatile("pause" ::: "memory");
|
||||
asm_pause();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -325,7 +325,7 @@ void cpu_dead(void)
|
||||
|
||||
/* Halt the CPU */
|
||||
do {
|
||||
hlt_cpu();
|
||||
asm_hlt();
|
||||
} while (halt != 0);
|
||||
} else {
|
||||
pr_err("pcpu%hu already dead", pcpu_id);
|
||||
|
@@ -578,7 +578,7 @@ void pause_vcpu(struct acrn_vcpu *vcpu, enum vcpu_state new_state)
|
||||
|
||||
if (vcpu->pcpu_id != pcpu_id) {
|
||||
while (atomic_load32(&vcpu->running) == 1U)
|
||||
__asm__ __volatile("pause" ::: "memory");
|
||||
asm_pause();
|
||||
}
|
||||
} else {
|
||||
remove_from_cpu_runqueue(&vcpu->sched_obj, vcpu->pcpu_id);
|
||||
|
@@ -256,7 +256,7 @@ static inline void dmar_wait_completion(const struct dmar_drhd_rt *dmar_unit, ui
|
||||
}
|
||||
ASSERT(((rdtsc() - start) < CYCLES_PER_MS),
|
||||
"DMAR OP Timeout!");
|
||||
pause_cpu();
|
||||
asm_pause();
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user