summaryrefslogtreecommitdiffstats
path: root/fs/freevxfs/vxfs_inode.c
diff options
context:
space:
mode:
authorAl Viro2015-05-02 16:43:25 +0200
committerAl Viro2015-05-11 04:18:27 +0200
commitdf64c082efd1f71d27d942dbfc628877272e6809 (patch)
tree7bc1dd66527cb4ac02709b59d959c16288f1658e /fs/freevxfs/vxfs_inode.c
parentjfs: switch to simple_follow_link() (diff)
downloadkernel-qcow2-linux-df64c082efd1f71d27d942dbfc628877272e6809.tar.gz
kernel-qcow2-linux-df64c082efd1f71d27d942dbfc628877272e6809.tar.xz
kernel-qcow2-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.c7
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));