Browse Source

nfs: initiate returning delegation when reclaiming one that's been recalled

When reclaiming a delegation via CLAIM_PREVIOUS open, the server can
indicate that the delegation has been recalled since it was issued by
setting the "recalled" flag in the delegation.

Ensure that we respect the flag by initiating a delegation return when
it is set.

Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Jeff Layton 7 năm trước cách đây
mục cha
commit
8b199e58d4
1 tập tin đã thay đổi với 4 bổ sung0 xóa
  1. 4 0
      fs/nfs/nfs4proc.c

+ 4 - 0
fs/nfs/nfs4proc.c

@@ -1773,6 +1773,10 @@ nfs4_opendata_check_deleg(struct nfs4_opendata *data, struct nfs4_state *state)
 				data->o_res.delegation_type,
 				&data->o_res.delegation,
 				data->o_res.pagemod_limit);
+
+	if (data->o_res.do_recall)
+		nfs_async_inode_return_delegation(state->inode,
+						  &data->o_res.delegation);
 }
 
 /*