diff options
author | Martin Whitaker <atm@martin-whitaker.co.uk> | 2005-09-28 19:35:22 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-09-28 19:35:22 -0400 |
commit | 735631a9196db42631b8817892605ee72e13a58b (patch) | |
tree | d6a939f4390c9cbcaecf203772b8405e1fe3da2e /net/atm/addr.c | |
parent | 9301e320e98ff19a0e48881b038d0c24ca76e6c0 (diff) |
[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) | |||
50 | struct atm_dev_addr *this, *p; | 50 | struct atm_dev_addr *this, *p; |
51 | 51 | ||
52 | spin_lock_irqsave(&dev->lock, flags); | 52 | spin_lock_irqsave(&dev->lock, flags); |
53 | list_for_each_entry_safe(this, p, &dev->local, entry) | 53 | list_for_each_entry_safe(this, p, &dev->local, entry) { |
54 | kfree(this); | 54 | list_del(&this->entry); |
55 | kfree(this); | ||
56 | } | ||
55 | spin_unlock_irqrestore(&dev->lock, flags); | 57 | spin_unlock_irqrestore(&dev->lock, flags); |
56 | notify_sigd(dev); | 58 | notify_sigd(dev); |
57 | } | 59 | } |