- Destroy the vnode object earlier in VOP_RECLAIM as we need more of
the vnode valid before the vm flushes pages. - Get rid of some extraneous uses of the vnode interlock. Sponsored by: Isilon Systems, Inc.
This commit is contained in:
parent
18467146cd
commit
4483fe9227
@ -145,10 +145,12 @@ ufs_reclaim(ap)
|
||||
int i;
|
||||
#endif
|
||||
|
||||
VI_LOCK(vp);
|
||||
if (prtactive && vp->v_usecount != 0)
|
||||
vprint("ufs_reclaim: pushing active", vp);
|
||||
VI_UNLOCK(vp);
|
||||
/*
|
||||
* Destroy the vm object and flush associated pages.
|
||||
*/
|
||||
vnode_destroy_vobject(vp);
|
||||
if (ip->i_flag & IN_LAZYMOD) {
|
||||
ip->i_flag |= IN_MODIFIED;
|
||||
UFS_UPDATE(vp, 0);
|
||||
@ -169,7 +171,6 @@ ufs_reclaim(ap)
|
||||
}
|
||||
}
|
||||
#endif
|
||||
vnode_destroy_vobject(vp);
|
||||
#ifdef UFS_DIRHASH
|
||||
if (ip->i_dirhash != NULL)
|
||||
ufsdirhash_free(ip);
|
||||
|
Loading…
Reference in New Issue
Block a user