Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-20 Thread Ingo Molnar
* Thomas Gleixner wrote: > That would just make the door open for evading lockdep. This has been > discussed when lockdep was introduced and with a lot of other 'annoying' > debug features we've seen the same discussion happening. > > When they get introduced the number of

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-20 Thread Ingo Molnar
* Thomas Gleixner wrote: > That would just make the door open for evading lockdep. This has been > discussed when lockdep was introduced and with a lot of other 'annoying' > debug features we've seen the same discussion happening. > > When they get introduced the number of real issues and

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-20 Thread Byungchul Park
On Thu, Oct 19, 2017 at 08:21:56PM +, Bart Van Assche wrote: > * How much review has the Documentation/locking/crossrelease.txt received > before it went upstream? At least to me that document seems much harder > to read than other kernel documentation due to weird use of the English >

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-20 Thread Byungchul Park
On Thu, Oct 19, 2017 at 08:21:56PM +, Bart Van Assche wrote: > * How much review has the Documentation/locking/crossrelease.txt received > before it went upstream? At least to me that document seems much harder > to read than other kernel documentation due to weird use of the English >

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
On Thu, 19 Oct 2017, Bart Van Assche wrote: > On Thu, 2017-10-19 at 13:33 -0700, Matthew Wilcox wrote: > > For example, the page lock is not annotatable with lockdep -- we return > > to userspace with it held, for heaven's sake! So it is quite easy for > > someone not familiar with the MM locking

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
On Thu, 19 Oct 2017, Bart Van Assche wrote: > On Thu, 2017-10-19 at 13:33 -0700, Matthew Wilcox wrote: > > For example, the page lock is not annotatable with lockdep -- we return > > to userspace with it held, for heaven's sake! So it is quite easy for > > someone not familiar with the MM locking

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
On Thu, 19 Oct 2017, Bart Van Assche wrote: > * How many lock inversion problems have been found so far thanks to the > cross-release checking? How many false positives have the cross-release > checks triggered so far? Does the number of real issues that has been > found outweigh the effort

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
On Thu, 19 Oct 2017, Bart Van Assche wrote: > * How many lock inversion problems have been found so far thanks to the > cross-release checking? How many false positives have the cross-release > checks triggered so far? Does the number of real issues that has been > found outweigh the effort

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Bart Van Assche
On Thu, 2017-10-19 at 13:33 -0700, Matthew Wilcox wrote: > For example, the page lock is not annotatable with lockdep -- we return > to userspace with it held, for heaven's sake! So it is quite easy for > someone not familiar with the MM locking hierarchy to inadvertently > introduce an ABBA

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Bart Van Assche
On Thu, 2017-10-19 at 13:33 -0700, Matthew Wilcox wrote: > For example, the page lock is not annotatable with lockdep -- we return > to userspace with it held, for heaven's sake! So it is quite easy for > someone not familiar with the MM locking hierarchy to inadvertently > introduce an ABBA

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Matthew Wilcox
On Thu, Oct 19, 2017 at 08:21:56PM +, Bart Van Assche wrote: > In case it wouldn't be clear, your work and the work of others on lockdep > and preempt-rt is highly appreciated. Sorry that I missed the discussion > about the cross-release functionality when it went upstream. I have several >

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Matthew Wilcox
On Thu, Oct 19, 2017 at 08:21:56PM +, Bart Van Assche wrote: > In case it wouldn't be clear, your work and the work of others on lockdep > and preempt-rt is highly appreciated. Sorry that I missed the discussion > about the cross-release functionality when it went upstream. I have several >

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Bart Van Assche
On Thu, 2017-10-19 at 21:12 +0200, Thomas Gleixner wrote: > And just for the record, I wasted enough of my time already to decode 'can > not happen' dead locks where completions or other wait primitives have been > involved. I rather spend time annotating stuff after analyzing it proper > than

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Bart Van Assche
On Thu, 2017-10-19 at 21:12 +0200, Thomas Gleixner wrote: > And just for the record, I wasted enough of my time already to decode 'can > not happen' dead locks where completions or other wait primitives have been > involved. I rather spend time annotating stuff after analyzing it proper > than

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
On Thu, 19 Oct 2017, Thomas Gleixner wrote: > That's not a lockdep problem and neither can the pure locking dependency > tracking know that a particular deadlock is not possible by design. It can > merily record the dependency chains and detect circular dependencies. > > There is enough code

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
On Thu, 19 Oct 2017, Thomas Gleixner wrote: > That's not a lockdep problem and neither can the pure locking dependency > tracking know that a particular deadlock is not possible by design. It can > merily record the dependency chains and detect circular dependencies. > > There is enough code

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
Bart, On Thu, 19 Oct 2017, Bart Van Assche wrote: > It seems like you are missing my point. That might be a perception problem. > Cross-release checking is really *broken* as a concept. It is impossible > to improve it to the same reliability level as the kernel v4.13 lockdep > code. Hence my

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
Bart, On Thu, 19 Oct 2017, Bart Van Assche wrote: > It seems like you are missing my point. That might be a perception problem. > Cross-release checking is really *broken* as a concept. It is impossible > to improve it to the same reliability level as the kernel v4.13 lockdep > code. Hence my

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Bart Van Assche
On Thu, 2017-10-19 at 17:34 +0200, Thomas Gleixner wrote: > I really disagree with your reasoning completely > > 1) When lockdep was introduced more than ten years ago it was far from >perfect and we spent a reasonable amount of time to improve it, analyze >false positives and add the

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Bart Van Assche
On Thu, 2017-10-19 at 17:34 +0200, Thomas Gleixner wrote: > I really disagree with your reasoning completely > > 1) When lockdep was introduced more than ten years ago it was far from >perfect and we spent a reasonable amount of time to improve it, analyze >false positives and add the

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
On Thu, 19 Oct 2017, Bart Van Assche wrote: > On Thu, 2017-10-19 at 14:55 +0900, Byungchul Park wrote: > > Now the performance regression was fixed, re-enable > > CONFIG_LOCKDEP_CROSSRELEASE and CONFIG_LOCKDEP_COMPLETIONS. > > > > Signed-off-by: Byungchul Park > > --- >

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Thomas Gleixner
On Thu, 19 Oct 2017, Bart Van Assche wrote: > On Thu, 2017-10-19 at 14:55 +0900, Byungchul Park wrote: > > Now the performance regression was fixed, re-enable > > CONFIG_LOCKDEP_CROSSRELEASE and CONFIG_LOCKDEP_COMPLETIONS. > > > > Signed-off-by: Byungchul Park > > --- > > lib/Kconfig.debug | 4

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Bart Van Assche
On Thu, 2017-10-19 at 14:55 +0900, Byungchul Park wrote: > Now the performance regression was fixed, re-enable > CONFIG_LOCKDEP_CROSSRELEASE and CONFIG_LOCKDEP_COMPLETIONS. > > Signed-off-by: Byungchul Park > --- > lib/Kconfig.debug | 4 ++-- > 1 file changed, 2

Re: [PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-19 Thread Bart Van Assche
On Thu, 2017-10-19 at 14:55 +0900, Byungchul Park wrote: > Now the performance regression was fixed, re-enable > CONFIG_LOCKDEP_CROSSRELEASE and CONFIG_LOCKDEP_COMPLETIONS. > > Signed-off-by: Byungchul Park > --- > lib/Kconfig.debug | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) >

[PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-18 Thread Byungchul Park
Now the performance regression was fixed, re-enable CONFIG_LOCKDEP_CROSSRELEASE and CONFIG_LOCKDEP_COMPLETIONS. Signed-off-by: Byungchul Park --- lib/Kconfig.debug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/Kconfig.debug

[PATCH v2 2/3] lockdep: Remove BROKEN flag of LOCKDEP_CROSSRELEASE

2017-10-18 Thread Byungchul Park
Now the performance regression was fixed, re-enable CONFIG_LOCKDEP_CROSSRELEASE and CONFIG_LOCKDEP_COMPLETIONS. Signed-off-by: Byungchul Park --- lib/Kconfig.debug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index