linux-stable/fs/overlayfs
Amir Goldstein d796e77f1d ovl: fix failure to fsync lower dir
As a writable mount, it is not expected for overlayfs to return
EINVAL/EROFS for fsync, even if dir/file is not changed.

This commit fixes the case of fsync of directory, which is easier to
address, because overlayfs already implements fsync file operation for
directories.

The problem reported by Raphael is that new PostgreSQL 10.0 with a
database in overlayfs where lower layer in squashfs fails to start.
The failure is due to fsync error, when PostgreSQL does fsync on all
existing db directories on startup and a specific directory exists
lower layer with no changes.

Reported-by: Raphael Hertzog <raphael@ouaza.com>
Cc: <stable@vger.kernel.org> # v3.18
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Tested-by: Raphaël Hertzog <hertzog@debian.org>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
2018-01-19 13:54:33 +01:00
..
copy_up.c ovl: move include of ovl_entry.h into overlayfs.h 2017-11-09 10:23:27 +01:00
dir.c ovl: fix overlay: warning prefix 2017-12-14 11:14:52 +01:00
inode.c ovl: hash directory inodes for fsnotify 2018-01-19 13:54:33 +01:00
Kconfig ovl: don't follow redirects if redirect_dir=off 2017-12-11 11:28:10 +01:00
Makefile ovl: split super.c 2016-12-16 11:02:56 +01:00
namei.c ovl: Pass ovl_get_nlink() parameters in right order 2017-12-11 11:28:10 +01:00
overlayfs.h ovl: Use PTR_ERR_OR_ZERO() 2017-12-11 11:28:11 +01:00
ovl_entry.h ovl: don't follow redirects if redirect_dir=off 2017-12-11 11:28:10 +01:00
readdir.c ovl: fix failure to fsync lower dir 2018-01-19 13:54:33 +01:00
super.c ovl: hash directory inodes for fsnotify 2018-01-19 13:54:33 +01:00
util.c ovl: hash directory inodes for fsnotify 2018-01-19 13:54:33 +01:00