Skip to content

Commit 49a0bdb

Browse files
committed
Merge tag 'powerpc-6.2-5' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
Pull powerpc fixes from Michael Ellerman: - Fix interrupt exit race with security mitigation switching. - Don't select ARCH_WANTS_NO_INSTR until warnings are fixed. - Build fix for CONFIG_NUMA=n. Thanks to Nicholas Piggin, Randy Dunlap, and Sachin Sant. * tag 'powerpc-6.2-5' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: powerpc/64s/interrupt: Fix interrupt exit race with security mitigation switch powerpc/kexec_file: fix implicit decl error powerpc: Don't select ARCH_WANTS_NO_INSTR
2 parents 462a8e0 + 2ea31e2 commit 49a0bdb

File tree

3 files changed

+5
-3
lines changed

3 files changed

+5
-3
lines changed

arch/powerpc/Kconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,6 @@ config PPC
163163
select ARCH_WANT_IRQS_OFF_ACTIVATE_MM
164164
select ARCH_WANT_LD_ORPHAN_WARN
165165
select ARCH_WANTS_MODULES_DATA_IN_VMALLOC if PPC_BOOK3S_32 || PPC_8xx
166-
select ARCH_WANTS_NO_INSTR
167166
select ARCH_WEAK_RELEASE_ACQUIRE
168167
select BINFMT_ELF
169168
select BUILDTIME_TABLE_SORT

arch/powerpc/kernel/interrupt.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,18 @@ static inline bool exit_must_hard_disable(void)
5050
*/
5151
static notrace __always_inline bool prep_irq_for_enabled_exit(bool restartable)
5252
{
53+
bool must_hard_disable = (exit_must_hard_disable() || !restartable);
54+
5355
/* This must be done with RI=1 because tracing may touch vmaps */
5456
trace_hardirqs_on();
5557

56-
if (exit_must_hard_disable() || !restartable)
58+
if (must_hard_disable)
5759
__hard_EE_RI_disable();
5860

5961
#ifdef CONFIG_PPC64
6062
/* This pattern matches prep_irq_for_idle */
6163
if (unlikely(lazy_irq_pending_nocheck())) {
62-
if (exit_must_hard_disable() || !restartable) {
64+
if (must_hard_disable) {
6365
local_paca->irq_happened |= PACA_IRQ_HARD_DIS;
6466
__hard_RI_enable();
6567
}

arch/powerpc/kexec/file_load_64.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
#include <asm/firmware.h>
2727
#include <asm/kexec_ranges.h>
2828
#include <asm/crashdump-ppc64.h>
29+
#include <asm/mmzone.h>
2930
#include <asm/prom.h>
3031

3132
struct umem_info {

0 commit comments

Comments
 (0)