Alan Cox 85f5b24573 In the common case, pmap_enter_quick() completes without sleeping.
In such cases, the busying of the page and the unlocking of the
containing object by vm_map_pmap_enter() and vm_fault_prefault() is
unnecessary overhead.  To eliminate this overhead, this change
modifies pmap_enter_quick() so that it expects the object to be locked
on entry and it assumes the responsibility for busying the page and
unlocking the object if it must sleep.  Note: alpha, amd64, i386 and
ia64 are the only implementations optimized by this change; arm,
powerpc, and sparc64 still conservatively busy the page and unlock the
object within every pmap_enter_quick() call.

Additionally, this change is the first case where we synchronize
access to the page's PG_BUSY flag and busy field using the containing
object's lock rather than the global page queues lock.  (Modifications
to the page's PG_BUSY flag and busy field have asserted both locks for
several weeks, enabling an incremental transition.)
2004-12-15 19:55:05 +00:00
..
2004-12-06 19:46:02 +00:00
2004-12-10 17:42:47 +00:00
2004-12-15 12:18:41 +00:00
2004-11-09 16:47:47 +00:00
2004-12-13 18:26:13 +00:00
2004-10-12 08:22:08 +00:00
2004-11-10 07:16:59 +00:00
2004-11-17 09:09:55 +00:00
2004-12-14 21:35:00 +00:00