From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 15 Dec 2017 01:24:28 -0500 From: Theodore Ts'o To: Byungchul Park Cc: Ingo Molnar , Thomas Gleixner , Peter Zijlstra , david@fromorbit.com, willy@infradead.org, Linus Torvalds , Amir Goldstein , byungchul.park@lge.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-block@vger.kernel.org, linux-fsdevel@vger.kernel.org, oleg@redhat.com Subject: Re: [PATCH] locking/lockdep: Remove the cross-release locking checks Message-ID: <20171215062428.5dyv7wjbzn2ggxvz@thunk.org> References: <20171213104617.7lffucjhaa6xb7lp@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Fri, Dec 15, 2017 at 01:05:43PM +0900, Byungchul Park wrote: > For example, in the case of fs issues, for now we can > invalidate wait_for_completion() in submit_bio_wait().... And this will spawn a checkpatch.pl ERROR: ERROR("LOCKDEP", "lockdep_no_validate class is reserved for device->mutex.\n" . $herecurr); This mention in checkpatch.pl is the only documentation I've been able to find about lockdep_set_novalidate_class(), by the way. > ... and re-validate it later, of course, I really want to find more > fundamental solution though. Oh, and I was finally able to find the quote that the *only* people who are likely to be able to deal with lock annotations are the subsystem maintainers. But if the ways of dealing with lock annotations are not documented, such that subsystem maintainers are going to have a very hard time figuring out *how* to deal with it, it seems that lock classification as a solution to cross-release false positives seems.... unlikely: From: Byungchul Park Date: Fri, 8 Dec 2017 18:27:45 +0900 Subject: Re: [PATCH v4 72/73] xfs: Convert mru cache to XArray 1) Firstly, it's hard to assign lock classes *properly*. By default, it relies on the caller site of lockdep_init_map(), but we need to assign another class manually, where ordering rules are complicated so cannot rely on the caller site. That *only* can be done by experts of the subsystem. - Ted From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 15 Dec 2017 01:24:28 -0500 From: Theodore Ts'o To: Byungchul Park Cc: Ingo Molnar , Thomas Gleixner , Peter Zijlstra , david@fromorbit.com, willy@infradead.org, Linus Torvalds , Amir Goldstein , byungchul.park@lge.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-block@vger.kernel.org, linux-fsdevel@vger.kernel.org, oleg@redhat.com Subject: Re: [PATCH] locking/lockdep: Remove the cross-release locking checks Message-ID: <20171215062428.5dyv7wjbzn2ggxvz@thunk.org> References: <20171213104617.7lffucjhaa6xb7lp@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sender: owner-linux-mm@kvack.org List-ID: On Fri, Dec 15, 2017 at 01:05:43PM +0900, Byungchul Park wrote: > For example, in the case of fs issues, for now we can > invalidate wait_for_completion() in submit_bio_wait().... And this will spawn a checkpatch.pl ERROR: ERROR("LOCKDEP", "lockdep_no_validate class is reserved for device->mutex.\n" . $herecurr); This mention in checkpatch.pl is the only documentation I've been able to find about lockdep_set_novalidate_class(), by the way. > ... and re-validate it later, of course, I really want to find more > fundamental solution though. Oh, and I was finally able to find the quote that the *only* people who are likely to be able to deal with lock annotations are the subsystem maintainers. But if the ways of dealing with lock annotations are not documented, such that subsystem maintainers are going to have a very hard time figuring out *how* to deal with it, it seems that lock classification as a solution to cross-release false positives seems.... unlikely: From: Byungchul Park Date: Fri, 8 Dec 2017 18:27:45 +0900 Subject: Re: [PATCH v4 72/73] xfs: Convert mru cache to XArray 1) Firstly, it's hard to assign lock classes *properly*. By default, it relies on the caller site of lockdep_init_map(), but we need to assign another class manually, where ordering rules are complicated so cannot rely on the caller site. That *only* can be done by experts of the subsystem. - Ted -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org