Skip to content

Conversation

@00xc
Copy link
Member

@00xc 00xc commented Jan 19, 2026

Set snp_ap_runnable to true on a VMPL run request. This is needed because the destination vCPU may not have been run before, meaning that it will have a pending KVM_REQ_UPDATE_PROTECTED_GUEST_STATE request. This request will be honored by vcpu_enter_guest(), resetting the vCPU, and setting its mp_state in sev_snp_init_protected_guest_state() to KVM_MP_STATE_UNINITIALIZED, unless snp_ap_runnable is set to true.

This results in the vCPU being infinitely stuck in the main loop in vcpu_run(), as KVM will wait until an external signal sets the vCPU to a runnable state.

Fixes: 4534503 ("kvm/amd: Treat SEV_SNP_RUN_VMPL as INIT-SIPI")

Set snp_ap_runnable to true on a VMPL run request. This is needed
because the destination vCPU may not have been run before, meaning that
it will have a pending KVM_REQ_UPDATE_PROTECTED_GUEST_STATE request.
This request will be honored by vcpu_enter_guest(), resetting the vCPU,
and setting its mp_state in sev_snp_init_protected_guest_state() to
KVM_MP_STATE_UNINITIALIZED, unless snp_ap_runnable is set to true.

This results in the vCPU being infinitely stuck in the main loop in
vcpu_run(), as KVM will wait until an external signal sets the vCPU
to a runnable state.

Fixes: 4534503 ("kvm/amd: Treat SEV_SNP_RUN_VMPL as INIT-SIPI")
Signed-off-by: Carlos López <clopez@suse.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant