aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sunrpc
diff options
context:
space:
mode:
authorStanislav Kinsbursky <skinsbursky@parallels.com>2011-12-26 07:44:06 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2012-01-31 18:20:25 -0500
commitc239d83b9921b8a8005a3bcd23000cfe18acf5c2 (patch)
treec94e20d8f286e63a2e75b15d413c3a8c5da45b8d /include/linux/sunrpc
parent9beae4677de76cfa4ce8899dc8cd1a1cf8cd8332 (diff)
SUNRPC: split SUNPRC PipeFS dentry and private pipe data creation
This patch is a final step towards to removing PipeFS inode references from kernel code other than PipeFS itself. It makes all kernel SUNRPC PipeFS users depends on pipe private data, which state depend on their specific operations, etc. This patch completes SUNRPC PipeFS preparations and allows to create pipe private data and PipeFS dentries independently. Next step will be making SUNPRC PipeFS dentries allocated by SUNRPC PipeFS network namespace aware routines. Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include/linux/sunrpc')
-rw-r--r--include/linux/sunrpc/rpc_pipe_fs.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/include/linux/sunrpc/rpc_pipe_fs.h b/include/linux/sunrpc/rpc_pipe_fs.h
index 3ebc257e2b43..0d1f748f76da 100644
--- a/include/linux/sunrpc/rpc_pipe_fs.h
+++ b/include/linux/sunrpc/rpc_pipe_fs.h
@@ -34,6 +34,7 @@ struct rpc_pipe {
34 struct delayed_work queue_timeout; 34 struct delayed_work queue_timeout;
35 const struct rpc_pipe_ops *ops; 35 const struct rpc_pipe_ops *ops;
36 spinlock_t lock; 36 spinlock_t lock;
37 struct dentry *dentry;
37}; 38};
38 39
39struct rpc_inode { 40struct rpc_inode {
@@ -77,8 +78,10 @@ extern struct dentry *rpc_create_cache_dir(struct dentry *,
77 struct cache_detail *); 78 struct cache_detail *);
78extern void rpc_remove_cache_dir(struct dentry *); 79extern void rpc_remove_cache_dir(struct dentry *);
79 80
80extern struct dentry *rpc_mkpipe(struct dentry *, const char *, void *, 81struct rpc_pipe *rpc_mkpipe_data(const struct rpc_pipe_ops *ops, int flags);
81 const struct rpc_pipe_ops *, int flags); 82void rpc_destroy_pipe_data(struct rpc_pipe *pipe);
83extern struct dentry *rpc_mkpipe_dentry(struct dentry *, const char *, void *,
84 struct rpc_pipe *);
82extern int rpc_unlink(struct dentry *); 85extern int rpc_unlink(struct dentry *);
83extern struct vfsmount *rpc_get_mount(void); 86extern struct vfsmount *rpc_get_mount(void);
84extern void rpc_put_mount(void); 87extern void rpc_put_mount(void);