diff options
author | Martin Whitaker <atm@martin-whitaker.co.uk> | 2005-09-28 16:35:22 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-09-28 16:35:22 -0700 |
commit | 735631a9196db42631b8817892605ee72e13a58b (patch) | |
tree | d6a939f4390c9cbcaecf203772b8405e1fe3da2e /net/atm/addr.c | |
parent | 9301e320e98ff19a0e48881b038d0c24ca76e6c0 (diff) | |
download | linux-735631a9196db42631b8817892605ee72e13a58b.tar.bz2 |
[ATM]: fix bug in atm address list handling
From: Martin Whitaker <atm@martin-whitaker.co.uk>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Diffstat (limited to 'net/atm/addr.c')
-rw-r--r-- | net/atm/addr.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/atm/addr.c b/net/atm/addr.c index 1c8867f7f54a..a30d0bf48063 100644 --- a/net/atm/addr.c +++ b/net/atm/addr.c @@ -50,8 +50,10 @@ void atm_reset_addr(struct atm_dev *dev) struct atm_dev_addr *this, *p; spin_lock_irqsave(&dev->lock, flags); - list_for_each_entry_safe(this, p, &dev->local, entry) - kfree(this); + list_for_each_entry_safe(this, p, &dev->local, entry) { + list_del(&this->entry); + kfree(this); + } spin_unlock_irqrestore(&dev->lock, flags); notify_sigd(dev); } |