On Wed 27-10-21 22:34:41, Dongliang Mu wrote: > Since the commit c3d98ea08291 ("VFS: Don't use save/replace_mount_options > if not using generic_show_options") eliminates replace_mount_options > in reiserfs_remount, but does not handle the allocated new_opts, > it will cause memory leak in the reiserfs_remount. > > Because new_opts is useless in reiserfs_mount, so we fix this bug by > removing the useless new_opts in reiserfs_remount. > > Fixes: c3d98ea08291 ("VFS: Don't use save/replace_mount_options if not using generic_show_options") > Signed-off-by: Dongliang Mu <mudongliangabcd@xxxxxxxxx> Thanks. I've added the patch to my tree. Honza > --- > fs/reiserfs/super.c | 6 ------ > 1 file changed, 6 deletions(-) > > diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c > index 58481f8d63d5..f7b05c6b3dcf 100644 > --- a/fs/reiserfs/super.c > +++ b/fs/reiserfs/super.c > @@ -1437,7 +1437,6 @@ static int reiserfs_remount(struct super_block *s, int *mount_flags, char *arg) > unsigned long safe_mask = 0; > unsigned int commit_max_age = (unsigned int)-1; > struct reiserfs_journal *journal = SB_JOURNAL(s); > - char *new_opts; > int err; > char *qf_names[REISERFS_MAXQUOTAS]; > unsigned int qfmt = 0; > @@ -1445,10 +1444,6 @@ static int reiserfs_remount(struct super_block *s, int *mount_flags, char *arg) > int i; > #endif > > - new_opts = kstrdup(arg, GFP_KERNEL); > - if (arg && !new_opts) > - return -ENOMEM; > - > sync_filesystem(s); > reiserfs_write_lock(s); > > @@ -1599,7 +1594,6 @@ static int reiserfs_remount(struct super_block *s, int *mount_flags, char *arg) > out_err_unlock: > reiserfs_write_unlock(s); > out_err: > - kfree(new_opts); > return err; > } > > -- > 2.25.1 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR