Jason's lseek series. One note: after that no_llseek is defined to NULL; boilerplate initializers ought to be removed, but that's better done at the end of merge window - fewer conflicts that way. Could you run git grep -l -w no_llseek | grep -v porting.rst | while read i; do sed -i '/\<no_llseek\>/d' $i done just before -rc1 to take that boilerplate out? The following changes since commit b13baccc3850ca8b8cccbf8ed9912dbaa0fdf7f3: Linux 5.19-rc2 (2022-06-12 16:11:37 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git tags/pull-work.lseek for you to fetch changes up to 868941b14441282ba08761b770fc6cad69d5bdb7: fs: remove no_llseek (2022-07-16 09:19:47 -0400) ---------------------------------------------------------------- Saner handling of "lseek should fail with ESPIPE" - gets rid of magical no_llseek thing and makes checks consistent. In particular, ad-hoc "can we do splice via internal pipe" checks got saner (and somewhat more permissive, which is what Jason had been after, AFAICT) Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx> ---------------------------------------------------------------- Jason A. Donenfeld (6): fs: clear or set FMODE_LSEEK based on llseek function fs: do not compare against ->llseek dma-buf: remove useless FMODE_LSEEK flag vfio: do not set FMODE_LSEEK flag fs: check FMODE_LSEEK to control internal pipe splicing fs: remove no_llseek Documentation/filesystems/porting.rst | 8 ++++++++ drivers/dma-buf/dma-buf.c | 1 - drivers/gpu/drm/drm_file.c | 3 +-- drivers/vfio/vfio.c | 2 +- fs/coredump.c | 4 ++-- fs/file_table.c | 2 ++ fs/open.c | 2 ++ fs/overlayfs/copy_up.c | 3 +-- fs/read_write.c | 17 +++-------------- fs/splice.c | 10 ++++------ include/linux/fs.h | 2 +- kernel/bpf/bpf_iter.c | 3 +-- 12 files changed, 26 insertions(+), 31 deletions(-)