summaryrefslogtreecommitdiffstats
path: root/fs/ufs/inode.c
diff options
context:
space:
mode:
authorAl Viro2015-11-16 00:24:17 +0100
committerAl Viro2015-12-07 02:43:26 +0100
commit9cdce3c074fbd7083923f15225e112a91daff8ed (patch)
treef1c4e23622a46b610f1f710c7c248b73ee7269b3 /fs/ufs/inode.c
parentudf: don't duplicate page_symlink_inode_operations (diff)
downloadkernel-qcow2-linux-9cdce3c074fbd7083923f15225e112a91daff8ed.tar.gz
kernel-qcow2-linux-9cdce3c074fbd7083923f15225e112a91daff8ed.tar.xz
kernel-qcow2-linux-9cdce3c074fbd7083923f15225e112a91daff8ed.zip
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>
Diffstat (limited to 'fs/ufs/inode.c')
-rw-r--r--fs/ufs/inode.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/ufs/inode.c b/fs/ufs/inode.c
index a064cf44b143..737160a7b819 100644
--- a/fs/ufs/inode.c
+++ b/fs/ufs/inode.c
@@ -528,11 +528,11 @@ static void ufs_set_inode_ops(struct inode *inode)
inode->i_mapping->a_ops = &ufs_aops;
} else if (S_ISLNK(inode->i_mode)) {
if (!inode->i_blocks) {
- inode->i_op = &ufs_fast_symlink_inode_operations;
inode->i_link = (char *)UFS_I(inode)->i_u1.i_symlink;
+ inode->i_op = &simple_symlink_inode_operations;
} else {
- inode->i_op = &ufs_symlink_inode_operations;
inode->i_mapping->a_ops = &ufs_aops;
+ inode->i_op = &page_symlink_inode_operations;
}
} else
init_special_inode(inode, inode->i_mode,