The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=642c0334f50a089aa0c3a58b0994f35afc638833
commit 642c0334f50a089aa0c3a58b0994f35afc638833 Author: Andrew Turner <and...@freebsd.org> AuthorDate: 2025-08-07 11:18:43 +0000 Commit: Andrew Turner <and...@freebsd.org> CommitDate: 2025-08-07 11:30:59 +0000 bhyve/arm64: Implement PSCI_FNID_CPU_OFF Support PSCI CPU_OFF by suspending the CPU and removing it from the running CPU set. Reviewed by: markj Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D51768 --- usr.sbin/bhyve/aarch64/vmexit.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/usr.sbin/bhyve/aarch64/vmexit.c b/usr.sbin/bhyve/aarch64/vmexit.c index e6dd4b074d39..3acad4020a3c 100644 --- a/usr.sbin/bhyve/aarch64/vmexit.c +++ b/usr.sbin/bhyve/aarch64/vmexit.c @@ -202,7 +202,10 @@ vmexit_smccc(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) smccc_rv = PSCI_VER(1, 0); break; case PSCI_FNID_CPU_SUSPEND: + break; case PSCI_FNID_CPU_OFF: + CPU_CLR_ATOMIC(vcpu_id(vcpu), &running_cpumask); + vm_suspend_cpu(vcpu); break; case PSCI_FNID_CPU_ON: mpidr = vme->u.smccc_call.args[0];