浏览代码

nfsd: make lookup/alloc/unhash_stid available outside nfs4state.c

Signed-off-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig 11 年之前
父节点
当前提交
cd61c52231
共有 2 个文件被更改,包括 10 次插入4 次删除
  1. 4 4
      fs/nfsd/nfs4state.c
  2. 6 0
      fs/nfsd/state.h

+ 4 - 4
fs/nfsd/nfs4state.c

@@ -476,7 +476,7 @@ static void nfs4_file_put_access(struct nfs4_file *fp, u32 access)
 		__nfs4_file_put_access(fp, O_RDONLY);
 		__nfs4_file_put_access(fp, O_RDONLY);
 }
 }
 
 
-static struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl,
+struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl,
 					 struct kmem_cache *slab)
 					 struct kmem_cache *slab)
 {
 {
 	struct nfs4_stid *stid;
 	struct nfs4_stid *stid;
@@ -680,7 +680,7 @@ static void nfs4_put_deleg_lease(struct nfs4_file *fp)
 	}
 	}
 }
 }
 
 
-static void unhash_stid(struct nfs4_stid *s)
+void nfs4_unhash_stid(struct nfs4_stid *s)
 {
 {
 	s->sc_type = 0;
 	s->sc_type = 0;
 }
 }
@@ -988,7 +988,7 @@ static void unhash_lock_stateid(struct nfs4_ol_stateid *stp)
 
 
 	list_del_init(&stp->st_locks);
 	list_del_init(&stp->st_locks);
 	unhash_ol_stateid(stp);
 	unhash_ol_stateid(stp);
-	unhash_stid(&stp->st_stid);
+	nfs4_unhash_stid(&stp->st_stid);
 }
 }
 
 
 static void release_lock_stateid(struct nfs4_ol_stateid *stp)
 static void release_lock_stateid(struct nfs4_ol_stateid *stp)
@@ -4433,7 +4433,7 @@ out_unlock:
 	return status;
 	return status;
 }
 }
 
 
-static __be32
+__be32
 nfsd4_lookup_stateid(struct nfsd4_compound_state *cstate,
 nfsd4_lookup_stateid(struct nfsd4_compound_state *cstate,
 		     stateid_t *stateid, unsigned char typemask,
 		     stateid_t *stateid, unsigned char typemask,
 		     struct nfs4_stid **s, struct nfsd_net *nn)
 		     struct nfs4_stid **s, struct nfsd_net *nn)

+ 6 - 0
fs/nfsd/state.h

@@ -545,6 +545,12 @@ struct nfsd_net;
 extern __be32 nfs4_preprocess_stateid_op(struct net *net,
 extern __be32 nfs4_preprocess_stateid_op(struct net *net,
 		struct nfsd4_compound_state *cstate,
 		struct nfsd4_compound_state *cstate,
 		stateid_t *stateid, int flags, struct file **filp);
 		stateid_t *stateid, int flags, struct file **filp);
+__be32 nfsd4_lookup_stateid(struct nfsd4_compound_state *cstate,
+		     stateid_t *stateid, unsigned char typemask,
+		     struct nfs4_stid **s, struct nfsd_net *nn);
+struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl,
+		struct kmem_cache *slab);
+void nfs4_unhash_stid(struct nfs4_stid *s);
 void nfs4_put_stid(struct nfs4_stid *s);
 void nfs4_put_stid(struct nfs4_stid *s);
 void nfs4_remove_reclaim_record(struct nfs4_client_reclaim *, struct nfsd_net *);
 void nfs4_remove_reclaim_record(struct nfs4_client_reclaim *, struct nfsd_net *);
 extern void nfs4_release_reclaim(struct nfsd_net *);
 extern void nfs4_release_reclaim(struct nfsd_net *);