Add a call for nfsrpc_close() to ncl_reclaim() in the experimental
NFSv4 client, since the call in ncl_inactive() might be missed because VOP_INACTIVE() is not guaranteed to be called before VOP_RECLAIM(). MFC after: 1 week
This commit is contained in:
parent
b67cc292dc
commit
0661e0348b
@ -236,6 +236,15 @@ ncl_reclaim(struct vop_reclaim_args *ap)
|
||||
if (prtactive && vrefcnt(vp) != 0)
|
||||
vprint("ncl_reclaim: pushing active", vp);
|
||||
|
||||
if (NFS_ISV4(vp) && vp->v_type == VREG)
|
||||
/*
|
||||
* Since mmap()'d files do I/O after VOP_CLOSE(), the NFSv4
|
||||
* Close operations are delayed until ncl_inactive().
|
||||
* However, since VOP_INACTIVE() is not guaranteed to be
|
||||
* called, we need to do it again here.
|
||||
*/
|
||||
(void) nfsrpc_close(vp, 1, ap->a_td);
|
||||
|
||||
/*
|
||||
* If the NLM is running, give it a chance to abort pending
|
||||
* locks.
|
||||
|
Loading…
x
Reference in New Issue
Block a user