[PATCH 7/7] cpuidle/poll_state: replace cpu_relax with smp_cond_load_relaxed

Christoph Lameter cl at linux.com
Wed Nov 22 12:51:19 PST 2023


On Mon, 20 Nov 2023, Mihai Carabas wrote:

> cpu_relax on ARM64 does a simple "yield". Thus we replace it with
> smp_cond_load_relaxed which basically does a "wfe".

Well it clears events first (which requires the first WFE) and then does a 
WFE waiting for any events if no events were pending.

WFE does not cause a VMEXIT? Or does the inner loop of 
smp_cond_load_relaxed now do 2x VMEXITS?

KVM ARM64 code seems to indicate that WFE causes a VMEXIT. See 
kvm_handle_wfx().



More information about the linux-arm-kernel mailing list