Re: futex merge v4.4.280 troubles

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Sep 29, 2021 at 09:23:08AM +0200, Daniel Wagner wrote:
> Hi,
> 
> On 18.09.21 01:16, Luis Claudio R. Goncalves wrote:
> > > If I revert "futex: Futex_unlock_pi() determinism" pi_stress will work. With
> > > the patch applied the process just hangs. I've attached gdb to see what's
> > > going on in this case:
> 
> Thanks for all the tips. It took me a while to figure out what's wrong. The
> hint was in the reverted patch... The patch depends on the 'newly'
> introduced locking rules (pi_state->pi_mutex.wait_lock, hb->lock),
> though the stable backport is not shipping it. Here the hint:
> 
>   However, now that modifying wait_list is done while holding both
>   hb->lock and wait_lock, the scenario can be avoided entirely by
>   acquiring wait_lock while still holding hb-lock. Doing a hand-over,
>   without leaving a hole.
> 
> After a quick test merge of put_pi_state() from v4.9-rt things seem
> to start working again. I need some more time to polish and verify
> all changes but at least I know now what's wrong.

Fantastic!

Please let me know if I can help in any way :)

Luis




[Index of Archives]     [Linux USB Development]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux