X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fsysv%2Fsymlink.c;h=ed637db2dcb10293769768cb0b75ca3d6b619815;hb=9bf4aaab3e101692164d49b7ca357651eb691cb6;hp=97ea7613782c9e3ee90dd6957d4f44dd762fc361;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/fs/sysv/symlink.c b/fs/sysv/symlink.c index 97ea76137..ed637db2d 100644 --- a/fs/sysv/symlink.c +++ b/fs/sysv/symlink.c @@ -6,20 +6,15 @@ */ #include "sysv.h" - -static int sysv_readlink(struct dentry *dentry, char *buffer, int buflen) -{ - char *s = (char *)SYSV_I(dentry->d_inode)->i_data; - return vfs_readlink(dentry, buffer, buflen, s); -} +#include static int sysv_follow_link(struct dentry *dentry, struct nameidata *nd) { - char *s = (char *)SYSV_I(dentry->d_inode)->i_data; - return vfs_follow_link(nd, s); + nd_set_link(nd, (char *)SYSV_I(dentry->d_inode)->i_data); + return 0; } struct inode_operations sysv_fast_symlink_inode_operations = { - .readlink = sysv_readlink, + .readlink = generic_readlink, .follow_link = sysv_follow_link, };