Messages in this thread | | | Subject | Re: [PATCH v2 2/6] arm64: Move kill_cpu_early to smp.c | From | "Suzuki K. Poulose" <> | Date | Tue, 1 Dec 2015 17:38:54 +0000 |
| |
On 01/12/15 16:31, Mark Rutland wrote: > For PSCI 0.2+ we can query AFFINITY_INFO to discover whether a CPU is > whether or not it is in the firmware (i.e. whether or not it is > potentially in the kernel), so we can certainly query this in some > cases. > > We already do this in the usual hotplug-off case; see cpu_kill.
OK, good to know.
>> Correct, I didn't think about kexec. May be we could indicate the result >> back (that we are looping in kernel) in secondary_data and that could solve >> the synchronisation part ? > > I think we need to have two flags, a cpu-must-die flag in secondary > data, and a global stuck-in-the-kernel flag. > > The CPU wanting to die could set its cpu-must-die flag, signal the > completion, then cpu_die(). The CPU awaiting the completion would then > check cpu-must-die, and if so, cpu_kill() that CPU. If not set, we had a > successful onlining.
Correct.
> > We need stuck-in-the-kernel flag to account for CPUs which didn't manage > to turn the MMU on (which are either in the spin-table, or failed when > they were individually onlined).
Did you mean to say "turn the MMU off" ?
Cheers Suzuki
| |