diff options
Diffstat (limited to 'fs/9p/vfs_inode.c')
| -rw-r--r-- | fs/9p/vfs_inode.c | 43 | 
1 files changed, 2 insertions, 41 deletions
diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c index 18f74ec4dce9..a407fa3388c0 100644 --- a/fs/9p/vfs_inode.c +++ b/fs/9p/vfs_inode.c @@ -176,7 +176,7 @@ int v9fs_uflags2omode(int uflags, int extended)   *   */ -static void +void  v9fs_blank_wstat(struct p9_wstat *wstat)  {  	wstat->type = ~0; @@ -1001,44 +1001,6 @@ done:  }  /** - * v9fs_vfs_readlink - read a symlink's location - * @dentry: dentry for symlink - * @buffer: buffer to load symlink location into - * @buflen: length of buffer - * - */ - -static int v9fs_vfs_readlink(struct dentry *dentry, char __user * buffer, -			     int buflen) -{ -	int retval; -	int ret; -	char *link = __getname(); - -	if (unlikely(!link)) -		return -ENOMEM; - -	if (buflen > PATH_MAX) -		buflen = PATH_MAX; - -	P9_DPRINTK(P9_DEBUG_VFS, " dentry: %s (%p)\n", dentry->d_name.name, -									dentry); - -	retval = v9fs_readlink(dentry, link, buflen); - -	if (retval > 0) { -		if ((ret = copy_to_user(buffer, link, retval)) != 0) { -			P9_DPRINTK(P9_DEBUG_ERROR, -					"problem copying to user: %d\n", ret); -			retval = ret; -		} -	} - -	__putname(link); -	return retval; -} - -/**   * v9fs_vfs_follow_link - follow a symlink path   * @dentry: dentry for symlink   * @nd: nameidata @@ -1230,7 +1192,6 @@ static const struct inode_operations v9fs_dir_inode_operations_ext = {  	.rmdir = v9fs_vfs_rmdir,  	.mknod = v9fs_vfs_mknod,  	.rename = v9fs_vfs_rename, -	.readlink = v9fs_vfs_readlink,  	.getattr = v9fs_vfs_getattr,  	.setattr = v9fs_vfs_setattr,  }; @@ -1253,7 +1214,7 @@ static const struct inode_operations v9fs_file_inode_operations = {  };  static const struct inode_operations v9fs_symlink_inode_operations = { -	.readlink = v9fs_vfs_readlink, +	.readlink = generic_readlink,  	.follow_link = v9fs_vfs_follow_link,  	.put_link = v9fs_vfs_put_link,  	.getattr = v9fs_vfs_getattr,  | 
