vm_page: Consolidate page busy sleep mechanisms

- Modify vm_page_busy_sleep() and vm_page_busy_sleep_unlocked() to take
  a VM_ALLOC_* flag indicating whether to sleep on shared-busy, and fix
  up callers.
- Modify vm_page_busy_sleep() to return a status indicating whether the
  object lock was dropped, and fix up callers.
- Convert callers of vm_page_sleep_if_busy() to use vm_page_busy_sleep()
  instead.
- Remove vm_page_sleep_if_(x)busy().

No functional change intended.

Obtained from:	jeff (object_concurrency patches)
Reviewed by:	kib
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D32947
This commit is contained in:
Mark Johnston
2021-11-15 11:35:44 -05:00
parent b0acc3f11b
commit 87b646630c
7 changed files with 62 additions and 117 deletions
+3
View File
@@ -40,6 +40,9 @@
# xargs -n1 | sort | uniq -d;
# done
# 20211115: vm_page_sleep_if_busy removed
OLD_FILES+=share/man/man9/vm_page_sleep_if_busy.9.gz
# 20211113: new clang import which bumps version from 12.0.1 to 13.0.0.
OLD_FILES+=usr/lib/clang/12.0.1/include/cuda_wrappers/algorithm
OLD_FILES+=usr/lib/clang/12.0.1/include/cuda_wrappers/complex