> > +static struct dentry *ovl_get_tmpfile(struct ovl_copy_up_ctx *c) > > +{ > > + int err; > > + struct dentry *temp; > > + const struct cred *old_creds = NULL; > > + struct cred *new_creds = NULL; > > + > > + err = security_inode_copy_up(c->dentry, &new_creds); > > + temp = ERR_PTR(err); > > + if (err < 0) > > + goto out; > > + > > + if (new_creds) > > + old_creds = override_creds(new_creds); > > + > > + temp = ovl_do_tmpfile(c->destdir, c->stat.mode); > > This changes c->workdir to c->destdir. Shouldn't normally matter, but... > > I changed this back, and we can discuss the merits of this change in > the context of a separate patch. > Indeed. I wrote about this change the cover of the first posting, but it got lost in cover of 2nd posting. I thought that using c->workdir was due to an oversight I didn't realize that it had merits or that it mattered at all. I don't mind either way. Other changes sound good. Thanks, Amir.