From 7ab8b1763fd84ff4e7263ed7f5c728e4cb3f364a Mon Sep 17 00:00:00 2001 From: Miklos Szeredi Date: Tue, 4 Jul 2017 22:03:18 +0200 Subject: ovl: base tmpfile in workdir too Signed-off-by: Miklos Szeredi --- fs/overlayfs/copy_up.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'fs/overlayfs') diff --git a/fs/overlayfs/copy_up.c b/fs/overlayfs/copy_up.c index 81b9a44916a0..1264f2434047 100644 --- a/fs/overlayfs/copy_up.c +++ b/fs/overlayfs/copy_up.c @@ -345,8 +345,7 @@ static int ovl_install_temp(struct dentry *workdir, struct dentry *upperdir, return err; } -static int ovl_get_tmpfile(struct dentry *workdir, struct dentry *upperdir, - struct dentry *dentry, +static int ovl_get_tmpfile(struct dentry *workdir, struct dentry *dentry, struct kstat *stat, const char *link, bool tmpfile, struct dentry **tempp) { @@ -369,7 +368,7 @@ static int ovl_get_tmpfile(struct dentry *workdir, struct dentry *upperdir, old_creds = override_creds(new_creds); if (tmpfile) { - temp = ovl_do_tmpfile(upperdir, stat->mode); + temp = ovl_do_tmpfile(workdir, stat->mode); if (IS_ERR(temp)) goto temp_err; } else { @@ -453,8 +452,7 @@ static int ovl_copy_up_locked(struct dentry *workdir, struct dentry *upperdir, struct dentry *temp = NULL; int err; - err = ovl_get_tmpfile(workdir, upperdir, dentry, stat, link, tmpfile, - &temp); + err = ovl_get_tmpfile(workdir, dentry, stat, link, tmpfile, &temp); if (err) goto out; -- cgit v1.2.3-59-g8ed1b