summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLou Berger <lberger@labn.net>2020-11-03 10:38:03 -0500
committerGitHub <noreply@github.com>2020-11-03 10:38:03 -0500
commitaeef9fceb43b4f3e021d33c63108e642fe0e4816 (patch)
treed10a8b7dd9a5dd574705f368ec39e9fb7ba8d72e
parent7c62dc76d4e78cce352d511fea89f908a9ee30ce (diff)
parent1ba8b2a8bf5d44a7423486a2f69c4f9866ba46d9 (diff)
Merge pull request #7438 from donaldsharp/multipath_no_alloc
bgpd: Multipath is always being allocated
-rw-r--r--bgpd/bgp_mpath.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/bgpd/bgp_mpath.c b/bgpd/bgp_mpath.c
index b7f516eaf7..ff5cfe05fb 100644
--- a/bgpd/bgp_mpath.c
+++ b/bgpd/bgp_mpath.c
@@ -412,8 +412,9 @@ static void bgp_path_info_mpath_lb_update(struct bgp_path_info *path, bool set,
struct bgp_path_info_mpath *mpath;
if ((mpath = path->mpath) == NULL) {
- if (!set)
+ if (!set || (cum_bw == 0 && !all_paths_lb))
return;
+
mpath = bgp_path_info_mpath_get(path);
if (!mpath)
return;