1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-19 10:53:58 +00:00
freebsd/sys/vm
Konstantin Belousov 4f9c9114a3 The vm_fault() should not be allowed to proceed on the map entry which
is being wired now.  The entry wired count is changed to non-zero in
advance, before the map lock is dropped.  This makes the vm_fault() to
perceive the entry as wired, and breaks the fragment which moves the
wire count from the shadowed page, to the upper page, making the code
unwiring non-wired page.

On the other hand, the vm_fault() calls from vm_fault_wire() should be
allowed to proceed, so only drain MAP_ENTRY_IN_TRANSITION from
vm_fault() when wiring_thread is not current.

Reported and tested by:	pho
Reviewed by:	alc
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2013-07-11 05:58:28 +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 Fix typo in comment. 2013-07-09 13:22:30 +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 Remove a spurious keg lock acquisition. 2013-06-28 21:13:19 +00:00
uma_dbg.c - Add a per-zone lock for zones without kegs. 2013-06-20 19:08:12 +00:00
uma_dbg.h
uma_int.h - Resolve bucket recursion issues by passing a cookie with zone flags 2013-06-26 00:57:38 +00:00
uma.h - Resolve bucket recursion issues by passing a cookie with zone flags 2013-06-26 00:57:38 +00:00
vm_extern.h Make sys_mlock() function just a wrapper around vm_mlock() function 2013-06-08 13:13:40 +00:00
vm_fault.c The vm_fault() should not be allowed to proceed on the map entry which 2013-07-11 05:58:28 +00:00
vm_glue.c Complete r251452: 2013-06-06 18:19:26 +00:00
vm_init.c - Add a general purpose resource allocator, vmem, from NetBSD. It was 2013-06-28 03:51:20 +00:00
vm_kern.c - Add a general purpose resource allocator, vmem, from NetBSD. It was 2013-06-28 03:51:20 +00:00
vm_kern.h - Add a general purpose resource allocator, vmem, from NetBSD. It was 2013-06-28 03:51:20 +00:00
vm_map.c The mlockall() or VM_MAP_WIRE_HOLESOK does not interact properly with 2013-07-11 05:55:08 +00:00
vm_map.h The mlockall() or VM_MAP_WIRE_HOLESOK does not interact properly with 2013-07-11 05:55:08 +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 Make sys_mlock() function just a wrapper around vm_mlock() function 2013-06-08 13:13:40 +00:00
vm_object.c Never remove user-wired pages from an object when doing 2013-07-11 05:47:26 +00:00
vm_object.h Never remove user-wired pages from an object when doing 2013-07-11 05:47:26 +00:00
vm_page.c In the vm_page_set_invalid() function, do not assert that the page is 2013-07-11 05:38:39 +00:00
vm_page.h Revise the interface between vm_object_madvise() and vm_page_dontneed() so 2013-06-10 01:48:21 +00:00
vm_pageout.c Relax the object locking in vm_pageout_map_deactivate_pages() and 2013-06-04 02:28:47 +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 - Add a general purpose resource allocator, vmem, from NetBSD. It was 2013-06-28 03:51:20 +00:00
vm_pager.h - Add a general purpose resource allocator, vmem, from NetBSD. It was 2013-06-28 03:51:20 +00:00
vm_param.h
vm_phys.c vm_phys_fictitious_reg_range() was losing the 'memattr' because it would be 2013-07-03 23:38:37 +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
vm.h - Add a general purpose resource allocator, vmem, from NetBSD. It was 2013-06-28 03:51:20 +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