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
>