On Mon, Aug 16, 2021 at 07:19:34PM +0000, David Chen wrote:
Hi Greg,
We recently hit a hung task timeout issue in synchronize_rcu_expedited on 4.14 branch. The issue seems to be identical to the one described in `fd6bc19d7676 rcu: Fix missed wakeup of exp_wq waiters` Can we backport it to 4.14 and 4.19 branch? The patch doesn't apply cleanly, but it should be trivial to resolve, just do this
wake_up_all(&rnp->exp_wq[rcu_seq_ctr(rsp->expedited_sequence) & 0x3]);
wake_up_all(&rnp->exp_wq[rcu_seq_ctr(s) & 0x3]);
I don't know if we should do it for 4.9, because the handling of sequence number is a bit different.
Please provide a working backport, me hand-editing patches does not scale, and this way you get the proper credit for backporting it (after testing it).
You have tested, this, right?
thanks,
greg k-h