Hi Jiri,
Sure. Done. I've sent the patch to the list.
Thanks
On Mon, May 4, 2020 at 6:40 AM Jiri Pirko <jiri(a)resnulli.us> wrote:
Mon, Apr 27, 2020 at 09:58:45PM CEST, pavel.contrib(a)gmail.com wrote:
>Hi Jiri,
>
>
>Thank you, for reviewing the patch.
>
>
>This patch has the following benefits:
>
> 1. We avoid changing settings of a link. Which prevents the kernel from
> sending multiply Netlink messages. That will benefit Netlink message
> listeners. They will not need to react to the Netlink messages.
> 2. It makes libteam faster. We don't need to use any syscalls and go
> deep into libteam functions when we don't need to. One simple check and
> libteam can avoid a lot of work.
>
>In our case, when we have hundreds of ports, and up to a hundred LAGs,
this
>patch saves us significant time.
Could you please add this info into the patch description?
Thanks!
>
>
>Please let me know if you have additional questions.
>
>
>Thanks
>
>On Fri, Apr 24, 2020 at 11:01 PM Jiri Pirko <jiri(a)resnulli.us> wrote:
>
>> Fri, Apr 17, 2020 at 07:43:35PM CEST, pavel.contrib(a)gmail.com wrote:
>> >Avoid setting the same mac address to a LAG port,
>> >if the LAG port already has the right one.
>>
>> What's the benefit added by this patch?
>>
>>
>> >
>> >Signed-off-by: Pavel Shirshov <pavel.contrib(a)gmail.com>
>> >---
>> > teamd/teamd.c | 9 ++++++++-
>> > 1 file changed, 8 insertions(+), 1 deletion(-)
>> >
>> >diff --git a/teamd/teamd.c b/teamd/teamd.c
>> >index 8cdc16d..f955b19 100644
>> >--- a/teamd/teamd.c
>> >+++ b/teamd/teamd.c
>> >@@ -837,7 +837,14 @@ static int teamd_set_hwaddr(struct teamd_context
>> *ctx)
>> > err = -EINVAL;
>> > goto free_hwaddr;
>> > }
>> >- err = team_hwaddr_set(ctx->th, ctx->ifindex, hwaddr,
hwaddr_len);
>> >+
>> >+ if (memcmp(hwaddr, ctx->hwaddr, hwaddr_len))
>> >+ err = team_hwaddr_set(ctx->th, ctx->ifindex, hwaddr,
>> hwaddr_len);
>> >+ else {
>> >+ err = 0;
>> >+ teamd_log_dbg(ctx, "Skip setting same hwaddr string:
>> \"%s\".", hwaddr_str);
>> >+ }
>> >+
>> > if (!err)
>> > ctx->hwaddr_explicit = true;
>> > free_hwaddr:
>> >--
>> >2.7.4
>> >
>>