diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2015-05-02 10:43:25 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2015-05-10 22:18:27 -0400 |
commit | df64c082efd1f71d27d942dbfc628877272e6809 (patch) | |
tree | 7bc1dd66527cb4ac02709b59d959c16288f1658e /fs/freevxfs/vxfs_inode.c | |
parent | ad476fedc7805ca7cec12a56e697afe37566e573 (diff) | |
download | linux-df64c082efd1f71d27d942dbfc628877272e6809.tar.gz linux-df64c082efd1f71d27d942dbfc628877272e6809.tar.bz2 linux-df64c082efd1f71d27d942dbfc628877272e6809.zip |
freevxfs: switch to simple_follow_link()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/freevxfs/vxfs_inode.c')
-rw-r--r-- | fs/freevxfs/vxfs_inode.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/freevxfs/vxfs_inode.c b/fs/freevxfs/vxfs_inode.c index 363e3ae25f6b..ef73ed674a27 100644 --- a/fs/freevxfs/vxfs_inode.c +++ b/fs/freevxfs/vxfs_inode.c @@ -35,6 +35,7 @@ #include <linux/pagemap.h> #include <linux/kernel.h> #include <linux/slab.h> +#include <linux/namei.h> #include "vxfs.h" #include "vxfs_inode.h" @@ -327,8 +328,10 @@ vxfs_iget(struct super_block *sbp, ino_t ino) ip->i_op = &page_symlink_inode_operations; ip->i_mapping->a_ops = &vxfs_aops; } else { - ip->i_op = &vxfs_immed_symlink_iops; - vip->vii_immed.vi_immed[ip->i_size] = '\0'; + ip->i_op = &simple_symlink_inode_operations; + ip->i_link = vip->vii_immed.vi_immed; + nd_terminate_link(ip->i_link, ip->i_size, + sizeof(vip->vii_immed.vi_immed) - 1); } } else init_special_inode(ip, ip->i_mode, old_decode_dev(vip->vii_rdev)); |