Re: [PATCH v3 13/24] arm64: Populate cpuinfo after notify_cpu_starting

From: Suzuki K. Poulose
Date: Thu Oct 15 2015 - 09:23:59 EST


On 15/10/15 11:54, Catalin Marinas wrote:
On Tue, Oct 13, 2015 at 06:22:21PM +0100, Suzuki K. Poulose wrote:
This patch delays populating the cpuinfo for a new (hotplugged)
CPU until the notifiers have executed. This will enable us to verify
if the new (hotplugged) CPU has all the capabilities which the system
already has. If it doesn't, we could prevent it from turning online and
also modifying the system wide feature register status.

Just a question here: do we expect the notifiers to enable certain
features that we check later? AFAICT, the checking is done on the
feature registers which don't change after notifiers,

No. The notifiers are registered only after we compute the cpu
capabilities (at which point all the boot time activated CPUs are
turned on and has updated their cpuinfo). The features won't change
after this point throughout the lifetime of the system. So we don't want to
run the capability check for the 'CPUs' during the normal boot up. It
is only for the hotplug case. We compute the capability based on the
booted CPUs from smp_cpus_done() and then apply the alternatives based
on what we have in common. So the system can function properly with
mismatched features from the CPUs. But if a new CPU is brought online
with at least one missing established capability, we should fail the bring up.

so we could as
well block the booting before any notifier is run.


Thanks
Suzuki





--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/