diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2013-10-17 14:13:02 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2013-10-28 15:24:40 -0400 |
commit | c9fdeb280b8cc511c6730db9ab3973331ea344e0 (patch) | |
tree | a0099ad6e1dd1873a2c0108107a2ed84f09618e1 /include | |
parent | ce6cda1845cf2332d2c411a5c72cd166256b21da (diff) | |
download | op-kernel-dev-c9fdeb280b8cc511c6730db9ab3973331ea344e0.zip op-kernel-dev-c9fdeb280b8cc511c6730db9ab3973331ea344e0.tar.gz |
NFS: Add basic migration support to state manager thread
Migration recovery and state recovery must be serialized, so handle
both in the state manager thread.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/nfs_fs_sb.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/nfs_fs_sb.h b/include/linux/nfs_fs_sb.h index 46b0cb4..186ec49 100644 --- a/include/linux/nfs_fs_sb.h +++ b/include/linux/nfs_fs_sb.h @@ -79,6 +79,7 @@ struct nfs_client { char cl_ipaddr[48]; u32 cl_cb_ident; /* v4.0 callback identifier */ const struct nfs4_minor_version_ops *cl_mvops; + unsigned long cl_mig_gen; /* NFSv4.0 transport blocking */ struct nfs4_slot_table *cl_slot_tbl; @@ -189,6 +190,12 @@ struct nfs_server { struct list_head state_owners_lru; struct list_head layouts; struct list_head delegations; + + unsigned long mig_gen; + unsigned long mig_status; +#define NFS_MIG_IN_TRANSITION (1) +#define NFS_MIG_FAILED (2) + void (*destroy)(struct nfs_server *); atomic_t active; /* Keep trace of any activity to this server */ |