OpenVZ Forum


Home » Mailing lists » Devel » [PATCH][BRIDGE] Lost call to br_fdb_fini() in br_init() error path
[PATCH][BRIDGE] Lost call to br_fdb_fini() in br_init() error path [message #23828] Tue, 27 November 2007 14:39 Go to previous message
Pavel Emelianov is currently offline  Pavel Emelianov
Messages: 1149
Registered: September 2006
Senior Member
In case the br_netfilter_init() (or any subsequent call) 
fails, the br_fdb_fini() must be called to free the allocated
in br_fdb_init() br_fdb_cache kmem cache.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>

---

diff --git a/net/bridge/br.c b/net/bridge/br.c
index 93867bb..a901828 100644
--- a/net/bridge/br.c
+++ b/net/bridge/br.c
@@ -39,7 +39,7 @@ static int __init br_init(void)
 
 	err = br_fdb_init();
 	if (err)
-		goto err_out1;
+		goto err_out;
 
 	err = br_netfilter_init();
 	if (err)
@@ -65,6 +65,8 @@ err_out3:
 err_out2:
 	br_netfilter_fini();
 err_out1:
+	br_fdb_fini();
+err_out:
 	llc_sap_put(br_stp_sap);
 	return err;
 }
 
Read Message
Read Message
Read Message
Previous Topic: kernel/cpt/cpt_dump.c breakage in 2.6.22?
Next Topic: [PATCH] Fix inet_diag.ko register vs rcv race
Goto Forum:
  


Current Time: Fri Sep 12 20:42:27 GMT 2025

Total time taken to generate the page: 0.07330 seconds