freebsd-dev/sys/vm
Alan Cox b417181250 Require that the page lock is held, instead of the object lock, when
clearing the page's PGA_REFERENCED flag.  Since we are typically
manipulating the page's act_count field when we are clearing its
PGA_REFERENCED flag, the page lock is already held everywhere that we clear
the PGA_REFERENCED flag.  So, in fact, this revision only changes some
comments and an assertion.  Nonetheless, it will enable later changes to
object locking in the pageout code.

Introduce vm_page_assert_locked(), which completely hides the implementation
details of the page lock from the caller, and use it in
vm_page_aflag_clear().  (The existing vm_page_lock_assert() could not be
used in vm_page_aflag_clear().)  Over the coming weeks, I expect that we'll
either eliminate or replace the various uses of vm_page_lock_assert() with
vm_page_assert_locked().

Reviewed by:	attilio
Sponsored by:	EMC / Isilon Storage Division
2013-06-03 01:22:54 +00:00
..
_vm_radix.h Sync back vmcontention branch into HEAD: 2013-03-18 00:25:02 +00:00
default_pager.c Switch the vm_object mutex to be a rwlock. This will enable in the 2013-03-09 02:32:23 +00:00
device_pager.c Switch the vm_object mutex to be a rwlock. This will enable in the 2013-03-09 02:32:23 +00:00
memguard.c Fix a bug with memguard(9) on 32-bit architectures without a 2012-07-15 20:29:48 +00:00
memguard.h Fix a bug with memguard(9) on 32-bit architectures without a 2012-07-15 20:29:48 +00:00
phys_pager.c Switch the vm_object mutex to be a rwlock. This will enable in the 2013-03-09 02:32:23 +00:00
pmap.h Add pmap function pmap_copy_pages(), which copies the content of the 2013-03-14 20:18:12 +00:00
redzone.c Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
redzone.h
sg_pager.c Switch the vm_object mutex to be a rwlock. This will enable in the 2013-03-09 02:32:23 +00:00
swap_pager.c o Change the locking scheme for swp_bcount. 2013-05-28 22:07:23 +00:00
swap_pager.h Do not map the swap i/o pbufs if the geom provider for the swap 2013-03-19 14:39:27 +00:00
uma_core.c Panic if UMA_ZONE_PCPU is created at early stages of boot, when mp_ncpus 2013-04-22 09:02:23 +00:00
uma_dbg.c Convert UMA code to C99 uintXX_t types. 2013-04-09 17:43:48 +00:00
uma_dbg.h
uma_int.h Convert UMA code to C99 uintXX_t types. 2013-04-09 17:43:48 +00:00
uma.h Convert UMA code to C99 uintXX_t types. 2013-04-09 17:43:48 +00:00
vm_extern.h Eliminate vm_phys_bootstrap_alloc(). It was a failed attempt at 2011-10-30 05:06:14 +00:00
vm_fault.c Acquire read lock on the src object for vm_fault_copy_entry(). 2013-05-22 15:11:00 +00:00
vm_glue.c Switch the vm_object mutex to be a rwlock. This will enable in the 2013-03-09 02:32:23 +00:00
vm_init.c Only size and create the bio_transient_map when unmapped buffers are 2013-03-21 07:28:15 +00:00
vm_kern.c Implement the concept of the unmapped VMIO buffers, i.e. buffers which 2013-03-19 14:13:12 +00:00
vm_kern.h
vm_map.c o Relax locking assertions for vm_page_find_least() 2013-05-21 20:38:19 +00:00
vm_map.h - Get rid of unused function vmspace_wired_count(). 2013-01-14 12:12:56 +00:00
vm_meter.c Switch the vm_object mutex to be a rwlock. This will enable in the 2013-03-09 02:32:23 +00:00
vm_mmap.c Add a hint suggesting why tmpfs does not need a special case there. 2013-05-02 18:35:12 +00:00
vm_object.c After the object lock was dropped, the object' reference count could 2013-05-30 20:00:19 +00:00
vm_object.h o Relax locking assertions for vm_page_find_least() 2013-05-21 20:38:19 +00:00
vm_page.c Require that the page lock is held, instead of the object lock, when 2013-06-03 01:22:54 +00:00
vm_page.h Require that the page lock is held, instead of the object lock, when 2013-06-03 01:22:54 +00:00
vm_pageout.c The per-page act_count can be made very-easily protected by the 2013-04-08 20:02:27 +00:00
vm_pageout.h Move what remains of vm/vm_contig.c into vm/vm_pageout.c, where similar 2012-07-18 05:21:34 +00:00
vm_pager.c Prepare to replace the buf splay with a trie: 2013-04-06 22:21:23 +00:00
vm_pager.h Switch the vm_object mutex to be a rwlock. This will enable in the 2013-03-09 02:32:23 +00:00
vm_param.h On Alan's advice, rather than do a wholesale conversion on a single 2010-04-30 00:46:43 +00:00
vm_phys.c o Add accessor functions to add and remove pages from a specific 2013-05-13 15:40:51 +00:00
vm_phys.h o Add accessor functions to add and remove pages from a specific 2013-05-13 15:40:51 +00:00
vm_radix.c To reduce the amount of arithmetic performed in the various radix tree 2013-05-11 18:01:41 +00:00
vm_radix.h Sync back vmcontention branch into HEAD: 2013-03-18 00:25:02 +00:00
vm_reserv.c Refactor vm_page_alloc()'s interactions with vm_reserv_alloc_page() and 2013-05-12 16:50:18 +00:00
vm_reserv.h Refactor vm_page_alloc()'s interactions with vm_reserv_alloc_page() and 2013-05-12 16:50:18 +00:00
vm_unix.c - Improve readability of sys_obreak(). 2013-01-11 09:58:35 +00:00
vm_zeroidle.c Split P_NOLOAD into a per-thread flag (TDF_NOLOAD). 2009-11-03 16:46:52 +00:00
vm.h Implement the concept of the unmapped VMIO buffers, i.e. buffers which 2013-03-19 14:13:12 +00:00
vnode_pager.c Assert that the object type for the vnode' non-NULL v_object, passed 2013-04-28 19:19:26 +00:00
vnode_pager.h Account the writeable shared mappings backed by file in the vnode 2012-02-23 21:07:16 +00:00