NFSv4.1: Allow parallel OPEN/OPEN_DOWNGRADE/CLOSE
authorTrond Myklebust <trond.myklebust@primarydata.com>
Sat, 24 Jan 2015 00:19:25 +0000 (19:19 -0500)
committerTrond Myklebust <trond.myklebust@primarydata.com>
Sat, 24 Jan 2015 04:06:45 +0000 (23:06 -0500)
Remove the serialisation of OPEN/OPEN_DOWNGRADE and CLOSE calls for the
case of NFSv4.1 and newer.

Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
fs/nfs/nfs4_fs.h
fs/nfs/nfs4proc.c

index a081787..e57290a 100644 (file)
@@ -44,6 +44,7 @@ enum nfs4_client_state {
 #define NFS4_RENEW_TIMEOUT             0x01
 #define NFS4_RENEW_DELEGATION_CB       0x02
 
+struct nfs_seqid_counter;
 struct nfs4_minor_version_ops {
        u32     minor_version;
        unsigned init_caps;
@@ -56,6 +57,8 @@ struct nfs4_minor_version_ops {
                        struct nfs_fsinfo *);
        void    (*free_lock_state)(struct nfs_server *,
                        struct nfs4_lock_state *);
+       struct nfs_seqid *
+               (*alloc_seqid)(struct nfs_seqid_counter *, gfp_t);
        const struct rpc_call_ops *call_sync_ops;
        const struct nfs4_state_recovery_ops *reboot_recovery_ops;
        const struct nfs4_state_recovery_ops *nograce_recovery_ops;
Simple merge