From: Roopa Prabhu <[email protected]>
fix dereference of nexthop group in fdb nexthop group
update validation path.
Fixes: 1274e1cc4226 ("vxlan: ecmp support for mac fdb entries")
Reported-by: Ido Schimmel <[email protected]>
Suggested-by: Ido Schimmel <[email protected]>
Signed-off-by: Roopa Prabhu <[email protected]>
---
drivers/net/vxlan.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index 39bc10a..ea7af03 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -881,13 +881,13 @@ static int vxlan_fdb_nh_update(struct vxlan_dev *vxlan,
struct vxlan_fdb *fdb,
goto err_inval;
}
- if (!nh->is_group || !nh->nh_grp->mpath) {
+ nhg = rtnl_dereference(nh->nh_grp);
+ if (!nh->is_group || !nhg->mpath) {
NL_SET_ERR_MSG(extack, "Nexthop is not a multipath
group");
goto err_inval;
}
/* check nexthop group family */
- nhg = rtnl_dereference(nh->nh_grp);
switch (vxlan->default_dst.remote_ip.sa.sa_family) {
case AF_INET:
if (!nhg->has_v4) {
--
2.1.4