aboutsummaryrefslogtreecommitdiffstats
path: root/fs/kernfs/dir.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2016-04-20 19:59:01 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2016-05-09 11:41:13 -0400
commit8cb0d2c1c7dea61e9b976cadedeae228f1180cbd (patch)
tree521e54ca0f02bc377faf911038bb2f61534f0a3e /fs/kernfs/dir.c
parenta01b3007ffb9be0180e744f0d15b130b0a76a29f (diff)
kernfs: no point locking directory around that generic_file_llseek()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/kernfs/dir.c')
-rw-r--r--fs/kernfs/dir.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/fs/kernfs/dir.c b/fs/kernfs/dir.c
index 03b688d19f69..4f61d19cde18 100644
--- a/fs/kernfs/dir.c
+++ b/fs/kernfs/dir.c
@@ -1643,22 +1643,9 @@ static int kernfs_fop_readdir(struct file *file, struct dir_context *ctx)
1643 return 0; 1643 return 0;
1644} 1644}
1645 1645
1646static loff_t kernfs_dir_fop_llseek(struct file *file, loff_t offset,
1647 int whence)
1648{
1649 struct inode *inode = file_inode(file);
1650 loff_t ret;
1651
1652 inode_lock(inode);
1653 ret = generic_file_llseek(file, offset, whence);
1654 inode_unlock(inode);
1655
1656 return ret;
1657}
1658
1659const struct file_operations kernfs_dir_fops = { 1646const struct file_operations kernfs_dir_fops = {
1660 .read = generic_read_dir, 1647 .read = generic_read_dir,
1661 .iterate = kernfs_fop_readdir, 1648 .iterate_shared = kernfs_fop_readdir,
1662 .release = kernfs_dir_fop_release, 1649 .release = kernfs_dir_fop_release,
1663 .llseek = kernfs_dir_fop_llseek, 1650 .llseek = generic_file_llseek,
1664}; 1651};