svn commit: r250751 - head/sys/kern
Attilio Rao
attilio at FreeBSD.org
Fri May 17 20:03:56 UTC 2013
Author: attilio
Date: Fri May 17 20:03:55 2013
New Revision: 250751
URL: http://svnweb.freebsd.org/changeset/base/250751
Log:
Use readlocking now that assertions on vm_page_lookup() are relaxed.
Sponsored by: EMC / Isilon storage division
Reviewed by: alc
Tested by: flo, pho
Modified:
head/sys/kern/vfs_bio.c
Modified: head/sys/kern/vfs_bio.c
==============================================================================
--- head/sys/kern/vfs_bio.c Fri May 17 19:37:16 2013 (r250750)
+++ head/sys/kern/vfs_bio.c Fri May 17 20:03:55 2013 (r250751)
@@ -2772,7 +2772,7 @@ inmem(struct vnode * vp, daddr_t blkno)
size = vp->v_mount->mnt_stat.f_iosize;
off = (vm_ooffset_t)blkno * (vm_ooffset_t)vp->v_mount->mnt_stat.f_iosize;
- VM_OBJECT_WLOCK(obj);
+ VM_OBJECT_RLOCK(obj);
for (toff = 0; toff < vp->v_mount->mnt_stat.f_iosize; toff += tinc) {
m = vm_page_lookup(obj, OFF_TO_IDX(off + toff));
if (!m)
@@ -2784,11 +2784,11 @@ inmem(struct vnode * vp, daddr_t blkno)
(vm_offset_t) ((toff + off) & PAGE_MASK), tinc) == 0)
goto notinmem;
}
- VM_OBJECT_WUNLOCK(obj);
+ VM_OBJECT_RUNLOCK(obj);
return 1;
notinmem:
- VM_OBJECT_WUNLOCK(obj);
+ VM_OBJECT_RUNLOCK(obj);
return (0);
}
More information about the svn-src-all
mailing list