: Bad locking on br2684_devs modifications.
Subsystems (3)
PATCH 2/2 : Bad locking on br2684_devs modifications.
The list_del happens under read-locked devs_lock.
Signed-off-by Pavel Emelyanov <[email protected]>
--- net/atm/br2684.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
net/atm/br2684.c +2 -2
@@ -346,9 +346,9 @@ static void br2684_push(struct atm_vcc *atmvcc, struct sk_buff *skb)/* skb==NULL means VCC is being destroyed */ br2684_close_vcc (brvcc);if (list_empty (&brdev->brvccs)) { -read_lock (&devs_lock); +write_lock_irq (&devs_lock);list_del (&brdev->br2684_devs); -read_unlock (&devs_lock); +write_unlock_irq (&devs_lock);unregister_netdev (net_dev); }return ;
Signature · 1 line
1.5.3.4
From: Pavel Emelyanov <[email protected]>
Date: Sun, 04 May 2008 11:39:00 +0400
Quoted 3 lines
The
list_delhappens under read-lockeddevs_lock.Signed-off-by Pavel Emelyanov <[email protected]>
Applied, thanks a lot.