]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ovl: stack file ops
authorMiklos Szeredi <mszeredi@redhat.com>
Wed, 18 Jul 2018 13:44:41 +0000 (15:44 +0200)
committerMiklos Szeredi <mszeredi@redhat.com>
Wed, 18 Jul 2018 13:44:41 +0000 (15:44 +0200)
commitd1d04ef8572bc8c22265057bd3d5a79f223f8f52
tree1271b2ebd9542e0070b0b3830b0bad17c76ca4ea
parente8c985bace1351c5f2d7a6f0d8ff3e677b58abb5
ovl: stack file ops

Implement file operations on a regular overlay file.  The underlying file
is opened separately and cached in ->private_data.

It might be worth making an exception for such files when accounting in
nr_file to confirm to userspace expectations.  We are only adding a small
overhead (248bytes for the struct file) since the real inode and dentry are
pinned by overlayfs anyway.

This patch doesn't have any effect, since the vfs will use d_real() to find
the real underlying file to open.  The patch at the end of the series will
actually enable this functionality.

AV: make it use open_with_fake_path(), don't mess with override_creds

SzM: still need to mess with override_creds() until no fs uses
current_cred() in their open method.

Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/overlayfs/Makefile
fs/overlayfs/file.c [new file with mode: 0644]
fs/overlayfs/inode.c
fs/overlayfs/overlayfs.h