[dm-devel] [PATCH] Don't add 'p' delimiter when you shouldn't

Phillip Susi psusi at ubuntu.com
Thu Feb 9 19:33:34 UTC 2012


Not heard anything back about this yet.  Does anyone have any comments
or care to merge it?

On 1/8/2012 10:08 PM, Phillip Susi wrote:
> The 'p' delimiter is supposed to be added when the base disk name
> ends in a digit.  This decision was based on the name given on the
> command line, not the canonical device name, so giving /dev/dm-0
> instead of /dev/mapper/foo triggered the digit test and added the
> 'p'.  Changed test to use the canonical name rather than the given
> name.
> 
> Index: b/kpartx/kpartx.c
> ===================================================================
> --- a/kpartx/kpartx.c
> +++ b/kpartx/kpartx.c
> @@ -310,12 +310,6 @@
>  		device = loopdev;
>  	}
>  
> -	if (delim == NULL) {
> -		delim = malloc(DELIM_SIZE);
> -		memset(delim, 0, DELIM_SIZE);
> -		set_delimiter(device, delim);
> -	}
> -
>  	off = find_devname_offset(device);
>  
>  	if (!loopdev) {
> @@ -331,6 +325,12 @@
>  	if (!mapname)
>  		mapname = device + off;
>  
> +	if (delim == NULL) {
> +		delim = malloc(DELIM_SIZE);
> +		memset(delim, 0, DELIM_SIZE);
> +		set_delimiter(mapname, delim);
> +	}
> +
>  	fd = open(device, O_RDONLY);
>  
>  	if (fd == -1) {
> 
> 
> 
> 
> --




More information about the dm-devel mailing list