diff options
author | Pavel Emelyanov <xemul@parallels.com> | 2010-10-28 02:00:43 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-10-28 10:27:03 -0700 |
commit | 4aa2c466a7733af093a526e9d1cdd0b3b90d47e9 (patch) | |
tree | 093d99b6c728867a8eb9548463d94661e3d0799e /include/net | |
parent | b1424ed91076db0b19ba4141856150df9b717dde (diff) | |
download | linux-3.10-4aa2c466a7733af093a526e9d1cdd0b3b90d47e9.tar.gz linux-3.10-4aa2c466a7733af093a526e9d1cdd0b3b90d47e9.tar.bz2 linux-3.10-4aa2c466a7733af093a526e9d1cdd0b3b90d47e9.zip |
fib: Fix fib zone and its hash leak on namespace stop
When we stop a namespace we flush the table and free one, but the
added fn_zone-s (and their hashes if grown) are leaked. Need to free.
Tries releases all its stuff in the flushing code.
Shame on us - this bug exists since the very first make-fib-per-net
patches in 2.6.27 :(
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/ip_fib.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/ip_fib.h b/include/net/ip_fib.h index ba3666d3176..07bdb5e9e8a 100644 --- a/include/net/ip_fib.h +++ b/include/net/ip_fib.h @@ -158,6 +158,8 @@ extern int fib_table_flush(struct fib_table *table); extern void fib_table_select_default(struct fib_table *table, const struct flowi *flp, struct fib_result *res); +extern void fib_free_table(struct fib_table *tb); + #ifndef CONFIG_IP_MULTIPLE_TABLES |