On Mon, Mar 22, 2021 at 02:25:44PM +0200, Amir Goldstein wrote: > On Mon, Mar 22, 2021 at 2:18 PM Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > > > > Hello Amir Goldstein, > > > > The patch aa3ff3c152ff: "ovl: copy up of disconnected dentries" from > > Oct 15, 2017, leads to the following static checker warning: > > Heh! that's fashionably late :) > ;) > > > > fs/overlayfs/copy_up.c:972 ovl_copy_up_flags() > > warn: 'old_cred' not released on lines: 944. > > > > fs/overlayfs/copy_up.c > > 932 static int ovl_copy_up_flags(struct dentry *dentry, int flags) > > 933 { > > 934 int err = 0; > > 935 const struct cred *old_cred = ovl_override_creds(dentry->d_sb); > > 936 bool disconnected = (dentry->d_flags & DCACHE_DISCONNECTED); > > 937 > > 938 /* > > 939 * With NFS export, copy up can get called for a disconnected non-dir. > > 940 * In this case, we will copy up lower inode to index dir without > > 941 * linking it to upper dir. > > 942 */ > > 943 if (WARN_ON(disconnected && d_is_dir(dentry))) > > 944 return -EIO; > > > > Should this call revert_creds(old_cred); before returning? > > Yes. Here's a simple fix, care to post it? Sure. I'm always happy to take credit for your work. I'll send it tomorrow. regards, dan carpenter