diff options
author | alc <alc@FreeBSD.org> | 2002-07-14 23:51:55 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2002-07-14 23:51:55 +0000 |
commit | ec8a106e8a10401d462de8ab256aea0a8f824f53 (patch) | |
tree | 99936febc42223e68e46d00c4751ee062499b1e8 /sys/vm/vm_page.c | |
parent | d3091fc32b111ebce3d5248653807320512d3ad5 (diff) | |
download | FreeBSD-src-ec8a106e8a10401d462de8ab256aea0a8f824f53.zip FreeBSD-src-ec8a106e8a10401d462de8ab256aea0a8f824f53.tar.gz |
o Lock page queue accesses by vm_page_wire() that aren't
within a critical section.
o Assert that the page queues lock is held in vm_page_wire()
unless an Alpha.
Diffstat (limited to 'sys/vm/vm_page.c')
-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 6e08ec1..7dd2300 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -1241,6 +1241,9 @@ vm_page_wire(vm_page_t m) * it is already off the queues). */ s = splvm(); +#ifndef __alpha__ + mtx_assert(&vm_page_queue_mtx, MA_OWNED); +#endif if (m->wire_count == 0) { if ((m->flags & PG_UNMANAGED) == 0) vm_pageq_remove(m); |