Re: __put_task_struct() WARN_ON(!tsk->exit_state)?

From: Paul E. McKenney
Date: Mon Dec 05 2022 - 12:00:20 EST


On Sat, Dec 03, 2022 at 11:24:43AM -0800, Paul E. McKenney wrote:
> Hello!
>
> One of last night's rcutorture TREE03 runs triggered the
> __put_task_struct() function's first WARN_ON() complaining that
> the tasks's ->exit_state was zero. This was on mainline merged
> into RCU's "dev" branch. There immediately follows a splat from
> refcount_warn_saturate(), so there are two interlaced stack dumps. :-/
>
> What I do have seems to implicate rt_mutex priority boosting triggered
> by RCU's prioritiy boosting.
>
> Left to myself, my next steps are to try to reproduce this. It happened
> once in 150 hours of TREE03, so who knows?
>
> But I figured I should check to see if anyone else is hitting this.

And hammering this hard all weekend failed to reproduce. 1500 hours of
TREE03 and no failures.

Yet another thing going bump in the night.

Left to myself, my next step is to try out Joel's locktorture patches.

https://lore.kernel.org/lkml/20221123012104.3317665-3-joel@xxxxxxxxxxxxxxxxx/

Thanx, Paul