Date: Sun, 24 Dec 2006 08:03:27 +0000 (UTC) From: Kip Macy <kmacy@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/sun4v/sun4v pmap.c tte.c Message-ID: <200612240803.kBO83R7S016412@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
kmacy 2006-12-24 08:03:27 UTC
FreeBSD src repository
Modified files:
sys/sun4v/sun4v pmap.c tte.c
Log:
- remove all calls to sched_pin and sched_unpin as they are only useful to
pmap on i386
- check for change in executable status in pmap_enter
- pmap_qenter and pmap_qremove only need to invalidate the range if one
of the pages has been referenced
- remove pmap_kenter/pmap_kremove as they were only used by pmap_qenter
and pmap_qremove
- in pmap_copy don't copy wired bit to destination pmap
- mpte was unused in pmap_enter_object - remove
- pmap_enter_quick_locked is not called on the kernel_pmap, remove check
- move pmap_remove_write specific logic out of tte_clear_phys_bit
- in pmap_protect check for removal of execute bit
- panic in the presence of a wired page in pmap_remove_all
- pmap_zero_range can call hwblkclr if offset is zero and size is PAGE_SIZE
- tte_clear_virt_bit is only used by pmap_change_wiring - thus it can be
greatly simplified
- pmap_invalidate_page need only be called in tte_clear_phys_bit if there
is a match with flags
- lock the pmap in tte_clear_phys_bit so that clearing the page bits is
atomic with invalidating the page
- these changes result in 100s reduction in buildworld from a malloc backed
disk to a malloc backed disk - ~2.5%
Revision Changes Path
1.30 +64 -104 src/sys/sun4v/sun4v/pmap.c
1.3 +14 -29 src/sys/sun4v/sun4v/tte.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200612240803.kBO83R7S016412>
