git: vkernel - Vastly improve ve caching

Matthew Dillon dillon at crater.dragonflybsd.org
Fri Dec 19 23:04:43 PST 2025


commit 3e53184d257e0fc16b273fc22bbd8e13547c65ae
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Fri Dec 19 22:44:35 2025 -0800

    vkernel - Vastly improve ve caching
    
    * Improve per-host-LWP ve caching, vastly reducing primary vkp token
      contention under heavy multi-core loads (e.g. build-all).  The
      per-LWP cache has been increased from one to four entries and
      is now tracked on all operations.
    
      Remaining host-side contention is on the vkernel's kernel map, and
      there isn't a whole lot I can do about that for now.
    
    * Release the primary vkp token across the pmap and vm_map deletion
      when destroying a context to reduce contention with vkernel
      operations on other cpus.
    
    * Changes should significantly vkernel improve concurrent syscall
      and fault performance in multi-core setups.

Summary of changes:
 sys/sys/vkernel.h   |   7 ++-
 sys/vm/vm_vmspace.c | 123 +++++++++++++++++++++++++++++++++++++++-------------
 2 files changed, 98 insertions(+), 32 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/3e53184d257e0fc16b273fc22bbd8e13547c65ae


-- 
DragonFly BSD source repository


More information about the Commits mailing list