Message ID | 20240822012523.141846-17-vinicius.gomes@intel.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | overlayfs: Optimize override/revert creds | expand |
On Thu, 22 Aug 2024 at 03:25, Vinicius Costa Gomes <vinicius.gomes@intel.com> wrote: > > Remove the declaration of this unsafe helper. > > As the GUARD() helper guarantees that the cleanup will run, it is less > error prone. This statement is somewhat dubious. I suggest that unless and until the goto issue can be fixed the conversion to guards is postponed. Thanks, Miklos
Miklos Szeredi <miklos@szeredi.hu> writes: > On Thu, 22 Aug 2024 at 03:25, Vinicius Costa Gomes > <vinicius.gomes@intel.com> wrote: >> >> Remove the declaration of this unsafe helper. >> >> As the GUARD() helper guarantees that the cleanup will run, it is less >> error prone. > > This statement is somewhat dubious. > > I suggest that unless and until the goto issue can be fixed the > conversion to guards is postponed. That's a good point. I just want to point out that the issue is only with the combination of the "plain" (not scoped) GUARD() statements and 'goto'. But I would be happy to postpone that, if the trouble is not worth it. As all the performance gains come from the conversion to the _light() helpers. > > Thanks, > Miklos Cheers,
diff --git a/fs/overlayfs/overlayfs.h b/fs/overlayfs/overlayfs.h index 557d8c4e3a01..0bfe35da4b7b 100644 --- a/fs/overlayfs/overlayfs.h +++ b/fs/overlayfs/overlayfs.h @@ -429,7 +429,6 @@ int ovl_want_write(struct dentry *dentry); void ovl_drop_write(struct dentry *dentry); struct dentry *ovl_workdir(struct dentry *dentry); const struct cred *ovl_override_creds(struct super_block *sb); -const struct cred *ovl_override_creds_light(struct super_block *sb); static inline const struct cred *ovl_creds(struct super_block *sb) { diff --git a/fs/overlayfs/util.c b/fs/overlayfs/util.c index 77b8d01829a4..fafd8b709f64 100644 --- a/fs/overlayfs/util.c +++ b/fs/overlayfs/util.c @@ -68,13 +68,6 @@ const struct cred *ovl_override_creds(struct super_block *sb) return override_creds(ofs->creator_cred); } -const struct cred *ovl_override_creds_light(struct super_block *sb) -{ - struct ovl_fs *ofs = OVL_FS(sb); - - return override_creds_light(ofs->creator_cred); -} - /* * Check if underlying fs supports file handles and try to determine encoding * type, in order to deduce maximum inode number used by fs.
Remove the declaration of this unsafe helper. As the GUARD() helper guarantees that the cleanup will run, it is less error prone. Future usages should either use the GUARD helpers or the non "light" versions. Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com> --- fs/overlayfs/overlayfs.h | 1 - fs/overlayfs/util.c | 7 ------- 2 files changed, 8 deletions(-)