Loading fs/nfs/delegation.c +2 −4 Original line number Diff line number Diff line Loading @@ -721,14 +721,12 @@ int nfs_async_inode_return_delegation(struct inode *inode, struct nfs_client *clp = server->nfs_client; struct nfs_delegation *delegation; filemap_flush(inode->i_mapping); rcu_read_lock(); delegation = rcu_dereference(NFS_I(inode)->delegation); if (delegation == NULL) goto out_enoent; if (!clp->cl_mvops->match_stateid(&delegation->stateid, stateid)) if (stateid != NULL && !clp->cl_mvops->match_stateid(&delegation->stateid, stateid)) goto out_enoent; nfs_mark_return_delegation(server, delegation); rcu_read_unlock(); Loading fs/nfs/nfs4proc.c +3 −5 Original line number Diff line number Diff line Loading @@ -362,11 +362,9 @@ static int nfs4_do_handle_exception(struct nfs_server *server, case -NFS4ERR_DELEG_REVOKED: case -NFS4ERR_ADMIN_REVOKED: case -NFS4ERR_BAD_STATEID: if (inode && nfs4_have_delegation(inode, FMODE_READ)) { nfs4_inode_return_delegation(inode); exception->retry = 1; return 0; } if (inode && nfs_async_inode_return_delegation(inode, NULL) == 0) goto wait_on_recovery; if (state == NULL) break; ret = nfs4_schedule_stateid_recovery(server, state); Loading Loading
fs/nfs/delegation.c +2 −4 Original line number Diff line number Diff line Loading @@ -721,14 +721,12 @@ int nfs_async_inode_return_delegation(struct inode *inode, struct nfs_client *clp = server->nfs_client; struct nfs_delegation *delegation; filemap_flush(inode->i_mapping); rcu_read_lock(); delegation = rcu_dereference(NFS_I(inode)->delegation); if (delegation == NULL) goto out_enoent; if (!clp->cl_mvops->match_stateid(&delegation->stateid, stateid)) if (stateid != NULL && !clp->cl_mvops->match_stateid(&delegation->stateid, stateid)) goto out_enoent; nfs_mark_return_delegation(server, delegation); rcu_read_unlock(); Loading
fs/nfs/nfs4proc.c +3 −5 Original line number Diff line number Diff line Loading @@ -362,11 +362,9 @@ static int nfs4_do_handle_exception(struct nfs_server *server, case -NFS4ERR_DELEG_REVOKED: case -NFS4ERR_ADMIN_REVOKED: case -NFS4ERR_BAD_STATEID: if (inode && nfs4_have_delegation(inode, FMODE_READ)) { nfs4_inode_return_delegation(inode); exception->retry = 1; return 0; } if (inode && nfs_async_inode_return_delegation(inode, NULL) == 0) goto wait_on_recovery; if (state == NULL) break; ret = nfs4_schedule_stateid_recovery(server, state); Loading