[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1ebda1e3-dae3-9e86-ad92-e1acdead23be@codeaurora.org>
Date: Thu, 7 Jun 2018 14:00:53 +0530
From: "Kohli, Gaurav" <gkohli@...eaurora.org>
To: Peter Zijlstra <peterz@...radead.org>,
Oleg Nesterov <oleg@...hat.com>
Cc: tglx@...utronix.de, mpe@...erman.id.au, mingo@...nel.org,
bigeasy@...utronix.de, linux-kernel@...r.kernel.org,
linux-arm-msm@...r.kernel.org,
Neeraj Upadhyay <neeraju@...eaurora.org>,
Will Deacon <will.deacon@....com>
Subject: Re: [PATCH v1] kthread/smpboot: Serialize kthread parking against
wakeup
HI ,
In the latest patch mentioned, k should be their instead of p:
-WARN_ON_ONCE(!wait_task_inactive(p, TASK_PARKED))
+WARN_ON_ONCE(!wait_task_inactive(k, TASK_PARKED))
Regards
Gaurav
On 6/7/2018 12:29 AM, Peter Zijlstra wrote:
> On Wed, Jun 06, 2018 at 03:51:16PM +0200, Oleg Nesterov wrote:
>> IIUC, this will only affect smpboot_update_cpumask_percpu_thread() which can hit
>> an already parked thread, but it doesn't need to wait.
>>
>> And it seems that smpboot_update_cpumask_percpu_thread() in turn needs some cleanups.
>> Hmm. and its single user: kernel/watchdog.c.
>>
>> And speaking of watchdog.c, can't we simply kill the "watchdog/%u" threads? This is
>> off-topic, but can't watchdog_timer_fn() use stop_one_cpu_nowait(watchdog) ?
>>
>> And I really think we should unexport kthread_park/unpark(), only smpboot_thread_fn()
>> should use them. kthread() should not play with __kthread_parkme(). And even
>> KTHREAD_SHOULD_PARK must die, I mean it should live in struct smp_hotplug_thread,
>> not in struct kthread.
>>
>> OK, this is off-topic too.
>
>> And, let me repeat, can't we avoid complete_all() ?
>
> Yes, or at least if that watchdog crap is the only user.
>
> I have most of the patch reworking watchdog.c to use stop_one_cpu*(),
> and that cleans up lots -- of course, I've not tested it yet, so it
> could also be breaking lots :-)
>
--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center,
Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.
Powered by blists - more mailing lists