git: nvmm: Implement os_ipi_broadcast() for _change_cpu()

Aaron LI aly at
Tue Jul 20 16:30:34 PDT 2021

commit 5d445d4ccd1cd9a6c8af2fed063bdb0b30bbff86
Author: Aaron LI <aly at>
Date:   Sun Jul 11 14:05:26 2021 +0800

    nvmm: Implement os_ipi_broadcast() for _change_cpu()
    os_ipi_broadcast() is used in {svm,vmx}_init() and {svm,vmx}_fini() to
    enable/disable SVM/VMX on all CPUs.  The previous implementation used an
    interlock and made significant changes to the code.  Reimplement it in
    another way (loop on each CPU and execute the task), so it can be easily
    enclosed in the os_ipi_broadcast() function.
    The new implementation referred to our pc64/vmm/vmx.c code.

Summary of changes:
 sys/dev/virtual/nvmm/nvmm_os.h          | 12 +++++++++++-
 sys/dev/virtual/nvmm/x86/nvmm_x86_svm.c | 29 -----------------------------
 sys/dev/virtual/nvmm/x86/nvmm_x86_vmx.c | 28 ----------------------------
 3 files changed, 11 insertions(+), 58 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list