All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] multipath: rlookup WWIDs with spaces by alias
@ 2011-11-12  4:54 Benjamin Marzinski
  2011-11-12 10:18 ` Christophe Varoqui
  2011-11-14  9:17 ` Hannes Reinecke
  0 siblings, 2 replies; 5+ messages in thread
From: Benjamin Marzinski @ 2011-11-12  4:54 UTC (permalink / raw)
  To: device-mapper development; +Cc: Christophe Varoqui

If a WWID contained spaces, the rlookup code wasn't able to look it up
by its user_friendly_name, since the code was only reading the wwid till
the first space.  It now reads to the end of the line.

Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
---
 libmultipath/alias.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: multipath-tools-110412/libmultipath/alias.c
===================================================================
--- multipath-tools-110412.orig/libmultipath/alias.c
+++ multipath-tools-110412/libmultipath/alias.c
@@ -288,7 +288,7 @@ rlookup_binding(FILE *f, char **map_wwid
 		curr_id = scan_devname(alias, NULL); /* TBD: Why this call? */
 		if (curr_id >= id)
 			id = curr_id + 1;
-		wwid = strtok(NULL, " \t");
+		wwid = strtok(NULL, "");
 		if (!wwid){
 			condlog(3,
 				"Ignoring malformed line %u in bindings file",

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] multipath: rlookup WWIDs with spaces by alias
  2011-11-12  4:54 [PATCH] multipath: rlookup WWIDs with spaces by alias Benjamin Marzinski
@ 2011-11-12 10:18 ` Christophe Varoqui
  2011-11-14  9:17 ` Hannes Reinecke
  1 sibling, 0 replies; 5+ messages in thread
From: Christophe Varoqui @ 2011-11-12 10:18 UTC (permalink / raw)
  To: Benjamin Marzinski; +Cc: device-mapper development

On ven., 2011-11-11 at 22:54 -0600, Benjamin Marzinski wrote:
> If a WWID contained spaces, the rlookup code wasn't able to look it up
> by its user_friendly_name, since the code was only reading the wwid till
> the first space.  It now reads to the end of the line.
> 
Applied

> Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
> ---
>  libmultipath/alias.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> Index: multipath-tools-110412/libmultipath/alias.c
> ===================================================================
> --- multipath-tools-110412.orig/libmultipath/alias.c
> +++ multipath-tools-110412/libmultipath/alias.c
> @@ -288,7 +288,7 @@ rlookup_binding(FILE *f, char **map_wwid
>  		curr_id = scan_devname(alias, NULL); /* TBD: Why this call? */
>  		if (curr_id >= id)
>  			id = curr_id + 1;
> -		wwid = strtok(NULL, " \t");
> +		wwid = strtok(NULL, "");
>  		if (!wwid){
>  			condlog(3,
>  				"Ignoring malformed line %u in bindings file",

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] multipath: rlookup WWIDs with spaces by alias
  2011-11-12  4:54 [PATCH] multipath: rlookup WWIDs with spaces by alias Benjamin Marzinski
  2011-11-12 10:18 ` Christophe Varoqui
@ 2011-11-14  9:17 ` Hannes Reinecke
  2011-11-14 18:34   ` Benjamin Marzinski
  1 sibling, 1 reply; 5+ messages in thread
From: Hannes Reinecke @ 2011-11-14  9:17 UTC (permalink / raw)
  To: device-mapper development; +Cc: Christophe Varoqui

On 11/12/2011 05:54 AM, Benjamin Marzinski wrote:
> If a WWID contained spaces, the rlookup code wasn't able to look it up
> by its user_friendly_name, since the code was only reading the wwid till
> the first space.  It now reads to the end of the line.
>
> Signed-off-by: Benjamin Marzinski<bmarzins@redhat.com>
> ---
>   libmultipath/alias.c |    2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> Index: multipath-tools-110412/libmultipath/alias.c
> ===================================================================
> --- multipath-tools-110412.orig/libmultipath/alias.c
> +++ multipath-tools-110412/libmultipath/alias.c
> @@ -288,7 +288,7 @@ rlookup_binding(FILE *f, char **map_wwid
>   		curr_id = scan_devname(alias, NULL); /* TBD: Why this call? */
>   		if (curr_id>= id)
>   			id = curr_id + 1;
> -		wwid = strtok(NULL, " \t");
> +		wwid = strtok(NULL, "");
>   		if (!wwid){
>   			condlog(3,
>   				"Ignoring malformed line %u in bindings file",
>
Please, don't.

We keep on changing this one back and forth about every year.
(The original patch was by you, back in 2008. Then I changed it back 
because it breaks compability with existing configuration files. Now you 
go and change it _again_).

The real problem here is

'If the WWID contains spaces'

The WWID _never_ should contain spaces. I pretty certain we can't handle 
WWID with spaces in the bindings file; eg we don't have any quotation 
mechanism implemented.
So can't we just settle on 'The WWID must not contain spaces' ?

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare@suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] multipath: rlookup WWIDs with spaces by alias
  2011-11-14  9:17 ` Hannes Reinecke
@ 2011-11-14 18:34   ` Benjamin Marzinski
  2011-11-15 20:41     ` Christophe Varoqui
  0 siblings, 1 reply; 5+ messages in thread
From: Benjamin Marzinski @ 2011-11-14 18:34 UTC (permalink / raw)
  To: Hannes Reinecke; +Cc: device-mapper development, Christophe Varoqui

On Mon, Nov 14, 2011 at 10:17:54AM +0100, Hannes Reinecke wrote:
> On 11/12/2011 05:54 AM, Benjamin Marzinski wrote:
>> If a WWID contained spaces, the rlookup code wasn't able to look it up
>> by its user_friendly_name, since the code was only reading the wwid till
>> the first space.  It now reads to the end of the line.
>>
>> Signed-off-by: Benjamin Marzinski<bmarzins@redhat.com>
>> ---
>>   libmultipath/alias.c |    2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> Index: multipath-tools-110412/libmultipath/alias.c
>> ===================================================================
>> --- multipath-tools-110412.orig/libmultipath/alias.c
>> +++ multipath-tools-110412/libmultipath/alias.c
>> @@ -288,7 +288,7 @@ rlookup_binding(FILE *f, char **map_wwid
>>   		curr_id = scan_devname(alias, NULL); /* TBD: Why this call? */
>>   		if (curr_id>= id)
>>   			id = curr_id + 1;
>> -		wwid = strtok(NULL, " \t");
>> +		wwid = strtok(NULL, "");
>>   		if (!wwid){
>>   			condlog(3,
>>   				"Ignoring malformed line %u in bindings file",
>>
> Please, don't.
>
> We keep on changing this one back and forth about every year.
> (The original patch was by you, back in 2008. Then I changed it back 
> because it breaks compability with existing configuration files. Now you go 
> and change it _again_).
>
> The real problem here is
>
> 'If the WWID contains spaces'
>
> The WWID _never_ should contain spaces. I pretty certain we can't handle 
> WWID with spaces in the bindings file; eg we don't have any quotation 
> mechanism implemented.
> So can't we just settle on 'The WWID must not contain spaces' ?

I suppose that since we're using the "--replace-whitespace" option to
scsi_id by default, I'm fine with not including this patch.

-Ben

>
> Cheers,
>
> Hannes
> -- 
> Dr. Hannes Reinecke		      zSeries & Storage
> hare@suse.de			      +49 911 74053 688
> SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
> GF: Markus Rex, HRB 16746 (AG Nürnberg)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] multipath: rlookup WWIDs with spaces by alias
  2011-11-14 18:34   ` Benjamin Marzinski
@ 2011-11-15 20:41     ` Christophe Varoqui
  0 siblings, 0 replies; 5+ messages in thread
From: Christophe Varoqui @ 2011-11-15 20:41 UTC (permalink / raw)
  To: Benjamin Marzinski; +Cc: device-mapper development, Christophe Varoqui

On lun., 2011-11-14 at 12:34 -0600, Benjamin Marzinski wrote:
> On Mon, Nov 14, 2011 at 10:17:54AM +0100, Hannes Reinecke wrote:
> > On 11/12/2011 05:54 AM, Benjamin Marzinski wrote:
> >> If a WWID contained spaces, the rlookup code wasn't able to look it up
> >> by its user_friendly_name, since the code was only reading the wwid till
> >> the first space.  It now reads to the end of the line.
> >>
> >> Signed-off-by: Benjamin Marzinski<bmarzins@redhat.com>
> >> ---
> >>   libmultipath/alias.c |    2 +-
> >>   1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> Index: multipath-tools-110412/libmultipath/alias.c
> >> ===================================================================
> >> --- multipath-tools-110412.orig/libmultipath/alias.c
> >> +++ multipath-tools-110412/libmultipath/alias.c
> >> @@ -288,7 +288,7 @@ rlookup_binding(FILE *f, char **map_wwid
> >>   		curr_id = scan_devname(alias, NULL); /* TBD: Why this call? */
> >>   		if (curr_id>= id)
> >>   			id = curr_id + 1;
> >> -		wwid = strtok(NULL, " \t");
> >> +		wwid = strtok(NULL, "");
> >>   		if (!wwid){
> >>   			condlog(3,
> >>   				"Ignoring malformed line %u in bindings file",
> >>
> > Please, don't.
> >
> > We keep on changing this one back and forth about every year.
> > (The original patch was by you, back in 2008. Then I changed it back 
> > because it breaks compability with existing configuration files. Now you go 
> > and change it _again_).
> >
> > The real problem here is
> >
> > 'If the WWID contains spaces'
> >
> > The WWID _never_ should contain spaces. I pretty certain we can't handle 
> > WWID with spaces in the bindings file; eg we don't have any quotation 
> > mechanism implemented.
> > So can't we just settle on 'The WWID must not contain spaces' ?
> 
> I suppose that since we're using the "--replace-whitespace" option to
> scsi_id by default, I'm fine with not including this patch.
> 
Reverted.

-- 
Christophe Varoqui
OpenSVC - Tools to scale
http://www.opensvc.com/

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2011-11-15 20:41 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-12  4:54 [PATCH] multipath: rlookup WWIDs with spaces by alias Benjamin Marzinski
2011-11-12 10:18 ` Christophe Varoqui
2011-11-14  9:17 ` Hannes Reinecke
2011-11-14 18:34   ` Benjamin Marzinski
2011-11-15 20:41     ` Christophe Varoqui

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.