DragonFly commits List (threaded) for 2010-03
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: kernel - pmap (i386) - Reduce kmem use for foreign pmap mapping
commit 9388fcaad1973ace4809da7b52f7f0e56ed0a69e
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Wed Mar 3 17:53:37 2010 -0800
kernel - pmap (i386) - Reduce kmem use for foreign pmap mapping
* We've been having problems running out of KVA on i386 systems due to
numerous reasons. KVA use by the kernel is just too tight.
* Reserve space for foreign pmap page table mappings on a cpu-by-cpu basis
instead of for SMP_MAXCPU. This reduces KVM use from 68MB to (ncpu*4MB).
Use the APT entry for cpu0 and use kmem_alloc_nofault() for the APs.
This frees up 52MB of KVA which doesn't sound like a lot but actually
is.
* Add an alignment argument to kmem_alloc_nofault() and vm_map_find().
* vm_map_findspace() already had an alignment argument, but adjust the
value passed to be at least PAGE_SIZE (this has no operational effect
but is more correct).
Summary of changes:
sys/bus/pci/i386/pci_cfgreg.c | 3 ++-
sys/bus/pci/x86_64/pci_cfgreg.c | 3 ++-
sys/emulation/linux/i386/imgact_linux.c | 9 +++++----
sys/emulation/linux/linux_misc.c | 8 ++++----
sys/kern/imgact_gzip.c | 5 ++---
sys/kern/init_main.c | 6 +++---
sys/kern/kern_msfbuf.c | 3 ++-
sys/kern/kern_sfbuf.c | 3 ++-
sys/kern/link_elf.c | 6 +++---
sys/kern/link_elf_obj.c | 3 ++-
sys/kern/sys_pipe.c | 6 +++---
sys/kern/sys_process.c | 12 ++++++------
sys/kern/sysv_shm.c | 3 ++-
sys/platform/pc32/i386/mp_machdep.c | 11 ++++++++---
sys/platform/pc32/i386/pmap.c | 8 ++++----
sys/platform/pc32/include/pmap.h | 24 ++++++++----------------
sys/platform/pc64/x86_64/pmap.c | 4 ++--
sys/platform/vkernel/platform/pmap.c | 2 +-
sys/vm/vm_contig.c | 2 +-
sys/vm/vm_extern.h | 2 +-
sys/vm/vm_kern.c | 23 ++++++++++-------------
sys/vm/vm_map.c | 6 +++---
sys/vm/vm_map.h | 7 +++----
sys/vm/vm_mmap.c | 10 ++++++----
sys/vm/vm_unix.c | 7 +++----
25 files changed, 88 insertions(+), 88 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/9388fcaad1973ace4809da7b52f7f0e56ed0a69e
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]