Messages in this thread Patch in this message | | | Date | Thu, 27 Oct 2016 13:27:36 -0700 | From | Jacob Pan <> | Subject | Re: [PATCH 3/3] thermal/intel_powerclamp: Convert to CPU hotplug state |
| |
On Thu, 27 Oct 2016 17:17:26 +0200 Sebastian Andrzej Siewior <bigeasy@linutronix.de> wrote:
> On 2016-10-27 16:53:48 [+0200], Petr Mladek wrote: > > > > In each case, I wonder if the problem is caused by the conversion > > to the kthread worker or by the CPU hotplug state conversion. > > drop the hotplug patch and you will see. > Petr,
I dropped hp patch no long see the hang during suspend to s3. However, the problem seems to be this line,
diff --git a/drivers/thermal/intel_powerclamp.c b/drivers/thermal/intel_powerclamp.c index 390e50b..b61da57 100644 --- a/drivers/thermal/intel_powerclamp.c +++ b/drivers/thermal/intel_powerclamp.c @@ -574,7 +574,7 @@ static void stop_power_clamp_worker(unsigned long cpu) */ del_timer_sync(&w_data->wakeup_timer); clear_bit(w_data->cpu, cpu_clamping_mask); - kthread_destroy_worker(w_data->worker); +// kthread_destroy_worker(w_data->worker); w_data->worker = NULL; }
If I do the above, everything works with S3 and CPU HP patch. Inside kthread_destroy_worker() kthread_flush_worker(worker); never completes then blocks s3 entry!
I will be at LPC next week also, we can chat about that.
Thanks,
Jacob
> > Best Regards, > > Petr > > Sebastian
[Jacob Pan]
| |