Re: [PATCH] xfs: fix potential memory leak in mount option parsing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2/24/18 4:33 AM, Chengguang Xu wrote:
> When specifying string type mount option (e.g., logdev)
> several times in a mount, current option parsing may
> cause memory leak. Hence, call kfree for previous one
> in this case.
> 
> Signed-off-by: Chengguang Xu <cgxu519@xxxxxxxxxx>

IMHO multiple specifications of logdev or rtdev should not
be allowed; only one may be chosen, and specifying twice
should probably be considered and administrative error.

I'd rather see something that fails and cleans up properly
if either option is respecified.

Thanks,
-Eric

> ---
>  fs/xfs/xfs_super.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c
> index 7aba628..93588ea 100644
> --- a/fs/xfs/xfs_super.c
> +++ b/fs/xfs/xfs_super.c
> @@ -250,6 +250,7 @@ enum {
>  				return -EINVAL;
>  			break;
>  		case Opt_logdev:
> +			kfree(mp->m_logname);
>  			mp->m_logname = match_strdup(args);
>  			if (!mp->m_logname)
>  				return -ENOMEM;
> @@ -258,6 +259,7 @@ enum {
>  			xfs_warn(mp, "%s option not allowed on this system", p);
>  			return -EINVAL;
>  		case Opt_rtdev:
> +			kfree(mp->m_rtname);
>  			mp->m_rtname = match_strdup(args);
>  			if (!mp->m_rtname)
>  				return -ENOMEM;
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux