aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2017-01-12 04:01:17 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2017-01-12 04:01:17 -0500
commit7880b43bdfc9580700ee4568c75c383a5bcdd2ca (patch)
treebfad23571a8d05423c572d8eec2de131a2461377
parent7ce7d89f48834cefece7804d38fc5d85382edf77 (diff)
9p: constify ->d_name handling
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--fs/9p/fid.c10
-rw-r--r--fs/9p/vfs_inode.c10
-rw-r--r--fs/9p/vfs_inode_dotl.c20
-rw-r--r--include/net/9p/9p.h8
-rw-r--r--include/net/9p/client.h18
-rw-r--r--net/9p/client.c18
6 files changed, 42 insertions, 42 deletions
diff --git a/fs/9p/fid.c b/fs/9p/fid.c
index 60fb47469c86..ed4f8519b627 100644
--- a/fs/9p/fid.c
+++ b/fs/9p/fid.c
@@ -91,10 +91,10 @@ static struct p9_fid *v9fs_fid_find(struct dentry *dentry, kuid_t uid, int any)
91 * dentry names. 91 * dentry names.
92 */ 92 */
93static int build_path_from_dentry(struct v9fs_session_info *v9ses, 93static int build_path_from_dentry(struct v9fs_session_info *v9ses,
94 struct dentry *dentry, char ***names) 94 struct dentry *dentry, const unsigned char ***names)
95{ 95{
96 int n = 0, i; 96 int n = 0, i;
97 char **wnames; 97 const unsigned char **wnames;
98 struct dentry *ds; 98 struct dentry *ds;
99 99
100 for (ds = dentry; !IS_ROOT(ds); ds = ds->d_parent) 100 for (ds = dentry; !IS_ROOT(ds); ds = ds->d_parent)
@@ -105,7 +105,7 @@ static int build_path_from_dentry(struct v9fs_session_info *v9ses,
105 goto err_out; 105 goto err_out;
106 106
107 for (ds = dentry, i = (n-1); i >= 0; i--, ds = ds->d_parent) 107 for (ds = dentry, i = (n-1); i >= 0; i--, ds = ds->d_parent)
108 wnames[i] = (char *)ds->d_name.name; 108 wnames[i] = ds->d_name.name;
109 109
110 *names = wnames; 110 *names = wnames;
111 return n; 111 return n;
@@ -117,7 +117,7 @@ static struct p9_fid *v9fs_fid_lookup_with_uid(struct dentry *dentry,
117 kuid_t uid, int any) 117 kuid_t uid, int any)
118{ 118{
119 struct dentry *ds; 119 struct dentry *ds;
120 char **wnames, *uname; 120 const unsigned char **wnames, *uname;
121 int i, n, l, clone, access; 121 int i, n, l, clone, access;
122 struct v9fs_session_info *v9ses; 122 struct v9fs_session_info *v9ses;
123 struct p9_fid *fid, *old_fid = NULL; 123 struct p9_fid *fid, *old_fid = NULL;
@@ -137,7 +137,7 @@ static struct p9_fid *v9fs_fid_lookup_with_uid(struct dentry *dentry,
137 fid = v9fs_fid_find(ds, uid, any); 137 fid = v9fs_fid_find(ds, uid, any);
138 if (fid) { 138 if (fid) {
139 /* Found the parent fid do a lookup with that */ 139 /* Found the parent fid do a lookup with that */
140 fid = p9_client_walk(fid, 1, (char **)&dentry->d_name.name, 1); 140 fid = p9_client_walk(fid, 1, &dentry->d_name.name, 1);
141 goto fid_out; 141 goto fid_out;
142 } 142 }
143 up_read(&v9ses->rename_sem); 143 up_read(&v9ses->rename_sem);
diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c
index f4f4450119e4..e3e0d6581d4c 100644
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@ -643,7 +643,7 @@ v9fs_create(struct v9fs_session_info *v9ses, struct inode *dir,
643 struct dentry *dentry, char *extension, u32 perm, u8 mode) 643 struct dentry *dentry, char *extension, u32 perm, u8 mode)
644{ 644{
645 int err; 645 int err;
646 char *name; 646 const unsigned char *name;
647 struct p9_fid *dfid, *ofid, *fid; 647 struct p9_fid *dfid, *ofid, *fid;
648 struct inode *inode; 648 struct inode *inode;
649 649
@@ -652,7 +652,7 @@ v9fs_create(struct v9fs_session_info *v9ses, struct inode *dir,
652 err = 0; 652 err = 0;
653 ofid = NULL; 653 ofid = NULL;
654 fid = NULL; 654 fid = NULL;
655 name = (char *) dentry->d_name.name; 655 name = dentry->d_name.name;
656 dfid = v9fs_parent_fid(dentry); 656 dfid = v9fs_parent_fid(dentry);
657 if (IS_ERR(dfid)) { 657 if (IS_ERR(dfid)) {
658 err = PTR_ERR(dfid); 658 err = PTR_ERR(dfid);
@@ -788,7 +788,7 @@ struct dentry *v9fs_vfs_lookup(struct inode *dir, struct dentry *dentry,
788 struct v9fs_session_info *v9ses; 788 struct v9fs_session_info *v9ses;
789 struct p9_fid *dfid, *fid; 789 struct p9_fid *dfid, *fid;
790 struct inode *inode; 790 struct inode *inode;
791 char *name; 791 const unsigned char *name;
792 792
793 p9_debug(P9_DEBUG_VFS, "dir: %p dentry: (%pd) %p flags: %x\n", 793 p9_debug(P9_DEBUG_VFS, "dir: %p dentry: (%pd) %p flags: %x\n",
794 dir, dentry, dentry, flags); 794 dir, dentry, dentry, flags);
@@ -802,7 +802,7 @@ struct dentry *v9fs_vfs_lookup(struct inode *dir, struct dentry *dentry,
802 if (IS_ERR(dfid)) 802 if (IS_ERR(dfid))
803 return ERR_CAST(dfid); 803 return ERR_CAST(dfid);
804 804
805 name = (char *) dentry->d_name.name; 805 name = dentry->d_name.name;
806 fid = p9_client_walk(dfid, 1, &name, 1); 806 fid = p9_client_walk(dfid, 1, &name, 1);
807 if (IS_ERR(fid)) { 807 if (IS_ERR(fid)) {
808 if (fid == ERR_PTR(-ENOENT)) { 808 if (fid == ERR_PTR(-ENOENT)) {
@@ -1012,7 +1012,7 @@ v9fs_vfs_rename(struct inode *old_dir, struct dentry *old_dentry,
1012 } 1012 }
1013 v9fs_blank_wstat(&wstat); 1013 v9fs_blank_wstat(&wstat);
1014 wstat.muid = v9ses->uname; 1014 wstat.muid = v9ses->uname;
1015 wstat.name = (char *) new_dentry->d_name.name; 1015 wstat.name = new_dentry->d_name.name;
1016 retval = p9_client_wstat(oldfid, &wstat); 1016 retval = p9_client_wstat(oldfid, &wstat);
1017 1017
1018clunk_newdir: 1018clunk_newdir:
diff --git a/fs/9p/vfs_inode_dotl.c b/fs/9p/vfs_inode_dotl.c
index 5999bd050678..28130b1e53e4 100644
--- a/fs/9p/vfs_inode_dotl.c
+++ b/fs/9p/vfs_inode_dotl.c
@@ -244,7 +244,7 @@ v9fs_vfs_atomic_open_dotl(struct inode *dir, struct dentry *dentry,
244 int err = 0; 244 int err = 0;
245 kgid_t gid; 245 kgid_t gid;
246 umode_t mode; 246 umode_t mode;
247 char *name = NULL; 247 const unsigned char *name = NULL;
248 struct p9_qid qid; 248 struct p9_qid qid;
249 struct inode *inode; 249 struct inode *inode;
250 struct p9_fid *fid = NULL; 250 struct p9_fid *fid = NULL;
@@ -269,7 +269,7 @@ v9fs_vfs_atomic_open_dotl(struct inode *dir, struct dentry *dentry,
269 269
270 v9ses = v9fs_inode2v9ses(dir); 270 v9ses = v9fs_inode2v9ses(dir);
271 271
272 name = (char *) dentry->d_name.name; 272 name = dentry->d_name.name;
273 p9_debug(P9_DEBUG_VFS, "name:%s flags:0x%x mode:0x%hx\n", 273 p9_debug(P9_DEBUG_VFS, "name:%s flags:0x%x mode:0x%hx\n",
274 name, flags, omode); 274 name, flags, omode);
275 275
@@ -385,7 +385,7 @@ static int v9fs_vfs_mkdir_dotl(struct inode *dir,
385 struct v9fs_session_info *v9ses; 385 struct v9fs_session_info *v9ses;
386 struct p9_fid *fid = NULL, *dfid = NULL; 386 struct p9_fid *fid = NULL, *dfid = NULL;
387 kgid_t gid; 387 kgid_t gid;
388 char *name; 388 const unsigned char *name;
389 umode_t mode; 389 umode_t mode;
390 struct inode *inode; 390 struct inode *inode;
391 struct p9_qid qid; 391 struct p9_qid qid;
@@ -416,7 +416,7 @@ static int v9fs_vfs_mkdir_dotl(struct inode *dir,
416 err); 416 err);
417 goto error; 417 goto error;
418 } 418 }
419 name = (char *) dentry->d_name.name; 419 name = dentry->d_name.name;
420 err = p9_client_mkdir_dotl(dfid, name, mode, gid, &qid); 420 err = p9_client_mkdir_dotl(dfid, name, mode, gid, &qid);
421 if (err < 0) 421 if (err < 0)
422 goto error; 422 goto error;
@@ -678,14 +678,14 @@ v9fs_vfs_symlink_dotl(struct inode *dir, struct dentry *dentry,
678{ 678{
679 int err; 679 int err;
680 kgid_t gid; 680 kgid_t gid;
681 char *name; 681 const unsigned char *name;
682 struct p9_qid qid; 682 struct p9_qid qid;
683 struct inode *inode; 683 struct inode *inode;
684 struct p9_fid *dfid; 684 struct p9_fid *dfid;
685 struct p9_fid *fid = NULL; 685 struct p9_fid *fid = NULL;
686 struct v9fs_session_info *v9ses; 686 struct v9fs_session_info *v9ses;
687 687
688 name = (char *) dentry->d_name.name; 688 name = dentry->d_name.name;
689 p9_debug(P9_DEBUG_VFS, "%lu,%s,%s\n", dir->i_ino, name, symname); 689 p9_debug(P9_DEBUG_VFS, "%lu,%s,%s\n", dir->i_ino, name, symname);
690 v9ses = v9fs_inode2v9ses(dir); 690 v9ses = v9fs_inode2v9ses(dir);
691 691
@@ -699,7 +699,7 @@ v9fs_vfs_symlink_dotl(struct inode *dir, struct dentry *dentry,
699 gid = v9fs_get_fsgid_for_create(dir); 699 gid = v9fs_get_fsgid_for_create(dir);
700 700
701 /* Server doesn't alter fid on TSYMLINK. Hence no need to clone it. */ 701 /* Server doesn't alter fid on TSYMLINK. Hence no need to clone it. */
702 err = p9_client_symlink(dfid, name, (char *)symname, gid, &qid); 702 err = p9_client_symlink(dfid, name, symname, gid, &qid);
703 703
704 if (err < 0) { 704 if (err < 0) {
705 p9_debug(P9_DEBUG_VFS, "p9_client_symlink failed %d\n", err); 705 p9_debug(P9_DEBUG_VFS, "p9_client_symlink failed %d\n", err);
@@ -775,7 +775,7 @@ v9fs_vfs_link_dotl(struct dentry *old_dentry, struct inode *dir,
775 if (IS_ERR(oldfid)) 775 if (IS_ERR(oldfid))
776 return PTR_ERR(oldfid); 776 return PTR_ERR(oldfid);
777 777
778 err = p9_client_link(dfid, oldfid, (char *)dentry->d_name.name); 778 err = p9_client_link(dfid, oldfid, dentry->d_name.name);
779 779
780 if (err < 0) { 780 if (err < 0) {
781 p9_debug(P9_DEBUG_VFS, "p9_client_link failed %d\n", err); 781 p9_debug(P9_DEBUG_VFS, "p9_client_link failed %d\n", err);
@@ -812,7 +812,7 @@ v9fs_vfs_mknod_dotl(struct inode *dir, struct dentry *dentry, umode_t omode,
812{ 812{
813 int err; 813 int err;
814 kgid_t gid; 814 kgid_t gid;
815 char *name; 815 const unsigned char *name;
816 umode_t mode; 816 umode_t mode;
817 struct v9fs_session_info *v9ses; 817 struct v9fs_session_info *v9ses;
818 struct p9_fid *fid = NULL, *dfid = NULL; 818 struct p9_fid *fid = NULL, *dfid = NULL;
@@ -842,7 +842,7 @@ v9fs_vfs_mknod_dotl(struct inode *dir, struct dentry *dentry, umode_t omode,
842 err); 842 err);
843 goto error; 843 goto error;
844 } 844 }
845 name = (char *) dentry->d_name.name; 845 name = dentry->d_name.name;
846 846
847 err = p9_client_mknod_dotl(dfid, name, mode, rdev, gid, &qid); 847 err = p9_client_mknod_dotl(dfid, name, mode, rdev, gid, &qid);
848 if (err < 0) 848 if (err < 0)
diff --git a/include/net/9p/9p.h b/include/net/9p/9p.h
index 27dfe85772b1..b8eb51a661e5 100644
--- a/include/net/9p/9p.h
+++ b/include/net/9p/9p.h
@@ -402,10 +402,10 @@ struct p9_wstat {
402 u32 atime; 402 u32 atime;
403 u32 mtime; 403 u32 mtime;
404 u64 length; 404 u64 length;
405 char *name; 405 const char *name;
406 char *uid; 406 const char *uid;
407 char *gid; 407 const char *gid;
408 char *muid; 408 const char *muid;
409 char *extension; /* 9p2000.u extensions */ 409 char *extension; /* 9p2000.u extensions */
410 kuid_t n_uid; /* 9p2000.u extensions */ 410 kuid_t n_uid; /* 9p2000.u extensions */
411 kgid_t n_gid; /* 9p2000.u extensions */ 411 kgid_t n_gid; /* 9p2000.u extensions */
diff --git a/include/net/9p/client.h b/include/net/9p/client.h
index c6b97e58cf84..b582339ccef5 100644
--- a/include/net/9p/client.h
+++ b/include/net/9p/client.h
@@ -223,16 +223,16 @@ void p9_client_destroy(struct p9_client *clnt);
223void p9_client_disconnect(struct p9_client *clnt); 223void p9_client_disconnect(struct p9_client *clnt);
224void p9_client_begin_disconnect(struct p9_client *clnt); 224void p9_client_begin_disconnect(struct p9_client *clnt);
225struct p9_fid *p9_client_attach(struct p9_client *clnt, struct p9_fid *afid, 225struct p9_fid *p9_client_attach(struct p9_client *clnt, struct p9_fid *afid,
226 char *uname, kuid_t n_uname, char *aname); 226 const char *uname, kuid_t n_uname, const char *aname);
227struct p9_fid *p9_client_walk(struct p9_fid *oldfid, uint16_t nwname, 227struct p9_fid *p9_client_walk(struct p9_fid *oldfid, uint16_t nwname,
228 char **wnames, int clone); 228 const unsigned char * const *wnames, int clone);
229int p9_client_open(struct p9_fid *fid, int mode); 229int p9_client_open(struct p9_fid *fid, int mode);
230int p9_client_fcreate(struct p9_fid *fid, char *name, u32 perm, int mode, 230int p9_client_fcreate(struct p9_fid *fid, const char *name, u32 perm, int mode,
231 char *extension); 231 char *extension);
232int p9_client_link(struct p9_fid *fid, struct p9_fid *oldfid, char *newname); 232int p9_client_link(struct p9_fid *fid, struct p9_fid *oldfid, const char *newname);
233int p9_client_symlink(struct p9_fid *fid, char *name, char *symname, kgid_t gid, 233int p9_client_symlink(struct p9_fid *fid, const char *name, const char *symname,
234 struct p9_qid *qid); 234 kgid_t gid, struct p9_qid *qid);
235int p9_client_create_dotl(struct p9_fid *ofid, char *name, u32 flags, u32 mode, 235int p9_client_create_dotl(struct p9_fid *ofid, const char *name, u32 flags, u32 mode,
236 kgid_t gid, struct p9_qid *qid); 236 kgid_t gid, struct p9_qid *qid);
237int p9_client_clunk(struct p9_fid *fid); 237int p9_client_clunk(struct p9_fid *fid);
238int p9_client_fsync(struct p9_fid *fid, int datasync); 238int p9_client_fsync(struct p9_fid *fid, int datasync);
@@ -250,9 +250,9 @@ int p9_client_setattr(struct p9_fid *fid, struct p9_iattr_dotl *attr);
250struct p9_stat_dotl *p9_client_getattr_dotl(struct p9_fid *fid, 250struct p9_stat_dotl *p9_client_getattr_dotl(struct p9_fid *fid,
251 u64 request_mask); 251 u64 request_mask);
252 252
253int p9_client_mknod_dotl(struct p9_fid *oldfid, char *name, int mode, 253int p9_client_mknod_dotl(struct p9_fid *oldfid, const char *name, int mode,
254 dev_t rdev, kgid_t gid, struct p9_qid *); 254 dev_t rdev, kgid_t gid, struct p9_qid *);
255int p9_client_mkdir_dotl(struct p9_fid *fid, char *name, int mode, 255int p9_client_mkdir_dotl(struct p9_fid *fid, const char *name, int mode,
256 kgid_t gid, struct p9_qid *); 256 kgid_t gid, struct p9_qid *);
257int p9_client_lock_dotl(struct p9_fid *fid, struct p9_flock *flock, u8 *status); 257int p9_client_lock_dotl(struct p9_fid *fid, struct p9_flock *flock, u8 *status);
258int p9_client_getlock_dotl(struct p9_fid *fid, struct p9_getlock *fl); 258int p9_client_getlock_dotl(struct p9_fid *fid, struct p9_getlock *fl);
diff --git a/net/9p/client.c b/net/9p/client.c
index 3fc94a49ccd5..5a0c3a64af14 100644
--- a/net/9p/client.c
+++ b/net/9p/client.c
@@ -1101,7 +1101,7 @@ void p9_client_begin_disconnect(struct p9_client *clnt)
1101EXPORT_SYMBOL(p9_client_begin_disconnect); 1101EXPORT_SYMBOL(p9_client_begin_disconnect);
1102 1102
1103struct p9_fid *p9_client_attach(struct p9_client *clnt, struct p9_fid *afid, 1103struct p9_fid *p9_client_attach(struct p9_client *clnt, struct p9_fid *afid,
1104 char *uname, kuid_t n_uname, char *aname) 1104 const char *uname, kuid_t n_uname, const char *aname)
1105{ 1105{
1106 int err = 0; 1106 int err = 0;
1107 struct p9_req_t *req; 1107 struct p9_req_t *req;
@@ -1149,7 +1149,7 @@ error:
1149EXPORT_SYMBOL(p9_client_attach); 1149EXPORT_SYMBOL(p9_client_attach);
1150 1150
1151struct p9_fid *p9_client_walk(struct p9_fid *oldfid, uint16_t nwname, 1151struct p9_fid *p9_client_walk(struct p9_fid *oldfid, uint16_t nwname,
1152 char **wnames, int clone) 1152 const unsigned char * const *wnames, int clone)
1153{ 1153{
1154 int err; 1154 int err;
1155 struct p9_client *clnt; 1155 struct p9_client *clnt;
@@ -1271,7 +1271,7 @@ error:
1271} 1271}
1272EXPORT_SYMBOL(p9_client_open); 1272EXPORT_SYMBOL(p9_client_open);
1273 1273
1274int p9_client_create_dotl(struct p9_fid *ofid, char *name, u32 flags, u32 mode, 1274int p9_client_create_dotl(struct p9_fid *ofid, const char *name, u32 flags, u32 mode,
1275 kgid_t gid, struct p9_qid *qid) 1275 kgid_t gid, struct p9_qid *qid)
1276{ 1276{
1277 int err = 0; 1277 int err = 0;
@@ -1316,7 +1316,7 @@ error:
1316} 1316}
1317EXPORT_SYMBOL(p9_client_create_dotl); 1317EXPORT_SYMBOL(p9_client_create_dotl);
1318 1318
1319int p9_client_fcreate(struct p9_fid *fid, char *name, u32 perm, int mode, 1319int p9_client_fcreate(struct p9_fid *fid, const char *name, u32 perm, int mode,
1320 char *extension) 1320 char *extension)
1321{ 1321{
1322 int err; 1322 int err;
@@ -1361,8 +1361,8 @@ error:
1361} 1361}
1362EXPORT_SYMBOL(p9_client_fcreate); 1362EXPORT_SYMBOL(p9_client_fcreate);
1363 1363
1364int p9_client_symlink(struct p9_fid *dfid, char *name, char *symtgt, kgid_t gid, 1364int p9_client_symlink(struct p9_fid *dfid, const char *name,
1365 struct p9_qid *qid) 1365 const char *symtgt, kgid_t gid, struct p9_qid *qid)
1366{ 1366{
1367 int err = 0; 1367 int err = 0;
1368 struct p9_client *clnt; 1368 struct p9_client *clnt;
@@ -1395,7 +1395,7 @@ error:
1395} 1395}
1396EXPORT_SYMBOL(p9_client_symlink); 1396EXPORT_SYMBOL(p9_client_symlink);
1397 1397
1398int p9_client_link(struct p9_fid *dfid, struct p9_fid *oldfid, char *newname) 1398int p9_client_link(struct p9_fid *dfid, struct p9_fid *oldfid, const char *newname)
1399{ 1399{
1400 struct p9_client *clnt; 1400 struct p9_client *clnt;
1401 struct p9_req_t *req; 1401 struct p9_req_t *req;
@@ -2117,7 +2117,7 @@ error:
2117} 2117}
2118EXPORT_SYMBOL(p9_client_readdir); 2118EXPORT_SYMBOL(p9_client_readdir);
2119 2119
2120int p9_client_mknod_dotl(struct p9_fid *fid, char *name, int mode, 2120int p9_client_mknod_dotl(struct p9_fid *fid, const char *name, int mode,
2121 dev_t rdev, kgid_t gid, struct p9_qid *qid) 2121 dev_t rdev, kgid_t gid, struct p9_qid *qid)
2122{ 2122{
2123 int err; 2123 int err;
@@ -2148,7 +2148,7 @@ error:
2148} 2148}
2149EXPORT_SYMBOL(p9_client_mknod_dotl); 2149EXPORT_SYMBOL(p9_client_mknod_dotl);
2150 2150
2151int p9_client_mkdir_dotl(struct p9_fid *fid, char *name, int mode, 2151int p9_client_mkdir_dotl(struct p9_fid *fid, const char *name, int mode,
2152 kgid_t gid, struct p9_qid *qid) 2152 kgid_t gid, struct p9_qid *qid)
2153{ 2153{
2154 int err; 2154 int err;