[PATCH 1/2] [IrDA] Fix RCU lock pairing on error path
From: Samuel Ortiz <hidden>
Date: 2006-06-29 23:44:17
Hi Dave, irlan_client_discovery_indication calls rcu_read_lock and rcu_read_unlock, but returns without unlocking in an error case. Fix that by replacing the return with a goto so that the rcu_read_unlock always gets executed. Signed-off-by: Josh Triplett <redacted> Acked-by: Paul E. McKenney <paulmck-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org> Signed-off-by: Samuel Ortiz samuel-jcdQHdrhKHMdnm+yROfE0A@public.gmane.org <> --- net/irda/irlan/irlan_client.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/net/irda/irlan/irlan_client.c b/net/irda/irlan/irlan_client.c
index f8e6cb0..95cf123 100644
--- a/net/irda/irlan/irlan_client.c
+++ b/net/irda/irlan/irlan_client.c@@ -173,13 +173,14 @@ void irlan_client_discovery_indication(d rcu_read_lock(); self = irlan_get_any(); if (self) { - IRDA_ASSERT(self->magic == IRLAN_MAGIC, return;); + IRDA_ASSERT(self->magic == IRLAN_MAGIC, goto out;); IRDA_DEBUG(1, "%s(), Found instance (%08x)!\n", __FUNCTION__ , daddr); irlan_client_wakeup(self, saddr, daddr); } +IRDA_ASSERT_LABEL(out:) rcu_read_unlock(); }
--
1.4.0
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642