Re: qrwlock && read-after-read

From: Peter Zijlstra
Date: Tue Aug 04 2015 - 13:32:41 EST


On Tue, Aug 04, 2015 at 03:40:43PM +0200, Oleg Nesterov wrote:
> Lets fix the lockdep annotaions?
>
> Oleg.
>
> --- x/include/linux/rwlock_api_smp.h
> +++ x/include/linux/rwlock_api_smp.h
> @@ -146,7 +146,7 @@ static inline int __raw_write_trylock(rw
> static inline void __raw_read_lock(rwlock_t *lock)
> {
> preempt_disable();
> - rwlock_acquire_read(&lock->dep_map, 0, 0, _RET_IP_);
> + lock_acquire(..., /* read */ in_interrupt() 2 : 1, ...);
> LOCK_CONTENDED(lock, do_raw_read_trylock, do_raw_read_lock);
> }

I think that suffers the same problems we had before; see:

8acd91e86208 ("locking/lockdep: Revert qrwlock recusive stuff")
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/