[prev in list] [next in list] [prev in thread] [next in thread]
List: netfilter-devel
Subject: double call to ip_conntrack_put() ?
From: Wang Jian <lark () linux ! net ! cn>
Date: 2005-04-18 9:29:45
Message-ID: 20050418171657.0370.LARK () linux ! net ! cn
[Download RAW message or body]
Hi,
death_by_timeout() calls ip_conntrack_put() before return. And
death_by_timeout() is called combined with ip_conntrack_put() in some
places, such as
in early_drop()
if (del_timer(&ct->timeout)) {
death_by_timeout((unsigned long)ct);
dropped = 1;
CONNTRACK_STAT_INC(early_drop);
}
ip_conntrack_put(ct);
and in ip_ct_iterate_cleanup()
while ((h = get_next_corpse(iter, data, &bucket)) != NULL) {
struct ip_conntrack *ct = tuplehash_to_ctrack(h);
/* Time to push up daises... */
if (del_timer(&ct->timeout))
death_by_timeout((unsigned long)ct);
/* ... else the timer will get him soon. */
ip_conntrack_put(ct);
}
Is this intended or misuse?
--
lark
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic