Avoid setting the same mac address to a LAG port,
if the LAG port already has the right one.
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
Show replies by date