android_kernel_google_msm/fs
Theodore Ts'o c51e428eea fs: push sync_filesystem() down to the file system's remount_fs()
Previously, the no-op "mount -o mount /dev/xxx" operation when the
file system is already mounted read-write causes an implied,
unconditional syncfs().  This seems pretty stupid, and it's certainly
documented or guaraunteed to do this, nor is it particularly useful,
except in the case where the file system was mounted rw and is getting
remounted read-only.

However, it's possible that there might be some file systems that are
actually depending on this behavior.  In most file systems, it's
probably fine to only call sync_filesystem() when transitioning from
read-write to read-only, and there are some file systems where this is
not needed at all (for example, for a pseudo-filesystem or something
like romfs).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: linux-fsdevel@vger.kernel.org
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Artem Bityutskiy <dedekind1@gmail.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Evgeniy Dushistov <dushistov@mail.ru>
Cc: Jan Kara <jack@suse.cz>
Cc: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Cc: Anders Larsen <al@alarsen.net>
Cc: Phillip Lougher <phillip@squashfs.org.uk>
Cc: Kees Cook <keescook@chromium.org>
Cc: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
Cc: Petr Vandrovec <petr@vandrovec.name>
Cc: xfs@oss.sgi.com
Cc: linux-btrfs@vger.kernel.org
Cc: linux-cifs@vger.kernel.org
Cc: samba-technical@lists.samba.org
Cc: codalist@coda.cs.cmu.edu
Cc: linux-ext4@vger.kernel.org
Cc: linux-f2fs-devel@lists.sourceforge.net
Cc: fuse-devel@lists.sourceforge.net
Cc: cluster-devel@redhat.com
Cc: linux-mtd@lists.infradead.org
Cc: jfs-discussion@lists.sourceforge.net
Cc: linux-nfs@vger.kernel.org
Cc: linux-nilfs@vger.kernel.org
Cc: linux-ntfs-dev@lists.sourceforge.net
Cc: ocfs2-devel@oss.oracle.com
Cc: reiserfs-devel@vger.kernel.org
Change-Id: I03b43c745f82fce2cd3e0856c42eda70d94a45f8
2020-11-29 16:11:45 +03:00
..
9p mm: kill vma flag VM_CAN_NONLINEAR 2020-11-29 16:11:40 +03:00
adfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
affs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
afs don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
autofs4 stop passing nameidata to ->lookup() 2018-12-07 22:26:28 +04:00
befs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
bfs don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
btrfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
cachefiles don't pass nameidata * to vfs_create() 2018-12-07 22:28:48 +04:00
ceph mm: kill vma flag VM_CAN_NONLINEAR 2020-11-29 16:11:40 +03:00
cifs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
coda fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
configfs stop passing nameidata to ->lookup() 2018-12-07 22:26:28 +04:00
cramfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
crypto ext4/fscrypto: avoid RCU lookup in d_revalidate 2016-10-29 23:12:37 +08:00
debugfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
devpts fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
dlm
ecryptfs don't pass nameidata * to vfs_create() 2018-12-07 22:28:48 +04:00
efs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
exofs don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
exportfs move d_rcu from overlapping d_child to overlapping d_alias 2017-09-22 19:11:55 +03:00
ext2 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
ext3 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
ext4 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
f2fs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
fat fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
freevxfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
fscache FS-Cache: Handle a write to the page immediately beyond the EOF marker 2016-10-26 23:15:25 +08:00
fuse fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
gfs2 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
hfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
hfsplus fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
hostfs don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
hpfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
hppfs stop passing nameidata to ->lookup() 2018-12-07 22:26:28 +04:00
hugetlbfs don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
isofs stop passing nameidata to ->lookup() 2018-12-07 22:26:28 +04:00
jbd
jbd2 jbd2: Fix unreclaimed pages after truncate in data=journal mode 2016-10-26 23:15:34 +08:00
jffs2 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
jfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
lockd lockd: Try to reconnect if statd has moved 2015-02-02 17:04:42 +08:00
logfs don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
minix fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
ncpfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
nfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
nfs_common
nfsd don't pass nameidata * to vfs_create() 2018-12-07 22:28:48 +04:00
nilfs2 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
nls
notify fanotify: check file flags passed in fanotify_init 2018-12-07 22:28:48 +04:00
ntfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
ocfs2 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
omfs don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
openpromfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
proc fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
pstore fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
qnx4 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
qnx6 fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
quota vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
ramfs don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
reiserfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
romfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
sdcardfs mm: kill vma flag VM_CAN_NONLINEAR 2020-11-29 16:11:40 +03:00
squashfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
sysfs stop passing nameidata to ->lookup() 2018-12-07 22:26:28 +04:00
sysv fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
ubifs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
udf fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
ufs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
xfs fs: push sync_filesystem() down to the file system's remount_fs() 2020-11-29 16:11:45 +03:00
yaffs2
aio.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
anon_inodes.c
attr.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
bad_inode.c don't pass nameidata to ->create() 2018-12-07 22:28:00 +04:00
binfmt_aout.c
binfmt_elf.c binfmt_elf: Don't clobber passed executable's file header 2016-10-26 23:15:28 +08:00
binfmt_elf_fdpic.c
binfmt_em86.c
binfmt_flat.c
binfmt_misc.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
binfmt_script.c
binfmt_som.c
bio-integrity.c
bio.c SCSI: sg: Fix user memory corruption when SG_IO is interrupted by a signal 2013-09-07 21:58:16 -07:00
block_dev.c writeback: Fix periodic writeback after fs mount 2013-07-28 16:26:08 -07:00
buffer.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
char_dev.c
compat.c vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
compat_binfmt_elf.c
compat_ioctl.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
dcache.c [O_TMPFILE] it's still short a few helpers, but infrastructure should be OK now... 2018-12-07 22:28:48 +04:00
dcookies.c
direct-io.c
drop_caches.c
eventfd.c
eventpoll.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
exec.c vfs: make path_openat take a struct filename pointer 2018-12-07 22:28:48 +04:00
fcntl.c vfs: add missing check for __O_TMPFILE in fcntl_init() 2018-12-07 22:28:48 +04:00
fhandle.c vfs: read file_handle only once in handle_to_path 2016-10-29 23:12:11 +08:00
fifo.c
file.c fs/file.c:fdtable: avoid triggering OOMs from alloc_fdmem 2014-02-22 10:32:45 -08:00
file_table.c get rid of s_files and files_lock 2016-03-21 09:17:55 +08:00
filesystems.c vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
fs-writeback.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
fs_struct.c sdcardfs: override umask on mkdir and create 2017-09-22 19:12:02 +03:00
generic_acl.c BACKPORT: posix_acl: Clear SGID bit when setting file permissions 2017-06-26 20:26:17 +03:00
inode.c allow the temp files created by open() to be linked to 2018-12-07 22:28:48 +04:00
internal.h vfs: make path_openat take a struct filename pointer 2018-12-07 22:28:48 +04:00
ioctl.c
ioprio.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
Kconfig Included sdcardfs source code for kernel 3.0 2017-09-22 19:11:56 +03:00
Kconfig.binfmt
libfs.c stop passing nameidata to ->lookup() 2018-12-07 22:26:28 +04:00
locks.c locks: allow __break_lease to sleep even when break_time is 0 2014-05-13 14:11:31 +02:00
Makefile Included sdcardfs source code for kernel 3.0 2017-09-22 19:11:56 +03:00
mbcache.c
mount.h proc: Usable inode numbers for the namespace file descriptors. 2015-07-13 11:18:01 -07:00
mpage.c
namei.c path_openat(): fix double fput() 2018-12-07 22:28:48 +04:00
namespace.c vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
no-block.c
open.c fs: Fix file mode for O_TMPFILE 2018-12-07 22:28:48 +04:00
pipe.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
pnode.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
pnode.h ANDROID: mnt: remount should propagate to slaves of slaves 2017-09-22 19:12:11 +03:00
posix_acl.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
proc_namespace.c vfs: Allow filesystems to access their private mount data 2017-09-22 19:12:06 +03:00
read_write.c
read_write.h
readdir.c kernel: Only expose su when daemon is running 2017-05-19 18:41:25 -06:00
select.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
seq_file.c fs/seq_file: Use vmalloc by default for allocations > PAGE_SIZE 2014-11-18 15:13:24 -08:00
signalfd.c
splice.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
stack.c
stat.c vfs: make O_PATH file descriptors usable for 'fstat()' 2020-11-22 01:21:34 +03:00
statfs.c vfs: allow O_PATH file descriptors for fstatfs() 2013-10-22 09:02:25 +01:00
super.c vmscan: remove obsolete shrink_control comment 2020-11-29 16:11:26 +03:00
sync.c fs/sync.c: make sync_file_range(2) use WB_SYNC_NONE writeback 2017-12-31 13:02:49 +03:00
timerfd.c timerfd: support CLOCK_BOOTTIME clock 2017-08-27 19:07:23 +03:00
utimes.c vfs: Add setattr2 for filesystems with per mount permissions 2017-09-22 19:12:07 +03:00
xattr.c
xattr_acl.c