Date: Mon, 24 May 2010 14:26:57 +0000 (UTC) From: Alan Cox <alc@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/amd64/amd64 pmap.c src/sys/arm/arm pmap.c src/sys/i386/i386 pmap.c src/sys/i386/xen pmap.c src/sys/ia64/ia64 pmap.c src/sys/kern vfs_bio.c src/sys/mips/mips pmap.c src/sys/powerpc/aim mmu_oea.c mmu_oea64.c src/sys/powerpc/booke ... Message-ID: <201005241433.o4OEXYfX053719@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
alc 2010-05-24 14:26:57 UTC FreeBSD src repository Modified files: sys/amd64/amd64 pmap.c sys/arm/arm pmap.c sys/i386/i386 pmap.c sys/i386/xen pmap.c sys/ia64/ia64 pmap.c sys/kern vfs_bio.c sys/mips/mips pmap.c sys/powerpc/aim mmu_oea.c mmu_oea64.c sys/powerpc/booke pmap.c sys/powerpc/powerpc mmu_if.m pmap_dispatch.c sys/sparc64/sparc64 pmap.c sys/sun4v/sun4v pmap.c sys/sys pcpu.h sys/vm pmap.h vm_mmap.c vm_object.c vm_page.c vm_page.h vm_pageout.c Log: SVN rev 208504 on 2010-05-24 14:26:57Z by alc Roughly half of a typical pmap_mincore() implementation is machine- independent code. Move this code into mincore(), and eliminate the page queues lock from pmap_mincore(). Push down the page queues lock into pmap_clear_modify(), pmap_clear_reference(), and pmap_is_modified(). Assert that these functions are never passed an unmanaged page. Eliminate an inaccurate comment from powerpc/powerpc/mmu_if.m: Contrary to what the comment says, pmap_mincore() is not simply an optimization. Without a complete pmap_mincore() implementation, mincore() cannot return either MINCORE_MODIFIED or MINCORE_REFERENCED because only the pmap can provide this information. Eliminate the page queues lock from vfs_setdirty_locked_object(), vm_pageout_clean(), vm_object_page_collect_flush(), and vm_object_page_clean(). Generally speaking, these are all accesses to the page's dirty field, which are synchronized by the containing vm object's lock. Reduce the scope of the page queues lock in vm_object_madvise() and vm_page_dontneed(). Reviewed by: kib (an earlier version) Revision Changes Path 1.698 +56 -51 src/sys/amd64/amd64/pmap.c 1.124 +22 -1 src/sys/arm/arm/pmap.c 1.678 +56 -51 src/sys/i386/i386/pmap.c 1.40 +53 -54 src/sys/i386/xen/pmap.c 1.219 +55 -56 src/sys/ia64/ia64/pmap.c 1.579 +0 -2 src/sys/kern/vfs_bio.c 1.50 +68 -44 src/sys/mips/mips/pmap.c 1.139 +34 -6 src/sys/powerpc/aim/mmu_oea.c 1.26 +34 -6 src/sys/powerpc/aim/mmu_oea64.c 1.28 +48 -32 src/sys/powerpc/booke/pmap.c 1.14 +5 -4 src/sys/powerpc/powerpc/mmu_if.m 1.22 +2 -2 src/sys/powerpc/powerpc/pmap_dispatch.c 1.196 +40 -12 src/sys/sparc64/sparc64/pmap.c 1.54 +37 -2 src/sys/sun4v/sun4v/pmap.c 1.38 +1 -0 src/sys/sys/pcpu.h 1.90 +2 -1 src/sys/vm/pmap.h 1.240 +67 -26 src/sys/vm/vm_mmap.c 1.423 +6 -29 src/sys/vm/vm_object.c 1.404 +4 -3 src/sys/vm/vm_page.c 1.168 +4 -2 src/sys/vm/vm_page.h 1.323 +0 -6 src/sys/vm/vm_pageout.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201005241433.o4OEXYfX053719>