Re: [PATCH 5/5] perf/arm_dsu: Fix CPU hotplug races

From: Robin Murphy
Date: Tue Feb 05 2019 - 08:04:29 EST


Hi Suzuki,

On 05/02/2019 11:40, Suzuki K Poulose wrote:
On 04/02/2019 17:09, Robin Murphy wrote:
Like other system PMUs which associate themselves with an arbitrary CPU
for housekeeping purposes, arm_dsu has a race between registering the
hotplug notifier and registering the PMU device, such that the hotplug
niotifier can potentially fire and attempt to migrate the PMU context
before the latter is valid. This is easily resolved by inhibiting
hotplug until both the notifier and PMU device are successfully set up.

For the same reason, also suppress any synchronous notifier calls in the
cleanup path if PMU registration fails.

Signed-off-by: Robin Murphy <robin.murphy@xxxxxxx>

Should we add :

Fixes: commit 7520fa99246dade7ab6 ("perf: ARM DynamIQ Shared Unit PMU support")

Either way:

Reviewed-by: Suzuki K Poulose <suzuki.poulose@xxxxxxx>

Thanks for the reviews! I think this patch is worthwhile for cleanliness and consistency, but since it's neither self-contained (with the dependency on #4) nor "fix[ing] a real bug that bothers people" I'm not convinced it really deserves backporting - unlike the preemption issue, actually getting a crash from this race in practice is unlikely enough that it would probably require some determined, deliberate effort to trigger it with just the right conditions.

Cheers,
Robin.