ufs: get rid of ->setattr() for symlinks
It was to needed for a couple of months in 2010, until UFS quota support got dropped. Since then it's equivalent to simple_setattr() (i.e. the default) for everything except the regular files. And dropping it there allows to convert all UFS symlinks to {page,simple}_symlink_inode_operations, getting rid of fs/ufs/symlink.c completely. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -123,14 +123,14 @@ static int ufs_symlink (struct inode * dir, struct dentry * dentry,
|
||||
|
||||
if (l > UFS_SB(sb)->s_uspi->s_maxsymlinklen) {
|
||||
/* slow symlink */
|
||||
inode->i_op = &ufs_symlink_inode_operations;
|
||||
inode->i_op = &page_symlink_inode_operations;
|
||||
inode->i_mapping->a_ops = &ufs_aops;
|
||||
err = page_symlink(inode, symname, l);
|
||||
if (err)
|
||||
goto out_fail;
|
||||
} else {
|
||||
/* fast symlink */
|
||||
inode->i_op = &ufs_fast_symlink_inode_operations;
|
||||
inode->i_op = &simple_symlink_inode_operations;
|
||||
inode->i_link = (char *)UFS_I(inode)->i_u1.i_symlink;
|
||||
memcpy(inode->i_link, symname, l);
|
||||
inode->i_size = l-1;
|
||||
|
Reference in New Issue
Block a user