From: Kevin Hao Date: Thu, 21 Dec 2023 04:45:08 +0000 (+0800) Subject: powerpc/mpc83xx: Add the missing set_freezable() for agent_thread_fn() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=6addc560e69cd1b2e68ef43ad62a878ac1956f51;p=linux.git powerpc/mpc83xx: Add the missing set_freezable() for agent_thread_fn() The kernel thread function agent_thread_fn() invokes the try_to_freeze() in its loop. But all the kernel threads are non-freezable by default. So if we want to make a kernel thread to be freezable, we have to invoke set_freezable() explicitly. Signed-off-by: Kevin Hao Signed-off-by: Michael Ellerman Link: https://msgid.link/20231221044510.1802429-2-haokexin@gmail.com --- diff --git a/arch/powerpc/platforms/83xx/suspend.c b/arch/powerpc/platforms/83xx/suspend.c index 9833c36bda838..eed325ed08ccc 100644 --- a/arch/powerpc/platforms/83xx/suspend.c +++ b/arch/powerpc/platforms/83xx/suspend.c @@ -261,6 +261,8 @@ static int mpc83xx_suspend_begin(suspend_state_t state) static int agent_thread_fn(void *data) { + set_freezable(); + while (1) { wait_event_interruptible(agent_wq, pci_pm_state >= 2); try_to_freeze();