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

Aaron LI aly at crater.dragonflybsd.org
Tue Jul 20 16:30:34 PDT 2021


commit 5d445d4ccd1cd9a6c8af2fed063bdb0b30bbff86
Author: Aaron LI <aly at aaronly.me>
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(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/5d445d4ccd1cd9a6c8af2fed063bdb0b30bbff86


-- 
DragonFly BSD source repository



More information about the Commits mailing list