aboutsummaryrefslogtreecommitdiffstats
path: root/fs/dcache.c
diff options
context:
space:
mode:
authorJan Blunck <jblunck@suse.de>2008-02-14 22:38:31 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-15 00:17:08 -0500
commit329c97f0af41bd580237b8fad0f3741849ee4e13 (patch)
treee42190ebad3a19054ea6d86faaa82a68b44a4421 /fs/dcache.c
parentac748a09fc873915254ed69fe83f1a95436ee30a (diff)
One less parameter to __d_path
All callers to __d_path pass the dentry and vfsmount of a struct path to __d_path. Pass the struct path directly, instead. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Andreas Gruenbacher <agruen@suse.de> Signed-off-by: Jan Blunck <jblunck@suse.de> Acked-by: Christoph Hellwig <hch@infradead.org> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: "J. Bruce Fields" <bfields@fieldses.org> Cc: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/dcache.c')
-rw-r--r--fs/dcache.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/fs/dcache.c b/fs/dcache.c
index 66aaf52199e9..688aac951d11 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -1776,9 +1776,8 @@ shouldnt_be_hashed:
1776 * 1776 *
1777 * "buflen" should be positive. Caller holds the dcache_lock. 1777 * "buflen" should be positive. Caller holds the dcache_lock.
1778 */ 1778 */
1779static char * __d_path( struct dentry *dentry, struct vfsmount *vfsmnt, 1779static char *__d_path(struct dentry *dentry, struct vfsmount *vfsmnt,
1780 struct dentry *root, struct vfsmount *rootmnt, 1780 struct path *root, char *buffer, int buflen)
1781 char *buffer, int buflen)
1782{ 1781{
1783 char * end = buffer+buflen; 1782 char * end = buffer+buflen;
1784 char * retval; 1783 char * retval;
@@ -1803,7 +1802,7 @@ static char * __d_path( struct dentry *dentry, struct vfsmount *vfsmnt,
1803 for (;;) { 1802 for (;;) {
1804 struct dentry * parent; 1803 struct dentry * parent;
1805 1804
1806 if (dentry == root && vfsmnt == rootmnt) 1805 if (dentry == root->dentry && vfsmnt == root->mnt)
1807 break; 1806 break;
1808 if (dentry == vfsmnt->mnt_root || IS_ROOT(dentry)) { 1807 if (dentry == vfsmnt->mnt_root || IS_ROOT(dentry)) {
1809 /* Global root? */ 1808 /* Global root? */
@@ -1866,7 +1865,7 @@ char * d_path(struct dentry *dentry, struct vfsmount *vfsmnt,
1866 path_get(&current->fs->root); 1865 path_get(&current->fs->root);
1867 read_unlock(&current->fs->lock); 1866 read_unlock(&current->fs->lock);
1868 spin_lock(&dcache_lock); 1867 spin_lock(&dcache_lock);
1869 res = __d_path(dentry, vfsmnt, root.dentry, root.mnt, buf, buflen); 1868 res = __d_path(dentry, vfsmnt, &root, buf, buflen);
1870 spin_unlock(&dcache_lock); 1869 spin_unlock(&dcache_lock);
1871 path_put(&root); 1870 path_put(&root);
1872 return res; 1871 return res;
@@ -1934,8 +1933,7 @@ asmlinkage long sys_getcwd(char __user *buf, unsigned long size)
1934 unsigned long len; 1933 unsigned long len;
1935 char * cwd; 1934 char * cwd;
1936 1935
1937 cwd = __d_path(pwd.dentry, pwd.mnt, root.dentry, root.mnt, 1936 cwd = __d_path(pwd.dentry, pwd.mnt, &root, page, PAGE_SIZE);
1938 page, PAGE_SIZE);
1939 spin_unlock(&dcache_lock); 1937 spin_unlock(&dcache_lock);
1940 1938
1941 error = PTR_ERR(cwd); 1939 error = PTR_ERR(cwd);