diff options
author | alc <alc@FreeBSD.org> | 2006-08-08 06:00:49 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2006-08-08 06:00:49 +0000 |
commit | 45c95873a52350b9c9fd983fcb22706a6caf9c4b (patch) | |
tree | 4ede67fc713ab793e5c800b320b7c5e8172ba7d9 /sys/kern/vfs_bio.c | |
parent | c8a98491d0e75d27909b73e2c2807d1165087da1 (diff) | |
download | FreeBSD-src-45c95873a52350b9c9fd983fcb22706a6caf9c4b.zip FreeBSD-src-45c95873a52350b9c9fd983fcb22706a6caf9c4b.tar.gz |
Reduce the scope of the page queues lock in vfs_busy_pages() now that
vm_page_sleep_if_busy() no longer requires the caller to hold the page
queues lock.
Diffstat (limited to 'sys/kern/vfs_bio.c')
-rw-r--r-- | sys/kern/vfs_bio.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index 410287a..d027749 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -3386,7 +3386,6 @@ vfs_busy_pages(struct buf *bp, int clear_modify) vfs_setdirty(bp); VM_OBJECT_LOCK(obj); retry: - vm_page_lock_queues(); for (i = 0; i < bp->b_npages; i++) { m = bp->b_pages[i]; @@ -3394,6 +3393,7 @@ retry: goto retry; } bogus = 0; + vm_page_lock_queues(); for (i = 0; i < bp->b_npages; i++) { m = bp->b_pages[i]; |