> On Mar 5, 2025, at 10:01, Liu Ye <liuye@xxxxxxxxxx> wrote: > > After calling debugfs_change_name function, the return value should be > checked and the old name restored. If debugfs_change_name fails, the new > name memory should be freed. Seems it is not a big problem, no memory leak at least. The effect is that the shrinker->name is not consistent with the name displayed in debugfs. Right? But the improvement LGTM. So: Reviewed-by: Muchun Song <muchun.song@xxxxxxxxx> Thanks. > > Signed-off-by: Liu Ye <liuye@xxxxxxxxxx> > --- > mm/shrinker_debug.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/mm/shrinker_debug.c b/mm/shrinker_debug.c > index 794bd433cce0..20eaee3e97f7 100644 > --- a/mm/shrinker_debug.c > +++ b/mm/shrinker_debug.c > @@ -214,10 +214,14 @@ int shrinker_debugfs_rename(struct shrinker *shrinker, const char *fmt, ...) > ret = debugfs_change_name(shrinker->debugfs_entry, "%s-%d", > shrinker->name, shrinker->debugfs_id); > > + if (ret) { > + shrinker->name = old; > + kfree_const(new); > + } else { > + kfree_const(old); > + } > mutex_unlock(&shrinker_mutex); > > - kfree_const(old); > - > return ret; > } > EXPORT_SYMBOL(shrinker_debugfs_rename); > -- > 2.25.1 >