aboutsummaryrefslogtreecommitdiffstats
path: root/net/sunrpc/rpc_pipe.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2013-07-14 08:43:54 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2013-07-14 09:02:28 -0400
commita95e691f9c4a6e24fdeab6d7feae6d5411fe8a69 (patch)
treeebe142c51935b977861e9d911a505bc63ef8ee29 /net/sunrpc/rpc_pipe.c
parente9a17bd73a29e5323c37ec5ffe50fc0e825d3d03 (diff)
rpc_create_*_dir: don't bother with qstr
just pass the name Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'net/sunrpc/rpc_pipe.c')
-rw-r--r--net/sunrpc/rpc_pipe.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c
index e7ce4b3eb0bd..63364cb5d11a 100644
--- a/net/sunrpc/rpc_pipe.c
+++ b/net/sunrpc/rpc_pipe.c
@@ -770,15 +770,17 @@ out_bad:
770} 770}
771 771
772static struct dentry *rpc_mkdir_populate(struct dentry *parent, 772static struct dentry *rpc_mkdir_populate(struct dentry *parent,
773 struct qstr *name, umode_t mode, void *private, 773 const char *name, umode_t mode, void *private,
774 int (*populate)(struct dentry *, void *), void *args_populate) 774 int (*populate)(struct dentry *, void *), void *args_populate)
775{ 775{
776 struct dentry *dentry; 776 struct dentry *dentry;
777 struct qstr q = QSTR_INIT(name, strlen(name));
777 struct inode *dir = parent->d_inode; 778 struct inode *dir = parent->d_inode;
778 int error; 779 int error;
779 780
781 q.hash = full_name_hash(q.name, q.len);
780 mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT); 782 mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT);
781 dentry = __rpc_lookup_create_exclusive(parent, name); 783 dentry = __rpc_lookup_create_exclusive(parent, &q);
782 if (IS_ERR(dentry)) 784 if (IS_ERR(dentry))
783 goto out; 785 goto out;
784 error = __rpc_mkdir(dir, dentry, mode, NULL, private); 786 error = __rpc_mkdir(dir, dentry, mode, NULL, private);
@@ -925,8 +927,8 @@ static void rpc_clntdir_depopulate(struct dentry *dentry)
925 927
926/** 928/**
927 * rpc_create_client_dir - Create a new rpc_client directory in rpc_pipefs 929 * rpc_create_client_dir - Create a new rpc_client directory in rpc_pipefs
928 * @dentry: dentry from the rpc_pipefs root to the new directory 930 * @dentry: the parent of new directory
929 * @name: &struct qstr for the name 931 * @name: the name of new directory
930 * @rpc_client: rpc client to associate with this directory 932 * @rpc_client: rpc client to associate with this directory
931 * 933 *
932 * This creates a directory at the given @path associated with 934 * This creates a directory at the given @path associated with
@@ -935,7 +937,7 @@ static void rpc_clntdir_depopulate(struct dentry *dentry)
935 * later be created using rpc_mkpipe(). 937 * later be created using rpc_mkpipe().
936 */ 938 */
937struct dentry *rpc_create_client_dir(struct dentry *dentry, 939struct dentry *rpc_create_client_dir(struct dentry *dentry,
938 struct qstr *name, 940 const char *name,
939 struct rpc_clnt *rpc_client) 941 struct rpc_clnt *rpc_client)
940{ 942{
941 return rpc_mkdir_populate(dentry, name, S_IRUGO | S_IXUGO, NULL, 943 return rpc_mkdir_populate(dentry, name, S_IRUGO | S_IXUGO, NULL,
@@ -981,7 +983,7 @@ static void rpc_cachedir_depopulate(struct dentry *dentry)
981 rpc_depopulate(dentry, cache_pipefs_files, 0, 3); 983 rpc_depopulate(dentry, cache_pipefs_files, 0, 3);
982} 984}
983 985
984struct dentry *rpc_create_cache_dir(struct dentry *parent, struct qstr *name, 986struct dentry *rpc_create_cache_dir(struct dentry *parent, const char *name,
985 umode_t umode, struct cache_detail *cd) 987 umode_t umode, struct cache_detail *cd)
986{ 988{
987 return rpc_mkdir_populate(parent, name, umode, NULL, 989 return rpc_mkdir_populate(parent, name, umode, NULL,