--- zzzz-none-000/linux-4.1.38/fs/overlayfs/copy_up.c 2017-01-18 18:48:06.000000000 +0000 +++ bcm63-7582-715/linux-4.1.38/fs/overlayfs/copy_up.c 2020-11-25 10:06:48.000000000 +0000 @@ -311,7 +311,9 @@ struct dentry *upperdir; struct dentry *upperdentry; const struct cred *old_cred; +#if !defined(CONFIG_BCM_KF_OVERLAYFS_BACKPORTS) struct cred *override_cred; +#endif char *link = NULL; if (WARN_ON(!workdir)) @@ -330,6 +332,9 @@ return PTR_ERR(link); } +#if defined(CONFIG_BCM_KF_OVERLAYFS_BACKPORTS) + old_cred = ovl_override_creds(dentry->d_sb); +#else err = -ENOMEM; override_cred = prepare_creds(); if (!override_cred) @@ -352,6 +357,7 @@ cap_raise(override_cred->cap_effective, CAP_CHOWN); cap_raise(override_cred->cap_effective, CAP_MKNOD); old_cred = override_creds(override_cred); +#endif err = -EIO; if (lock_rename(workdir, upperdir) != NULL) { @@ -381,9 +387,10 @@ unlock_rename(workdir, upperdir); out_put_cred: revert_creds(old_cred); +#if !defined(CONFIG_BCM_KF_OVERLAYFS_BACKPORTS) put_cred(override_cred); - out_free_link: +#endif if (link) free_page((unsigned long) link);