HomeFreeBSD

vm_phys: remove limitation on number of fictitious regions

Description

vm_phys: remove limitation on number of fictitious regions

The number of vm fictitious regions was limited to 8 by default, but
Xen will make heavy usage of those kind of regions in order to map
memory from foreign domains, so instead of increasing the default
number, change the implementation to use a red-black tree to track vm
fictitious ranges.

The public interface remains the same.

Sponsored by: Citrix Systems R&D
Reviewed by: kib, alc
Approved by: gibbs

vm/vm_phys.c:

  • Replace the vm fictitious static array with a red-black tree.
  • Use a rwlock instead of a mutex, since now we also need to take the lock in vm_phys_fictitious_to_vm_page, and it can be shared.

Details

Provenance
roygerAuthored on Jul 9 2014, 8:12 AM
Parents
rGfe82cbe85caf: In several cases in ip_output() we obtain reference on ifa. Do not
Branches
Unknown
Tags
Unknown

Event Timeline