[PATCH] arm64: cpu hotplug: ensure we mask out CPU_TASKS_FROZEN in notifiers
Lorenzo Pieralisi
lorenzo.pieralisi at arm.com
Mon Sep 14 11:08:08 PDT 2015
On Mon, Sep 14, 2015 at 05:59:51PM +0100, Will Deacon wrote:
> We have a couple of CPU hotplug notifiers for resetting the CPU debug
> state to a sane value when a CPU comes online.
>
> This patch ensures that we mask out CPU_TASKS_FROZEN so that we don't
> miss any online events occuring due to suspend/resume.
>
> Signed-off-by: Will Deacon <will.deacon at arm.com>
> ---
> arch/arm64/kernel/debug-monitors.c | 2 +-
> arch/arm64/kernel/hw_breakpoint.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi at arm.com>
>
> diff --git a/arch/arm64/kernel/debug-monitors.c b/arch/arm64/kernel/debug-monitors.c
> index 9b3b62ac9c24..cebf78661a55 100644
> --- a/arch/arm64/kernel/debug-monitors.c
> +++ b/arch/arm64/kernel/debug-monitors.c
> @@ -134,7 +134,7 @@ static int os_lock_notify(struct notifier_block *self,
> unsigned long action, void *data)
> {
> int cpu = (unsigned long)data;
> - if (action == CPU_ONLINE)
> + if ((action & ~CPU_TASKS_FROZEN) == CPU_ONLINE)
> smp_call_function_single(cpu, clear_os_lock, NULL, 1);
> return NOTIFY_OK;
> }
> diff --git a/arch/arm64/kernel/hw_breakpoint.c b/arch/arm64/kernel/hw_breakpoint.c
> index 565244fd57ff..2926c3dd6479 100644
> --- a/arch/arm64/kernel/hw_breakpoint.c
> +++ b/arch/arm64/kernel/hw_breakpoint.c
> @@ -878,7 +878,7 @@ static int hw_breakpoint_reset_notify(struct notifier_block *self,
> void *hcpu)
> {
> int cpu = (long)hcpu;
> - if (action == CPU_ONLINE)
> + if ((action & ~CPU_TASKS_FROZEN) == CPU_ONLINE)
> smp_call_function_single(cpu, hw_breakpoint_reset, NULL, 1);
> return NOTIFY_OK;
> }
> --
> 2.1.4
>
More information about the linux-arm-kernel
mailing list