Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-02-04 Thread Heiko Carstens
On Sun, Feb 03, 2019 at 05:30:39PM +0100, Thomas Gleixner wrote: > On Sat, 2 Feb 2019, Heiko Carstens wrote: > > I added a barrier between those two and now the code looks like this: > > > > 140: a5 1b 00 01 oill%r1,1 > > 144: e3 10 a0 e0 00 24 stg %r1,224(%r10) > > 1

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-02-03 Thread Thomas Gleixner
On Sat, 2 Feb 2019, Heiko Carstens wrote: > On Sat, Feb 02, 2019 at 11:14:27AM +0100, Thomas Gleixner wrote: > > On Sat, 2 Feb 2019, Heiko Carstens wrote: > > So after the unlock @timestamp 337.215675 the kernel does not deal with > > that futex at all until the failed lock attempt where it rightf

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-02-02 Thread Heiko Carstens
On Sat, Feb 02, 2019 at 11:14:27AM +0100, Thomas Gleixner wrote: > On Sat, 2 Feb 2019, Heiko Carstens wrote: > So after the unlock @timestamp 337.215675 the kernel does not deal with > that futex at all until the failed lock attempt where it rightfully rejects > the attempt due to the alleged owner

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-02-02 Thread Thomas Gleixner
On Sat, 2 Feb 2019, Heiko Carstens wrote: > On Fri, Feb 01, 2019 at 10:59:08PM +0100, Thomas Gleixner wrote: > > Were you able to capture a trace with the last set of additional trace > > printks? > > Of course I forgot to collect that, sorry! But just reproduced; see > log below (last 1000 lines)

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-02-01 Thread Thomas Gleixner
On Fri, 1 Feb 2019, Heiko Carstens wrote: > On Thu, Jan 31, 2019 at 06:06:53PM +0100, Sebastian Sewior wrote: > > On 2019-01-31 17:52:28 [+0100], Heiko Carstens wrote: > > > ...nevertheless Stefan and I looked through the lovely disassembly of > > > _pthread_mutex_lock_full() to verify if the compi

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-02-01 Thread Heiko Carstens
On Thu, Jan 31, 2019 at 06:06:53PM +0100, Sebastian Sewior wrote: > On 2019-01-31 17:52:28 [+0100], Heiko Carstens wrote: > > ...nevertheless Stefan and I looked through the lovely disassembly of > > _pthread_mutex_lock_full() to verify if the compiler barriers are > > actually doing what they are

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-31 Thread Heiko Carstens
On Thu, Jan 31, 2019 at 06:06:53PM +0100, Sebastian Sewior wrote: > On 2019-01-31 17:52:28 [+0100], Heiko Carstens wrote: > > ...nevertheless Stefan and I looked through the lovely disassembly of > > _pthread_mutex_lock_full() to verify if the compiler barriers are > > actually doing what they are

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-31 Thread Sebastian Sewior
On 2019-01-31 17:52:28 [+0100], Heiko Carstens wrote: > ...nevertheless Stefan and I looked through the lovely disassembly of > _pthread_mutex_lock_full() to verify if the compiler barriers are > actually doing what they are supposed to do. The generated code > however does look correct. > So, it m

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-31 Thread Heiko Carstens
On Thu, Jan 31, 2019 at 01:27:25AM +0100, Thomas Gleixner wrote: > On Thu, 31 Jan 2019, Thomas Gleixner wrote: > > > On Wed, 30 Jan 2019, Paul E. McKenney wrote: > > > On Thu, Jan 31, 2019 at 12:13:51AM +0100, Thomas Gleixner wrote: > > > > I might be wrong as usual, but this would definitely expl

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-30 Thread Paul E. McKenney
On Thu, Jan 31, 2019 at 12:55:18AM +0100, Thomas Gleixner wrote: > On Wed, 30 Jan 2019, Paul E. McKenney wrote: > > On Thu, Jan 31, 2019 at 12:13:51AM +0100, Thomas Gleixner wrote: > > > I might be wrong as usual, but this would definitely explain the fail very > > > well. > > > > On recent versio

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-30 Thread Paul E. McKenney
On Thu, Jan 31, 2019 at 01:27:25AM +0100, Thomas Gleixner wrote: > On Thu, 31 Jan 2019, Thomas Gleixner wrote: > > > On Wed, 30 Jan 2019, Paul E. McKenney wrote: > > > On Thu, Jan 31, 2019 at 12:13:51AM +0100, Thomas Gleixner wrote: > > > > I might be wrong as usual, but this would definitely expl

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-30 Thread Thomas Gleixner
On Thu, 31 Jan 2019, Thomas Gleixner wrote: > On Wed, 30 Jan 2019, Paul E. McKenney wrote: > > On Thu, Jan 31, 2019 at 12:13:51AM +0100, Thomas Gleixner wrote: > > > I might be wrong as usual, but this would definitely explain the fail very > > > well. > > > > On recent versions of GCC, the fix w

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-30 Thread Thomas Gleixner
On Wed, 30 Jan 2019, Paul E. McKenney wrote: > On Thu, Jan 31, 2019 at 12:13:51AM +0100, Thomas Gleixner wrote: > > I might be wrong as usual, but this would definitely explain the fail very > > well. > > On recent versions of GCC, the fix would be to put this between the two > stores that need or

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-30 Thread Paul E. McKenney
On Thu, Jan 31, 2019 at 12:13:51AM +0100, Thomas Gleixner wrote: > On Wed, 30 Jan 2019, Sebastian Sewior wrote: > > > On 2019-01-30 18:56:54 [+0100], Thomas Gleixner wrote: > > > TBH, no clue. Below are some more traceprintks which hopefully shed some > > > light on that mystery. See kernel/futex.

Re: WARN_ON_ONCE(!new_owner) within wake_futex_pi() triggerede

2019-01-30 Thread Thomas Gleixner
On Wed, 30 Jan 2019, Sebastian Sewior wrote: > On 2019-01-30 18:56:54 [+0100], Thomas Gleixner wrote: > > TBH, no clue. Below are some more traceprintks which hopefully shed some > > light on that mystery. See kernel/futex.c line 30 ... > > The robust list it somehow buggy. In the last trace we