android_kernel_samsung_a7y1.../arch
Thomas Gleixner 6b35180dc1 x86/irq/64: Limit IST stack overflow check to #DB stack
[ Upstream commit 7dbcf2b0b770eeb803a416ee8dcbef78e6389d40 ]

Commit

  37fe6a42b343 ("x86: Check stack overflow in detail")

added a broad check for the full exception stack area, i.e. it considers
the full exception stack area as valid.

That's wrong in two aspects:

 1) It does not check the individual areas one by one

 2) #DF, NMI and #MCE are not enabling interrupts which means that a
    regular device interrupt cannot happen in their context. In fact if a
    device interrupt hits one of those IST stacks that's a bug because some
    code path enabled interrupts while handling the exception.

Limit the check to the #DB stack and consider all other IST stacks as
'overflow' or invalid.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Mitsuo Hayasaka <mitsuo.hayasaka.hu@hitachi.com>
Cc: Nicolai Stange <nstange@suse.de>
Cc: Sean Christopherson <sean.j.christopherson@intel.com>
Cc: x86-ml <x86@kernel.org>
Link: https://lkml.kernel.org/r/20190414160143.682135110@linutronix.de
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-04-06 18:18:58 +02:00
..
alpha A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
arc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
arm KVM: arm/arm64: Ensure vcpu target is unset on reset failure 2020-04-06 18:14:37 +02:00
arm64 Merge branch 'master' of https://github.com/prashantpaddune/android_device_samsung_a7y18lte 2020-04-06 19:42:12 +05:30
avr32 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
blackfin A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
c6x A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cris A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
frv A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
h8300 h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- 2020-04-06 14:21:05 +02:00
hexagon A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ia64 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
m32r A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
m68k A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
metag A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
microblaze A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mips MIPS: scall64-o32: Fix indirect syscall number load 2020-04-06 16:38:39 +02:00
mn10300 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
nios2 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
openrisc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
parisc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
powerpc powerpc/numa: improve control of topology updates 2020-04-06 18:18:51 +02:00
s390 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
score A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sh A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sparc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
tile A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
um A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
unicore32 A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
x86 x86/irq/64: Limit IST stack overflow check to #DB stack 2020-04-06 18:18:58 +02:00
xtensa xtensa: fix return_address 2020-04-06 15:16:44 +02:00
Kconfig A750FXXU4CTBC 2020-03-27 21:51:54 +05:30