arm64: abort counter_read_on_cpu() when irqs_disabled()
authorIonela Voinescu <ionela.voinescu@arm.com>
Fri, 13 Nov 2020 15:53:28 +0000 (15:53 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Fri, 13 Nov 2020 20:14:58 +0000 (20:14 +0000)
commit74490422522d125451cac400fce5d4e6bb9e1fea
treeb1915773f92d428989e2923a05c8348fc99c233c
parent68c5debcc06d6d24f15dbf978780fc5efc147d5e
arm64: abort counter_read_on_cpu() when irqs_disabled()

Given that smp_call_function_single() can deadlock when interrupts are
disabled, abort the SMP call if irqs_disabled(). This scenario is
currently not possible given the function's uses, but safeguard this for
potential future uses.

Signed-off-by: Ionela Voinescu <ionela.voinescu@arm.com>
Cc: Will Deacon <will@kernel.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Link: https://lore.kernel.org/r/20201113155328.4194-1-ionela.voinescu@arm.com
[catalin.marinas@arm.com: modified following Mark's comment]
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/kernel/topology.c