Skip to content

Commit

Permalink
decnet: Don't leak entries when rebuilding zone.
Browse files Browse the repository at this point in the history
As noticed by Ben Hutchings, when we move entries from
one table to another we leak all except the first entry.

Put back the "next" variable removed by commit
9bf9055 ("decnet: Fix set-but-unused
variable.") and use it properly.

Reported-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
David S. Miller committed Apr 18, 2011
1 parent 482e3fe commit a01c133
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions net/decnet/dn_table.c
Original file line number Diff line number Diff line change
Expand Up @@ -123,11 +123,12 @@ static inline void dn_rebuild_zone(struct dn_zone *dz,
struct dn_fib_node **old_ht,
int old_divisor)
{
struct dn_fib_node *f, **fp, *next;
int i;
struct dn_fib_node *f, **fp;

for(i = 0; i < old_divisor; i++) {
for(f = old_ht[i]; f; f = f->fn_next) {
for(f = old_ht[i]; f; f = next) {
next = f->fn_next;
for(fp = dn_chain_p(f->fn_key, dz);
*fp && dn_key_leq((*fp)->fn_key, f->fn_key);
fp = &(*fp)->fn_next)
Expand Down

0 comments on commit a01c133

Please sign in to comment.