tmp_suning_uos_patched/fs/overlayfs
Vivek Goyal 997336f2c3 ovl: Do not do metadata only copy-up for truncate operation
truncate should copy up full file (and not do metacopy only), otherwise it
will be broken.  For example, use truncate to increase size of a file so
that any read beyong existing size will return null bytes.  If we don't
copy up full file, then we end up opening lower file and read from it only
reads upto the old size (and not new size after truncate).  Hence to avoid
such situations, copy up data as well when file size changes.

So far it was being done by d_real(O_WRONLY) call in truncate() path.  Now
that patch has been reverted.  So force full copy up in ovl_setattr() if
size of file is changing.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
2018-07-20 09:56:17 +02:00
..
copy_up.c ovl: add helper to force data copy-up 2018-07-20 09:56:16 +02:00
dir.c ovl: Set redirect on upper inode when it is linked 2018-07-20 09:56:15 +02:00
export.c ovl: Modify ovl_lookup() and friends to lookup metacopy dentry 2018-07-20 09:56:09 +02:00
file.c ovl: Open file with data except for the case of fsync 2018-07-20 09:56:12 +02:00
inode.c ovl: Do not do metadata only copy-up for truncate operation 2018-07-20 09:56:17 +02:00
Kconfig ovl: Provide a mount option metacopy=on/off for metadata copyup 2018-07-20 09:56:06 +02:00
Makefile ovl: stack file ops 2018-07-18 15:44:41 +02:00
namei.c ovl: Check redirect on index as well 2018-07-20 09:56:16 +02:00
overlayfs.h ovl: add helper to force data copy-up 2018-07-20 09:56:16 +02:00
ovl_entry.h ovl: Store lower data inode in ovl_inode 2018-07-20 09:56:11 +02:00
readdir.c ovl: fix wrong use of impure dir cache in ovl_iterate() 2018-07-17 16:04:34 +02:00
super.c ovl: Do not expose metacopy only dentry from d_real() 2018-07-20 09:56:12 +02:00
util.c ovl: Check redirect on index as well 2018-07-20 09:56:16 +02:00