diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2022-06-29 15:07:00 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2022-07-16 15:19:47 +0200 |
commit | 868941b14441282ba08761b770fc6cad69d5bdb7 (patch) | |
tree | cd296cdb6bb8a41a826158c8fe9bccc6782ceb56 /fs/open.c | |
parent | fs: check FMODE_LSEEK to control internal pipe splicing (diff) | |
download | linux-868941b14441282ba08761b770fc6cad69d5bdb7.tar.xz linux-868941b14441282ba08761b770fc6cad69d5bdb7.zip |
fs: remove no_llseek
Now that all callers of ->llseek are going through vfs_llseek(), we
don't gain anything by keeping no_llseek around. Nothing actually calls
it and setting ->llseek to no_lseek is completely equivalent to
leaving it NULL.
Longer term (== by the end of merge window) we want to remove all such
intializations. To simplify the merge window this commit does *not*
touch initializers - it only defines no_llseek as NULL (and simplifies
the tests on file opening).
At -rc1 we'll need do a mechanical removal of no_llseek -
git grep -l -w no_llseek | grep -v porting.rst | while read i; do
sed -i '/\<no_llseek\>/d' $i
done
would do it.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/open.c')
-rw-r--r-- | fs/open.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/open.c b/fs/open.c index 4488bd77c390..07c332753a36 100644 --- a/fs/open.c +++ b/fs/open.c @@ -860,8 +860,6 @@ static int do_dentry_open(struct file *f, f->f_mode |= FMODE_CAN_WRITE; if ((f->f_mode & FMODE_LSEEK) && !f->f_op->llseek) f->f_mode &= ~FMODE_LSEEK; - if ((f->f_mode & FMODE_LSEEK) && f->f_op->llseek == no_llseek) - f->f_mode &= ~FMODE_LSEEK; if (f->f_mapping->a_ops && f->f_mapping->a_ops->direct_IO) f->f_mode |= FMODE_CAN_ODIRECT; |