cvs commit: src/sys/alpha/alpha pmap.c src/sys/amd64/amd64 pmap.c
src/sys/i386/i386 pmap.c src/sys/vm vm_page.c
Alan Cox
alc at FreeBSD.org
Thu Jul 29 11:56:55 PDT 2004
alc 2004-07-29 18:56:31 UTC
FreeBSD src repository
Modified files:
sys/alpha/alpha pmap.c
sys/amd64/amd64 pmap.c
sys/i386/i386 pmap.c
sys/vm vm_page.c
Log:
Advance the state of pmap locking on alpha, amd64, and i386.
- Enable recursion on the page queues lock. This allows calls to
vm_page_alloc(VM_ALLOC_NORMAL) and UMA's obj_alloc() with the page
queues lock held. Such calls are made to allocate page table pages
and pv entries.
- The previous change enables a partial reversion of vm/vm_page.c
revision 1.216, i.e., the call to vm_page_alloc() by vm_page_cowfault()
now specifies VM_ALLOC_NORMAL rather than VM_ALLOC_INTERRUPT.
- Add partial locking to pmap_copy(). (As a side-effect, pmap_copy()
should now be faster on i386 SMP because it no longer generates IPIs
for TLB shootdown on the other processors.)
- Complete the locking of pmap_enter() and pmap_enter_quick(). (As of now,
all changes to a user-level pmap on alpha, amd64, and i386 are performed
with appropriate locking.)
Revision Changes Path
1.164 +20 -13 src/sys/alpha/alpha/pmap.c
1.487 +26 -20 src/sys/amd64/amd64/pmap.c
1.490 +32 -16 src/sys/i386/i386/pmap.c
1.290 +3 -6 src/sys/vm/vm_page.c
More information about the cvs-all
mailing list