diff options
author | ae <ae@FreeBSD.org> | 2011-03-31 15:10:41 +0000 |
---|---|---|
committer | ae <ae@FreeBSD.org> | 2011-03-31 15:10:41 +0000 |
commit | eabdaff85a243bfc83ce5acf75160d91dfac256f (patch) | |
tree | 2f31c9739ab8eec12e72ed32a2cb90c86a83ee5b /sys/netinet | |
parent | 773a226ff48a8704a18d7b29a61a6329cedcf89b (diff) | |
download | FreeBSD-src-eabdaff85a243bfc83ce5acf75160d91dfac256f.zip FreeBSD-src-eabdaff85a243bfc83ce5acf75160d91dfac256f.tar.gz |
Fix a memory leak. Memory that is allocated for schedulers hash table
was not freed.
PR: kern/156083
MFC after: 1 week
Diffstat (limited to 'sys/netinet')
-rw-r--r-- | sys/netinet/ipfw/ip_dummynet.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/netinet/ipfw/ip_dummynet.c b/sys/netinet/ipfw/ip_dummynet.c index 21d4bae..59cf610 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); |