Subject: Re: [PATCH net 1/3] bonding:record primary when modify it via sysfs

From: Nicolas de Pesloüan<[email-masked]>
Date: Mon, 11 Jun 2012 21:38:32 +0200

Le 11/06/2012 11:00, Weiping Pan a écrit :
> If we modify primary via sysfs and it is not a valid slave,
> we should record it for future use, and this behavior is the same with
> bond_check_params().
>
> Signed-off-by: Weiping Pan<[email-masked]>
> ---
>   drivers/net/bonding/bond_sysfs.c |    8 ++++++--
>   1 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/bonding/bond_sysfs.c b/drivers/net/bonding/bond_sysfs.c
> index aef42f0..485bedb 100644
> --- a/drivers/net/bonding/bond_sysfs.c
> +++ b/drivers/net/bonding/bond_sysfs.c
> @@ -1082,8 +1082,12 @@ static ssize_t bonding_store_primary(struct device *d,
>   		}
>   	}
>
> -	pr_info("%s: Unable to set %.*s as primary slave.\n",
> -		bond->dev->name, (int)strlen(buf) - 1, buf);
> +	strncpy(bond->params.primary, ifname, IFNAMSIZ);
> +	bond->params.primary[IFNAMSIZ - 1] = 0;
> +
> +	pr_info("%s: Recording %s as primary, "
> +		"but it has not been enslaved to %s yet.\n",
> +		bond->dev->name, ifname, bond->dev->name);
>   out:
>   	write_unlock_bh(&bond->curr_slave_lock);
>   	read_unlock(&bond->lock);

I like this one, because it tend to relax the current constraints one should respect on the order to 
write into sysfs to setup bonding.

May I suggest we have a better info message, suggesting there might have a typo on the name of the 
primary ?

 > +	pr_info("%s: Recording %s as primary, "
 > +		"but it has not been enslaved to %s yet. Possible typo?\n",
 > +		bond->dev->name, ifname, bond->dev->name);

Except from this cosmetic,

Acked-by: Nicolas de Pesloüan <[email-masked]>

	Nicolas.