]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - net/bridge/br_mdb.c
bridge: mdb: fix leak on complete_info ptr on fail path
[karo-tx-linux.git] / net / bridge / br_mdb.c
index 09dcdb9c0f3ce42255d6c30d6e1f15debde609d4..a0b11e7d67d9ad6857f394a8a71b1cd2ce244eb7 100644 (file)
@@ -323,7 +323,8 @@ static void __br_mdb_notify(struct net_device *dev, struct net_bridge_port *p,
                        __mdb_entry_to_br_ip(entry, &complete_info->ip);
                        mdb.obj.complete_priv = complete_info;
                        mdb.obj.complete = br_mdb_complete;
-                       switchdev_port_obj_add(port_dev, &mdb.obj);
+                       if (switchdev_port_obj_add(port_dev, &mdb.obj))
+                               kfree(complete_info);
                }
        } else if (port_dev && type == RTM_DELMDB) {
                switchdev_port_obj_del(port_dev, &mdb.obj);