diff options
author | alc <alc@FreeBSD.org> | 2003-08-23 18:11:53 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2003-08-23 18:11:53 +0000 |
commit | 5d6f66de90c5944b3c704c22790b24284fadb727 (patch) | |
tree | 084c9fdff8585e9dbaa7e37ded52003077afe6b7 /sys/vm/vm_page.c | |
parent | cea9a5fcc59afc95f24c82f7c01f28cec4662a70 (diff) | |
download | FreeBSD-src-5d6f66de90c5944b3c704c22790b24284fadb727.zip FreeBSD-src-5d6f66de90c5944b3c704c22790b24284fadb727.tar.gz |
Hold the page queues lock when performing vm_page_clear_dirty() and
vm_page_set_invalid().
Diffstat (limited to 'sys/vm/vm_page.c')
-rw-r--r-- | sys/vm/vm_page.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 76a4280..7806077 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -1596,7 +1596,8 @@ vm_page_set_dirty(vm_page_t m, int base, int size) void vm_page_clear_dirty(vm_page_t m, int base, int size) { - GIANT_REQUIRED; + + mtx_assert(&vm_page_queue_mtx, MA_OWNED); m->dirty &= ~vm_page_bits(base, size); } @@ -1613,8 +1614,8 @@ vm_page_set_invalid(vm_page_t m, int base, int size) { int bits; - GIANT_REQUIRED; bits = vm_page_bits(base, size); + mtx_assert(&vm_page_queue_mtx, MA_OWNED); m->valid &= ~bits; m->dirty &= ~bits; m->object->generation++; |