From dc0b0f7d1e34b797b98e4d16122b3ea6f775154c Mon Sep 17 00:00:00 2001 From: Johannes Berg Date: Sat, 23 Feb 2008 15:17:20 +0100 Subject: [PATCH] mac80211: mesh hwmp locking fixes This fixes missing unlocks noticed by sparse. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville --- net/mac80211/mesh_hwmp.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/net/mac80211/mesh_hwmp.c b/net/mac80211/mesh_hwmp.c index 9a501aa..c2f40ef 100644 --- a/net/mac80211/mesh_hwmp.c +++ b/net/mac80211/mesh_hwmp.c @@ -264,8 +264,10 @@ static u32 hwmp_route_info_get(struct net_device *dev, rcu_read_lock(); sta = sta_info_get(local, mgmt->sa); - if (!sta) + if (!sta) { + rcu_read_unlock(); return 0; + } last_hop_metric = airtime_link_metric_get(local, sta); /* Update and check originator routing info */ @@ -293,6 +295,7 @@ static u32 hwmp_route_info_get(struct net_device *dev, break; default: sta_info_put(sta); + rcu_read_unlock(); return 0; } new_metric = orig_metric + last_hop_metric; -- 2.7.4