Re: [patchlet] locking/rt: fix rt_read_lock() lockdep annotation.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux