linux_dsm_epyc7002/arch/powerpc/platforms
Nicholas Piggin b1e155ccc8 powerpc/64: irq replay remove decrementer overflow check
[ Upstream commit 59d512e4374b2d8a6ad341475dc94c4a4bdec7d3 ]

This is way to catch some cases of decrementer overflow, when the
decrementer has underflowed an odd number of times, while MSR[EE] was
disabled.

With a typical small decrementer, a timer that fires when MSR[EE] is
disabled will be "lost" if MSR[EE] remains disabled for between 4.3 and
8.6 seconds after the timer expires. In any case, the decrementer
interrupt would be taken at 8.6 seconds and the timer would be found at
that point.

So this check is for catching extreme latency events, and it prevents
those latencies from being a further few seconds long.  It's not obvious
this is a good tradeoff. This is already a watchdog magnitude event and
that situation is not improved a significantly with this check. For
large decrementers, it's useless.

Therefore remove this check, which avoids a mftb when enabling hard
disabled interrupts (e.g., when enabling after coming from hardware
interrupt handlers). Perhaps more importantly, it also removes the
clunky MSR[EE] vs PACA_IRQ_HARD_DIS incoherency in soft-interrupt replay
which simplifies the code.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20201107014336.2337337-1-npiggin@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-01-06 14:56:54 +01:00
..
4xx
8xx powerpc/8xx: Fix early debug when SMC1 is relocated 2020-12-30 11:54:16 +01:00
40x
44x
52xx
82xx
83xx
85xx
86xx
512x
amigaone
cell
chrp
embedded6xx
maple
pasemi
powermac powerpc/powermac: Fix low_sleep_handler with CONFIG_VMAP_STACK 2020-12-30 11:53:43 +01:00
powernv powerpc/64: irq replay remove decrementer overflow check 2021-01-06 14:56:54 +01:00
ps3
pseries powerpc/pseries/hibernation: remove redundant cacheinfo update 2020-12-30 11:53:43 +01:00
fsl_uli1575.c
Kconfig
Kconfig.cputype powerpc/powermac: Fix low_sleep_handler with CONFIG_VMAP_STACK 2020-12-30 11:53:43 +01:00
Makefile