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

From: Peter Zijlstra
Date: Tue Jan 29 2019 - 04:33:34 EST


On Tue, Jan 29, 2019 at 10:01:08AM +0100, Heiko Carstens wrote:

> However now I see every now and then the following failure from the
> same test case:
>
> tst-robustpi8: ../nptl/pthread_mutex_lock.c:425: __pthread_mutex_lock_full: Assertion `INTERNAL_SYSCALL_ERRNO (e, __err) != ESRCH || !robust' failed.
>
> /* ESRCH can happen only for non-robust PI mutexes where
> the owner of the lock died. */
> assert (INTERNAL_SYSCALL_ERRNO (e, __err) != ESRCH || !robust);
>
> I just verified that this happened also without your patch, I just
> didn't see it since I started my tests with panic_on_warn=1 and the
> warning triggered always earlier.
> So, this seems to be something different.

*groan*... so while the other thing reproduced, I've not seen this
happen and I ran the test for hours.

I'll start it up again, see what happens..