[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100308190606.GB9149@redhat.com>
Date: Mon, 8 Mar 2010 20:06:07 +0100
From: Oleg Nesterov <oleg@...hat.com>
To: Tejun Heo <tj@...nel.org>
Cc: linux-kernel@...r.kernel.org, rusty@...tcorp.com.au,
sivanich@....com, heiko.carstens@...ibm.com,
torvalds@...ux-foundation.org, mingo@...e.hu, peterz@...radead.org,
dipankar@...ibm.com, josh@...edesktop.org,
paulmck@...ux.vnet.ibm.com, akpm@...ux-foundation.org
Subject: Re: [PATCH 2/4] stop_machine: reimplement using cpuhog
On 03/09, Tejun Heo wrote:
>
> int __stop_machine(int (*fn)(void *), void *data, const struct cpumask *cpus)
> {
> ...
> + /* Set the initial state and hog all online cpus. */
> + set_state(&smdata, STOPMACHINE_PREPARE);
> + return hog_cpus(cpu_online_mask, stop_cpu, &smdata);
> }
Could you please confirm this is correct?
I am not sure I understand how the code looks with the patch applied,
but the lockless set_state() above can confuse another stop_machine()
in progress?
Oleg.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists