From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755096AbbHDRci (ORCPT ); Tue, 4 Aug 2015 13:32:38 -0400 Received: from casper.infradead.org ([85.118.1.10]:58095 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753139AbbHDRch (ORCPT ); Tue, 4 Aug 2015 13:32:37 -0400 Date: Tue, 4 Aug 2015 19:32:32 +0200 From: Peter Zijlstra To: Oleg Nesterov Cc: Arnd Bergmann , Ingo Molnar , Linus Torvalds , "Paul E.McKenney" , Waiman Long , linux-kernel@vger.kernel.org Subject: Re: qrwlock && read-after-read Message-ID: <20150804173232.GS25159@twins.programming.kicks-ass.net> References: <20150804130053.GA22608@redhat.com> <20150804131036.GQ25159@twins.programming.kicks-ass.net> <20150804134043.GA24252@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150804134043.GA24252@redhat.com> User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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")