diff options
author | kib <kib@FreeBSD.org> | 2016-10-20 13:12:19 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2016-10-20 13:12:19 +0000 |
commit | d9cd623ce2b216efbe9a82496c50104a3af9a1fe (patch) | |
tree | 702295605705d5bda3b33bbef6c3de1730df9399 /sys/kern | |
parent | d915f5215166a446e07cb0a85c4f05f5cfae3d32 (diff) | |
download | FreeBSD-src-d9cd623ce2b216efbe9a82496c50104a3af9a1fe.zip FreeBSD-src-d9cd623ce2b216efbe9a82496c50104a3af9a1fe.tar.gz |
MFC r307218:
Fix a race in vm_page_busy_sleep(9).
Diffstat (limited to 'sys/kern')
-rw-r--r-- | sys/kern/vfs_bio.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index f728859..f28db3e 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -1724,7 +1724,7 @@ brelse(struct buf *bp) while (vm_page_xbusied(m)) { vm_page_lock(m); VM_OBJECT_WUNLOCK(obj); - vm_page_busy_sleep(m, "mbncsh"); + vm_page_busy_sleep(m, "mbncsh", true); VM_OBJECT_WLOCK(obj); } if (pmap_page_wired_mappings(m) == 0) @@ -4069,7 +4069,7 @@ vfs_drain_busy_pages(struct buf *bp) while (vm_page_xbusied(m)) { vm_page_lock(m); VM_OBJECT_WUNLOCK(bp->b_bufobj->bo_object); - vm_page_busy_sleep(m, "vbpage"); + vm_page_busy_sleep(m, "vbpage", true); VM_OBJECT_WLOCK(bp->b_bufobj->bo_object); } } |