linux/fs/nfsd
Amir Goldstein a725356b66 vfs: swap names of {do,vfs}_clone_file_range()
Commit 031a072a0b ("vfs: call vfs_clone_file_range() under freeze
protection") created a wrapper do_clone_file_range() around
vfs_clone_file_range() moving the freeze protection to former, so
overlayfs could call the latter.

The more common vfs practice is to call do_xxx helpers from vfs_xxx
helpers, where freeze protecction is taken in the vfs_xxx helper, so
this anomality could be a source of confusion.

It seems that commit 8ede205541 ("ovl: add reflink/copyfile/dedup
support") may have fallen a victim to this confusion -
ovl_clone_file_range() calls the vfs_clone_file_range() helper in the
hope of getting freeze protection on upper fs, but in fact results in
overlayfs allowing to bypass upper fs freeze protection.

Swap the names of the two helpers to conform to common vfs practice
and call the correct helpers from overlayfs and nfsd.

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
2018-09-24 10:54:01 +02:00
..
Kconfig
Makefile
acl.h
auth.c
auth.h
blocklayout.c vfs/y2038: inode timestamps conversion to timespec64 2018-06-15 07:31:07 +09:00
blocklayoutxdr.c
blocklayoutxdr.h
cache.h nfsd: Do not refuse to serve out of cache 2018-05-11 15:48:57 -04:00
current_stateid.h
export.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
export.h
fault_inject.c
flexfilelayout.c
flexfilelayoutxdr.c
flexfilelayoutxdr.h
idmap.h
lockd.c
netns.h nfsd4: extend reclaim period for reclaiming clients 2018-06-17 10:20:47 -04:00
nfs2acl.c
nfs3acl.c
nfs3proc.c NFSD: Handle full-length symlinks 2018-08-09 16:11:21 -04:00
nfs3xdr.c vfs: change inode times to use struct timespec64 2018-06-05 16:57:31 -07:00
nfs4acl.c
nfs4callback.c nfsd: Remove callback_cred 2018-08-22 18:32:07 -04:00
nfs4idmap.c
nfs4layouts.c nfsd: don't advertise a SCSI layout for an unsupported request_queue 2018-06-19 10:12:31 -04:00
nfs4proc.c NFSD: Refactor the generic write vector fill helper 2018-08-09 16:11:21 -04:00
nfs4recover.c treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
nfs4state.c nfsd: Remove callback_cred 2018-08-22 18:32:07 -04:00
nfs4xdr.c fs/nfsd: Delete invalid assignment statements in nfsd4_decode_exchange_id 2018-08-09 16:11:21 -04:00
nfscache.c - Error path bug fix for overflow tests (Dan) 2018-06-12 18:28:00 -07:00
nfsctl.c nfsd: constify write_op[] 2018-08-09 16:11:21 -04:00
nfsd.h nfsd4: support change_attr_type attribute 2018-06-17 10:41:31 -04:00
nfsfh.c nfsd: use true and false for boolean values 2018-08-09 16:11:21 -04:00
nfsfh.h
nfsproc.c NFSD: Handle full-length symlinks 2018-08-09 16:11:21 -04:00
nfssvc.c
nfsxdr.c vfs: change inode times to use struct timespec64 2018-06-05 16:57:31 -07:00
pnfs.h
state.h nfsd: Remove callback_cred 2018-08-22 18:32:07 -04:00
stats.c
stats.h
trace.c
trace.h nfsd: Trace NFSv4 COMPOUND execution 2018-04-03 15:08:15 -04:00
vfs.c vfs: swap names of {do,vfs}_clone_file_range() 2018-09-24 10:54:01 +02:00
vfs.h nfsd: Add I/O trace points in the NFSv4 read proc 2018-04-03 15:08:15 -04:00
xdr.h NFSD: Clean up legacy NFS SYMLINK argument XDR decoders 2018-04-03 15:08:16 -04:00
xdr3.h NFSD: Clean up legacy NFS SYMLINK argument XDR decoders 2018-04-03 15:08:16 -04:00
xdr4.h nfsd: fix incorrect umasks 2018-04-03 16:27:08 -04:00
xdr4cb.h