In order to avoid memleak need to clean all rbr_node once rbridge is
stopped

Signed-off-by: Ahmed Amamou <ah...@gandi.net>
Signed-off-by: Kamel Haddadou <ka...@gandi.net>
Signed-off-by: William Dauchy <will...@gandi.net>
---
 net/bridge/rbr.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/net/bridge/rbr.c b/net/bridge/rbr.c
index 718deb3..67842fe 100644
--- a/net/bridge/rbr.c
+++ b/net/bridge/rbr.c
@@ -13,6 +13,7 @@
  */
 #include "br_private.h"
 #include "rbr_private.h"
+static void rbr_del_all(struct rbr *rbr);
 
 static struct rbr *add_rbr(struct net_bridge *br)
 {
@@ -55,8 +56,10 @@ static void br_trill_stop(struct net_bridge *br)
        spin_unlock_bh(&br->lock);
        old = br->rbr;
        br->rbr = NULL;
-       if (likely(old))
+       if (likely(old)) {
+               rbr_del_all(old);
                kfree(old);
+       }
 }
 
 void br_trill_set_enabled(struct net_bridge *br, unsigned long val)
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to