diff options
author | alc <alc@FreeBSD.org> | 2010-05-02 23:33:10 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2010-05-02 23:33:10 +0000 |
commit | fbe19e5e155fcfd93567ff0a4105982000d15d0e (patch) | |
tree | c990f7eb35b2cdae5136ff29d508ab23c876baf4 /sys | |
parent | 5bdbfdef5238d07cbc7c88c8cd59830932c96624 (diff) | |
download | FreeBSD-src-fbe19e5e155fcfd93567ff0a4105982000d15d0e.zip FreeBSD-src-fbe19e5e155fcfd93567ff0a4105982000d15d0e.tar.gz |
Add page lock assertions where we access the page's hold_count.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/vm/vm_page.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index e73586a..59f8226 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -1657,6 +1657,7 @@ vm_page_try_to_cache(vm_page_t m) { mtx_assert(&vm_page_queue_mtx, MA_OWNED); + vm_page_lock_assert(m, MA_OWNED); VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); if (m->dirty || m->hold_count || m->busy || m->wire_count || (m->oflags & VPO_BUSY) || (m->flags & PG_UNMANAGED)) { @@ -1680,6 +1681,7 @@ vm_page_try_to_free(vm_page_t m) { mtx_assert(&vm_page_queue_mtx, MA_OWNED); + vm_page_lock_assert(m, MA_OWNED); if (m->object != NULL) VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); if (m->dirty || m->hold_count || m->busy || m->wire_count || @@ -1707,6 +1709,7 @@ vm_page_cache(vm_page_t m) vm_page_t root; mtx_assert(&vm_page_queue_mtx, MA_OWNED); + vm_page_lock_assert(m, MA_OWNED); object = m->object; VM_OBJECT_LOCK_ASSERT(object, MA_OWNED); if ((m->flags & PG_UNMANAGED) || (m->oflags & VPO_BUSY) || m->busy || |