aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet
diff options
context:
space:
mode:
authorAndrey V. Elsukov <ae@FreeBSD.org>2011-03-31 15:10:41 +0000
committerAndrey V. Elsukov <ae@FreeBSD.org>2011-03-31 15:10:41 +0000
commit3d10d64fd3ec3cf3135908a62dcee707b7066221 (patch)
tree2f31c9739ab8eec12e72ed32a2cb90c86a83ee5b /sys/netinet
parent41aebe5fc9a045162fda984284d5633f116bc23a (diff)
downloadsrc-3d10d64fd3ec3cf3135908a62dcee707b7066221.tar.gz
src-3d10d64fd3ec3cf3135908a62dcee707b7066221.zip
Fix a memory leak. Memory that is allocated for schedulers hash table
was not freed. PR: kern/156083 MFC after: 1 week
Notes
Notes: svn path=/head/; revision=220203
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/ipfw/ip_dummynet.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/netinet/ipfw/ip_dummynet.c b/sys/netinet/ipfw/ip_dummynet.c
index 21d4baee9056..59cf61090994 100644
--- a/sys/netinet/ipfw/ip_dummynet.c
+++ b/sys/netinet/ipfw/ip_dummynet.c
@@ -748,9 +748,10 @@ schk_delete_cb(void *obj, void *arg)
#endif
fsk_detach_list(&s->fsk_list, arg ? DN_DESTROY : 0);
/* no more flowset pointing to us now */
- if (s->sch.flags & DN_HAVE_MASK)
+ if (s->sch.flags & DN_HAVE_MASK) {
dn_ht_scan(s->siht, si_destroy, NULL);
- else if (s->siht)
+ dn_ht_free(s->siht, 0);
+ } else if (s->siht)
si_destroy(s->siht, NULL);
if (s->profile) {
free(s->profile, M_DUMMYNET);