[dm-devel] [PATCH] hwe_regmatch: match error

Hannes Reinecke hare at suse.de
Fri Oct 14 06:00:56 UTC 2016


On 10/14/2016 04:03 AM, huang.wei56 at zte.com.cn wrote:
> From: "wei.huang" <huang.wei56 at zte.com.cn>
> 
> Problem:
> when we configure a device like vendor, product, revision all null in multipath.conf, hwe_regmatch always return 0.
> 
> Reasons:
> \!hwe2->vendor, \!hwe2->product and \!hwe2->revision are all true.
> 
> Signed-off-by: wei.huang <huang.wei56 at zte.com.cn>
> ---
>  libmultipath/config.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/libmultipath/config.c b/libmultipath/config.c
> index a48b8af..d99cd75 100644
> --- a/libmultipath/config.c
> +++ b/libmultipath/config.c
> @@ -80,7 +80,8 @@ hwe_regmatch (struct hwentry *hwe1, struct hwentry *hwe2)
>  	    regcomp(&rre, hwe1->revision, REG_EXTENDED|REG_NOSUB))
>  		goto out_pre;
>  
> -	if ((!hwe1->vendor || !hwe2->vendor ||
> +	if ((hwe2->vendor || hwe2->product || hwe2->revision) &&
> +	    (!hwe1->vendor || !hwe2->vendor ||
>  	     !regexec(&vre, hwe2->vendor, 0, NULL, 0)) &&
>  	    (!hwe1->product || !hwe2->product ||
>  	     !regexec(&pre, hwe2->product, 0, NULL, 0)) &&
> 
Good point.

Reviewed-by: Hannes Reinecke <hare at suse.com>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		   Teamlead Storage & Networking
hare at suse.de			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)




More information about the dm-devel mailing list