--- /dev/null
+From jdw@amazon.de Thu Jan 31 16:05:54 2019
+From: Jimmy Durand Wesolowski <jdw@amazon.de>
+Date: Thu, 31 Jan 2019 15:19:39 +0100
+Subject: fs: add the fsnotify call to vfs_iter_write
+To: stable@vger.kernel.org
+Cc: David Woodhouse <dwmw@amazon.co.uk>, Amit Shah <aams@amazon.de>, Stefan Nuernberger <snu@amazon.de>, Frank Becker <becke@amazon.de>, Jimmy Durand Wesolowski <jdw@amazon.de>
+Message-ID: <1548944379-21257-1-git-send-email-jdw@amazon.de>
+
+From: Jimmy Durand Wesolowski <jdw@amazon.de>
+
+A bug has been discovered when redirecting splice output to regular files
+on EXT4 and tmpfs. Other filesystems might be affected.
+This commit fixes the issue for stable series kernel, using one of the
+change introduced during the rewrite and refactoring of vfs_iter_write in
+4.13, specifically in the
+commit abbb65899aec ("fs: implement vfs_iter_write using do_iter_write").
+
+This issue affects v4.4 and v4.9 stable series of kernels.
+
+Without this fix for v4.4 and v4.9 stable, the following upstream commits
+(and their dependencies would need to be backported):
+* commit abbb65899aec ("fs: implement vfs_iter_write using do_iter_write")
+* commit 18e9710ee59c ("fs: implement vfs_iter_read using do_iter_read")
+* commit edab5fe38c2c
+ ("fs: move more code into do_iter_read/do_iter_write")
+* commit 19c735868dd0 ("fs: remove __do_readv_writev")
+* commit 26c87fb7d10d ("fs: remove do_compat_readv_writev")
+* commit 251b42a1dc64 ("fs: remove do_readv_writev")
+
+as well as the following dependencies:
+* commit bb7462b6fd64
+ ("vfs: use helpers for calling f_op->{read,write}_iter()")
+* commit 0f78d06ac1e9
+ ("vfs: pass type instead of fn to do_{loop,iter}_readv_writev()")
+* commit 7687a7a4435f
+ ("vfs: extract common parts of {compat_,}do_readv_writev()")
+
+In order to reduce the changes, this commit uses only the part of
+commit abbb65899aec ("fs: implement vfs_iter_write using do_iter_write")
+that fixes the issue.
+
+This issue and the reproducer can be found on
+https://bugzilla.kernel.org/show_bug.cgi?id=85381
+
+Reported-by: Richard Li <richardpku@gmail.com>
+Reported-by: Chad Miller <millchad@amazon.com>
+Reviewed-by: Stefan Nuernberger <snu@amazon.de>
+Reviewed-by: Frank Becker <becke@amazon.de>
+Signed-off-by: Jimmy Durand Wesolowski <jdw@amazon.de>
+---
+ fs/read_write.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+--- a/fs/read_write.c
++++ b/fs/read_write.c
+@@ -363,8 +363,10 @@ ssize_t vfs_iter_write(struct file *file
+ iter->type |= WRITE;
+ ret = file->f_op->write_iter(&kiocb, iter);
+ BUG_ON(ret == -EIOCBQUEUED);
+- if (ret > 0)
++ if (ret > 0) {
+ *ppos = kiocb.ki_pos;
++ fsnotify_modify(file);
++ }
+ return ret;
+ }
+ EXPORT_SYMBOL(vfs_iter_write);