In the function rcu_lock_domain_by_id there is a call to
rcu_read_unlock just prior to returning. However, the intent is that
the rcu reader retain the read lock after the call has returned. This
can be verified by auditing the callers of this routine, which each
explicitly call rcu_unlock_domain, which in turn calls
rcu_read_unlock.
--
Remove redundant call to rcu_read_unlock.
signed-off-by: Mike D. Day <ncmike@us.ibm.com>
diff -r 6ee683d1b61f xen/common/domain.c
--- a/xen/common/domain.c Wed Mar 28 15:31:17 2007 +0100
+++ b/xen/common/domain.c Wed Mar 28 14:43:13 2007 -0400
@@ -252,8 +252,6 @@ struct domain *rcu_lock_domain_by_id(dom
return d;
}
- rcu_read_unlock(&domlist_read_lock);
-
return NULL;
}
--
Mike D. Day
IBM LTC
Cell: 919 412-3900
Sametime: ncmike@us.ibm.com AIM: ncmikeday Yahoo: ultra.runner
PGP key: http://www.ncultra.org/ncmike/pubkey.asc
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Keir Fraser
2007-Mar-28 19:22 UTC
Re: [Xen-devel] [PATCH] remove redundant rcu_read_unlock
On 28/3/07 20:06, "Mike D. Day" <ncmike@us.ibm.com> wrote:> In the function rcu_lock_domain_by_id there is a call to > rcu_read_unlock just prior to returning. However, the intent is that > the rcu reader retain the read lock after the call has returned. This > can be verified by auditing the callers of this routine, which each > explicitly call rcu_unlock_domain, which in turn calls > rcu_read_unlock. > > -- > Remove redundant call to rcu_read_unlock.It''s not redundant -- that''s the error path (returning NULL). Callers do not call the unlock function in this case. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel