freebsd-dev/sys/vm
Konstantin Belousov a7163bb962 Eliminate some vm object relocks in vm fault.
For the vm_fault_prefault() call from vm_fault_soft_fast(), extend the
scope of the object rlock to avoid re-taking it inside
vm_fault_prefault(). It causes pmap_enter_quick() sometimes called
with shadow object lock as well as the page lock, but this looks
innocent.

Noted and measured by:	mjg
Reviewed by:	alc, markj (as part of the larger patch)
Tested by:	pho (as part of the larger patch)
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D15122
2018-04-29 12:43:08 +00:00
..
_vm_radix.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
default_pager.c SPDX: wrong license. 2017-11-30 15:45:42 +00:00
device_pager.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
memguard.c Eliminate kmem_arena and kmem_object in preparation for further NUMA commits. 2017-11-28 23:40:54 +00:00
memguard.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
phys_pager.c sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
pmap.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
redzone.c sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
redzone.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
sg_pager.c sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
swap_pager.c Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
swap_pager.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
uma_core.c uma: whack main zone counter update in the slow path 2018-04-27 05:37:35 +00:00
uma_dbg.c sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
uma_dbg.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
uma_int.h Fix three miscalculations in amount of boot pages: 2018-02-07 18:32:51 +00:00
uma.h Add a UMA zone flag to disable the use of buckets. 2018-04-24 20:05:45 +00:00
vm_domainset.c Implement several enhancements to NUMA policies. 2018-03-29 02:54:50 +00:00
vm_domainset.h Implement several enhancements to NUMA policies. 2018-03-29 02:54:50 +00:00
vm_extern.h Use per-domain locks for vm page queue free. Move paging control from 2018-02-06 22:10:07 +00:00
vm_fault.c Eliminate some vm object relocks in vm fault. 2018-04-29 12:43:08 +00:00
vm_glue.c Account the size of the vslock-ed memory by the thread. 2018-03-24 13:51:27 +00:00
vm_init.c Fix boot_pages exhaustion on machines with many domains and cores, where 2018-02-09 04:45:39 +00:00
vm_kern.c Use per-domain locks for vm page queue free. Move paging control from 2018-02-06 22:10:07 +00:00
vm_kern.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
vm_map.c Make vm_map_max/min/pmap KBI stable. 2018-03-30 10:55:31 +00:00
vm_map.h Make vm_map_max/min/pmap KBI stable. 2018-03-30 10:55:31 +00:00
vm_meter.c vm: move vm_cnt to __read_mostly now that it is not written to 2018-04-27 05:36:02 +00:00
vm_mmap.c Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
vm_object.c Improve VM page queue scalability. 2018-04-24 21:15:54 +00:00
vm_object.h Use per-domain locks for vm page queue free. Move paging control from 2018-02-06 22:10:07 +00:00
vm_page.c Improve VM page queue scalability. 2018-04-24 21:15:54 +00:00
vm_page.h Improve VM page queue scalability. 2018-04-24 21:15:54 +00:00
vm_pageout.c Improve VM page queue scalability. 2018-04-24 21:15:54 +00:00
vm_pageout.h Fix GCC build: Remove redundant pagedaemon_wakeup declaration 2018-03-16 07:05:09 +00:00
vm_pagequeue.h Improve VM page queue scalability. 2018-04-24 21:15:54 +00:00
vm_pager.c SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
vm_pager.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
vm_param.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
vm_phys.c Improve VM page queue scalability. 2018-04-24 21:15:54 +00:00
vm_phys.h Add a uma cache of free pages in the DEFAULT freepool. This gives us 2018-04-01 04:50:05 +00:00
vm_radix.c Fix boot_pages calculation for machines that don't have UMA_MD_SMALL_ALLOC. 2018-02-06 22:06:59 +00:00
vm_radix.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
vm_reserv.c Fix two compliation problems on non-amd64 architectures. 2018-03-23 18:24:02 +00:00
vm_reserv.h Lock reservations with a dedicated lock in each reservation. Protect the 2018-03-22 19:21:11 +00:00
vm_swapout_dummy.c SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
vm_swapout.c Improve VM page queue scalability. 2018-04-24 21:15:54 +00:00
vm_unix.c Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
vm.h Move vm_ndomains to vm.h where it can be used with a single header include 2018-03-27 03:27:02 +00:00
vnode_pager.c Implement several enhancements to NUMA policies. 2018-03-29 02:54:50 +00:00
vnode_pager.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00