+5
−1
Loading
Ben reports that when running with CONFIG_DEBUG_PREEMPT, using __arch_counter_get_cntvct_stable() results in well deserves warnings, as we access a per-CPU variable without preemption disabled. Fix the issue by disabling preemption on reading the counter. We can probably do a lot better by not disabling preemption on systems that do not require horrible workarounds to return a valid counter value, but this plugs the issue for the time being. Fixes: 29cc0f3a ("arm64: Force the use of CNTVCT_EL0 in __delay()") Reported-by:Ben Horgan <ben.horgan@arm.com> Signed-off-by:
Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/aZw3EGs4rbQvbAzV@e134344.arm.com Tested-by:
Ben Horgan <ben.horgan@arm.com> Tested-by:
André Draszik <andre.draszik@linaro.org> Signed-off-by:
Will Deacon <will@kernel.org>