On Wed, 2014-05-07 at 16:01 +0200, Mike Galbraith wrote: > On Wed, 2014-05-07 at 09:48 -0400, Steven Rostedt wrote: > > On Wed, 07 May 2014 09:54:07 +0200 > > Mike Galbraith <umgwanakikbuti@xxxxxxxxx> wrote: > > > > > > > > rt-rw-lockdep-annotations.patch missed an rwlock_acquire_read() > > > > > > Signed-off-by: Mike Galbraith <umgwanakikbuti@xxxxxxxxx> > > > --- > > > kernel/locking/rt.c | 3 +-- > > > 1 file changed, 1 insertion(+), 2 deletions(-) > > > > > > --- a/kernel/locking/rt.c > > > +++ b/kernel/locking/rt.c > > > @@ -244,13 +244,12 @@ void __lockfunc rt_read_lock(rwlock_t *r > > > { > > > struct rt_mutex *lock = &rwlock->lock; > > > > > > - > > > /* > > > * recursive read locks succeed when current owns the lock > > > */ > > > if (rt_mutex_owner(lock) != current) { > > > migrate_disable(); > > > - rwlock_acquire_read(&rwlock->dep_map, 0, 0, _RET_IP_); > > > + rwlock_acquire(&rwlock->dep_map, 0, 0, _RET_IP_); > > > __rt_spin_lock(lock); > > > > This looks like it reverse applies? > > > Nope, I thought Thomas's whacked the one he did on purpose. I should learn to speak lockdep. How about this instead? locking/rt: fix rt_read_trylock() lockdep annotation. rt-rw-lockdep-annotations.patch dropped a rwlock_acquire_read Signed-off-by: Mike Galbraith <umgwanakikbuti@xxxxxxxxx> --- kernel/locking/rt.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) --- a/kernel/locking/rt.c +++ b/kernel/locking/rt.c @@ -217,7 +217,7 @@ int __lockfunc rt_read_trylock(rwlock_t migrate_disable(); ret = rt_mutex_trylock(lock); if (ret) - rwlock_acquire(&rwlock->dep_map, 0, 1, _RET_IP_); + rwlock_acquire_read(&rwlock->dep_map, 0, 1, _RET_IP_); else migrate_enable(); @@ -244,7 +244,6 @@ void __lockfunc rt_read_lock(rwlock_t *r { struct rt_mutex *lock = &rwlock->lock; - /* * recursive read locks succeed when current owns the lock */ -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html