diff options
author | Jean-Philippe Brucker <[email protected]> | 2019-06-10 18:38:29 +0100 |
---|---|---|
committer | Olof Johansson <[email protected]> | 2019-06-17 04:50:21 -0700 |
commit | 92e074acf6f7694e96204265eb18ac113f546e80 (patch) | |
tree | fa375113d371dce0d7b14b8b766a157c1ed1fa38 /net/lapb/lapb_subr.c | |
parent | 5ec47cda74e98ad2f723f93b4a97ba87638338aa (diff) |
firmware/psci: psci_checker: Park kthreads before stopping them
Since commit 85f1abe0019f ("kthread, sched/wait: Fix kthread_parkme()
completion issue"), kthreads that are bound to a CPU must be parked
before being stopped. At the moment the PSCI checker calls
kthread_stop() directly on the suspend kthread, which triggers the
following warning:
[ 6.068288] WARNING: CPU: 1 PID: 1 at kernel/kthread.c:398 __kthread_bind_mask+0x20/0x78
...
[ 6.190151] Call trace:
[ 6.192566] __kthread_bind_mask+0x20/0x78
[ 6.196615] kthread_unpark+0x74/0x80
[ 6.200235] kthread_stop+0x44/0x1d8
[ 6.203769] psci_checker+0x3bc/0x484
[ 6.207389] do_one_initcall+0x48/0x260
[ 6.211180] kernel_init_freeable+0x2c8/0x368
[ 6.215488] kernel_init+0x10/0x100
[ 6.218935] ret_from_fork+0x10/0x1c
[ 6.222467] ---[ end trace e05e22863d043cd3 ]---
kthread_unpark() tries to bind the thread to its CPU and aborts with a
WARN() if the thread wasn't in TASK_PARKED state. Park the kthreads
before stopping them.
Fixes: 85f1abe0019f ("kthread, sched/wait: Fix kthread_parkme() completion issue")
Signed-off-by: Jean-Philippe Brucker <[email protected]>
Reviewed-by: Sudeep Holla <[email protected]>
Acked-by: Lorenzo Pieralisi <[email protected]>
Signed-off-by: Olof Johansson <[email protected]>
Diffstat (limited to 'net/lapb/lapb_subr.c')
0 files changed, 0 insertions, 0 deletions