[Ocfs2-tools-devel] [PATCH 14/14] ocfs2-tools: mount not showing fully resolved path

Joseph Qi joseph.qi at huawei.com
Wed Apr 13 01:12:09 PDT 2016


Hi Junxiao,

On 2016/4/1 11:10, Junxiao Bi wrote:
> From: Srinivas Eeda <srinivas.eeda at oracle.com>
> 
> In /etc/mtab, device path is not fully resolved because fgets return code
> checked incorrectly. Device path is getting set to /dev/dm-X instead of
> /dev/mapper/xxx.
> 
> Signed-off-by: Srinivas Eeda <srinivas.eeda at oracle.com>
> Reviewed-by: Junxiao Bi <junxiao.bi at oracle.com>
> ---
>  mount.ocfs2/sundries.c |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/mount.ocfs2/sundries.c b/mount.ocfs2/sundries.c
> index 2e1b95a24214..c4e9ccd86e23 100644
> --- a/mount.ocfs2/sundries.c
> +++ b/mount.ocfs2/sundries.c
> @@ -235,7 +235,7 @@ canonicalize_dm_name(const char *ptname)
>  	FILE	*f;
>  	size_t	sz;
>  	char	path[256], name[256], *res = NULL;
> -	int	err;
> +	char	*ret;
>  
>  	snprintf(path, sizeof(path), "/sys/block/%s/dm/name", ptname);
>  	f = fopen(path, "r");
> @@ -243,9 +243,9 @@ canonicalize_dm_name(const char *ptname)
>  		return NULL;
>  
>  	/* read "<name>\n" from sysfs */
> -	err = fgets(name, sizeof(name), f);
> +	ret = fgets(name, sizeof(name), f);
>  	sz = strlen(name);
> -	if (!err && sz > 1) {
> +	if (ret && sz > 1) {
Should it be "!ret && sz > 1"?
I have also fixed this issue in my patchset "fix build warnings".
https://oss.oracle.com/pipermail/ocfs2-tools-devel/2016-March/004337.html
And now it is queued in my github repo and I am planning to push it to
Mark's repo this week.

Thanks,
Joseph
>  		name[sz - 1] = '\0';
>  		snprintf(path, sizeof(path), "/dev/mapper/%s", name);
>  		res = strdup(path);
> 





More information about the Ocfs2-tools-devel mailing list