ovl: Copy up meta inode data from lowest data inode
authorVivek Goyal <vgoyal@redhat.com>
Fri, 11 May 2018 15:49:30 +0000 (11:49 -0400)
committerMiklos Szeredi <mszeredi@redhat.com>
Fri, 20 Jul 2018 07:56:09 +0000 (09:56 +0200)
commit4f93b426ab3930952eca6c5c456c2223a3adcbf5
tree17fd2e4590d6c1c2823598cecca0e8700ab2d09b
parent9d3dfea3d35a3235f0f1e2ce719bb4f0b696caa2
ovl: Copy up meta inode data from lowest data inode

So far lower could not be a meta inode.  So whenever it was time to copy up
data of a meta inode, we could copy it up from top most lower dentry.

But now lower itself can be a metacopy inode.  That means data copy up
needs to take place from a data inode in metacopy inode chain.  Find lower
data inode in the chain and use that for data copy up.

Introduced a helper called ovl_path_lowerdata() to find the lower data
inode chain.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
fs/overlayfs/copy_up.c
fs/overlayfs/overlayfs.h
fs/overlayfs/util.c