From: Suresh Bhogavilli Date: Tue, 21 Feb 2006 21:42:22 +0000 (-0800) Subject: [IPV4]: Fix garbage collection of multipath route entries X-Git-Tag: v2.6.16.28-rc1~520^2~4 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=85259878499d6c428cba191bb4e415a250dcd75a;p=karo-tx-linux.git [IPV4]: Fix garbage collection of multipath route entries When garbage collecting route cache entries of multipath routes in rt_garbage_collect(), entries were deleted from the hash bucket 'i' while holding a spin lock on bucket 'k' resulting in a system hang. Delete entries, if any, from bucket 'k' instead. Signed-off-by: Suresh Bhogavilli Signed-off-by: David S. Miller --- diff --git a/net/ipv4/route.c b/net/ipv4/route.c index d82c242ea704..fca5fe0cf94a 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -835,7 +835,7 @@ static int rt_garbage_collect(void) int r; rthp = rt_remove_balanced_route( - &rt_hash_table[i].chain, + &rt_hash_table[k].chain, rth, &r); goal -= r;