Messages in this thread | | | Subject | Re: [PATCH v3] psi: get poll_work to run when calling poll syscall next time | From | Joseph Qi <> | Date | Fri, 23 Aug 2019 08:53:09 +0800 |
| |
On 19/8/23 06:21, Andrew Morton wrote: > On Wed, 21 Aug 2019 11:26:25 +0800 Joseph Qi <joseph.qi@linux.alibaba.com> wrote: > >> Only when calling the poll syscall the first time can user >> receive POLLPRI correctly. After that, user always fails to >> acquire the event signal. >> >> Reproduce case: >> 1. Get the monitor code in Documentation/accounting/psi.txt >> 2. Run it, and wait for the event triggered. >> 3. Kill and restart the process. >> >> The question is why we can end up with poll_scheduled = 1 but the work >> not running (which would reset it to 0). And the answer is because the >> scheduling side sees group->poll_kworker under RCU protection and then >> schedules it, but here we cancel the work and destroy the worker. The >> cancel needs to pair with resetting the poll_scheduled flag. > > Should this be backported into -stable kernels? > Sorry for missing that, should I resend it with cc stable tag?
Thanks, Joseph
| |