netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [ROSE] Fix routing table locking in rose_remove_neigh.
@ 2006-04-29 13:31 Ralf Baechle
  2006-04-29 22:59 ` Bernard Pidoux
  2006-05-04  6:26 ` David S. Miller
  0 siblings, 2 replies; 3+ messages in thread
From: Ralf Baechle @ 2006-04-29 13:31 UTC (permalink / raw)
  To: David S. Miller, netdev, Bernard Pidoux, linux-hams

The locking rule for rose_remove_neigh() are that the called needs to
hold rose_neigh_list_lock, so we better don't take it yet again in
rose_neigh_list_lock.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

 net/rose/rose_route.c |    5 -----
 1 file changed, 5 deletions(-)

Index: linux-net.git/net/rose/rose_route.c
===================================================================
--- linux-net.git.orig/net/rose/rose_route.c	2006-04-29 14:18:58.000000000 +0100
+++ linux-net.git/net/rose/rose_route.c	2006-04-29 14:19:02.000000000 +0100
@@ -233,11 +233,8 @@ static void rose_remove_neigh(struct ros
 
 	skb_queue_purge(&rose_neigh->queue);
 
-	spin_lock_bh(&rose_neigh_list_lock);
-
 	if ((s = rose_neigh_list) == rose_neigh) {
 		rose_neigh_list = rose_neigh->next;
-		spin_unlock_bh(&rose_neigh_list_lock);
 		kfree(rose_neigh->digipeat);
 		kfree(rose_neigh);
 		return;
@@ -246,7 +243,6 @@ static void rose_remove_neigh(struct ros
 	while (s != NULL && s->next != NULL) {
 		if (s->next == rose_neigh) {
 			s->next = rose_neigh->next;
-			spin_unlock_bh(&rose_neigh_list_lock);
 			kfree(rose_neigh->digipeat);
 			kfree(rose_neigh);
 			return;
@@ -254,7 +250,6 @@ static void rose_remove_neigh(struct ros
 
 		s = s->next;
 	}
-	spin_unlock_bh(&rose_neigh_list_lock);
 }
 
 /*

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-05-04  6:27 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-04-29 13:31 [ROSE] Fix routing table locking in rose_remove_neigh Ralf Baechle
2006-04-29 22:59 ` Bernard Pidoux
2006-05-04  6:26 ` David S. Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).