summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorOlga Kornievskaia <kolga@netapp.com>2018-07-09 21:13:32 +0200
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2018-08-09 18:56:39 +0200
commitbc0c9079b48ddcf1f8a6e1aaa277288b263c78d8 (patch)
treedf6f4429ec4d1aeffcdced295f86410c9368a3c0 /include
parentNFS add support for asynchronous COPY (diff)
downloadlinux-bc0c9079b48ddcf1f8a6e1aaa277288b263c78d8.tar.xz
linux-bc0c9079b48ddcf1f8a6e1aaa277288b263c78d8.zip
NFS handle COPY reply CB_OFFLOAD call race
It's possible that server replies back with CB_OFFLOAD call and COPY reply at the same time such that client will process CB_OFFLOAD before reply to COPY. For that keep a list of pending callback stateids received and then before waiting on completion check the pending list. Cleanup any pending copies on the client shutdown. Signed-off-by: Olga Kornievskaia <kolga@netapp.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nfs_fs_sb.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/nfs_fs_sb.h b/include/linux/nfs_fs_sb.h
index f88952d7b9fb..bf39d9c92201 100644
--- a/include/linux/nfs_fs_sb.h
+++ b/include/linux/nfs_fs_sb.h
@@ -121,6 +121,7 @@ struct nfs_client {
#endif
struct net *cl_net;
+ struct list_head pending_cb_stateids;
};
/*