freebsd-dev/sys/vm
Konstantin Belousov 99a1570a25 r221714 fixed the situation when the collapse scan improperly handled
invalid (busy) page supposedly inserted by the vm_fault(), in the
OBSC_COLLAPSE_NOWAIT case.  As a continuation to r221714, fix a case
when invalid page is found by the object scan in OBSC_COLLAPSE_WAIT
case as well.  But, since this is waitable scan, we should wait for
the termination of the busy state and restart from the beginning of
the backing object' page queue. [*]

Do not free the shadow page swap space when the parent page is
invalid, otherwise this action potentially corrupts user data.

Combine all instances of the collapse scan sleep code fragments into
the new helper vm_object_backing_scan_wait().

Improve style compliance and comments.  Change the return type of
vm_object_backing_scan() to bool.

Initial submission by:	cem, https://reviews.freebsd.org/D4103 [*]
Reviewed by:	alc, cem
Tested by:	cem
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
Differential revision:	https://reviews.freebsd.org/D4146
2015-12-01 09:06:09 +00:00
..
_vm_radix.h
default_pager.c
device_pager.c Minor cleanup. 2015-11-29 11:37:25 +00:00
memguard.c
memguard.h
phys_pager.c
pmap.h
redzone.c
redzone.h
sg_pager.c
swap_pager.c
swap_pager.h
uma_core.c Consistently enforce the restriction against calling malloc/free when in a 2015-11-19 14:04:53 +00:00
uma_dbg.c
uma_dbg.h
uma_int.h
uma.h
vm_domain.c
vm_domain.h
vm_extern.h
vm_fault.c
vm_glue.c
vm_init.c
vm_kern.c
vm_kern.h
vm_map.c
vm_map.h
vm_meter.c
vm_mmap.c
vm_object.c r221714 fixed the situation when the collapse scan improperly handled 2015-12-01 09:06:09 +00:00
vm_object.h
vm_page.c
vm_page.h Rework the test which raises OOM condition. Right now, the code 2015-11-16 06:26:26 +00:00
vm_pageout.c In vm_pageout_grow_cache(), do not re-try the inactive queue when 2015-11-27 19:43:36 +00:00
vm_pageout.h
vm_pager.c
vm_pager.h
vm_param.h
vm_phys.c
vm_phys.h
vm_radix.c
vm_radix.h
vm_reserv.c Correct an error in vm_reserv_reclaim_contig(). In the highly unusual 2015-11-26 19:12:18 +00:00
vm_reserv.h
vm_unix.c
vm_zeroidle.c
vm.h
vnode_pager.c Record proper commit message for r291157. 2015-11-22 09:50:13 +00:00
vnode_pager.h