[PATCH] Revert "arm64: Enable perf events based hard lockup detector"

Will Deacon will at kernel.org
Wed Jan 13 05:28:41 EST 2021


On Wed, Jan 13, 2021 at 12:00:01PM +0530, Sumit Garg wrote:
> On Wed, 13 Jan 2021 at 03:49, Will Deacon <will at kernel.org> wrote:
> >
> > This reverts commit 367c820ef08082e68df8a3bc12e62393af21e4b5.
> >
> > lockup_detector_init() makes heavy use of per-cpu variables and must be
> > called with preemption disabled. Usually, it's handled early during boot
> > in kernel_ionit_freeable(), before SMP has been initialised.
> >
> > Since we do not know whether or not our PMU interrupt can be signalled
> > as an NMI until considerably later in the boot process, the Arm PMU
> > driver attempts to re-initialise the lockup detector off the back of a
> > device_initcall(). Unfortunately, this is called from preemptible
> > context and results in the following splat:
> 
> Can we consider the following fix (compile tested only) to bind the
> call to lockup_detector_init() to a particular CPU instead of
> reverting the hard lockup detection feature as a whole?

I think the revert is the right approach for 5.11, and you still have time
to post a new (preferably more than just compile-tested!) version for 5.12.

This is a new feature so we have time to get it right.

Thanks,

Will



More information about the linux-arm-kernel mailing list