]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Change the way that unmanaged pages are created. Specifically,
authoralc <alc@FreeBSD.org>
Sun, 25 Feb 2007 06:14:58 +0000 (06:14 +0000)
committeralc <alc@FreeBSD.org>
Sun, 25 Feb 2007 06:14:58 +0000 (06:14 +0000)
commit573a964db6deb3f61961bfe0f4586caa6b8cbb9e
tree8f61202f24e3670c10df7262f4f001d14fbb32df
parent7b83533659e4ccdf5e867d26a2d738717e00f2cc
Change the way that unmanaged pages are created.  Specifically,
immediately flag any page that is allocated to a OBJT_PHYS object as
unmanaged in vm_page_alloc() rather than waiting for a later call to
vm_page_unmanage().  This allows for the elimination of some uses of
the page queues lock.

Change the type of the kernel and kmem objects from OBJT_DEFAULT to
OBJT_PHYS.  This allows us to take advantage of the above change to
simplify the allocation of unmanaged pages in kmem_alloc() and
kmem_malloc().

Remove vm_page_unmanage().  It is no longer used.
sys/vm/phys_pager.c
sys/vm/vm_kern.c
sys/vm/vm_map.c
sys/vm/vm_object.c
sys/vm/vm_page.c
sys/vm/vm_page.h