]> git.baikalelectronics.ru Git - kernel.git/commit
x86/traps: Correct exc_general_protection() and math_error() return paths
authorThomas Tai <thomas.tai@oracle.com>
Thu, 8 Apr 2021 17:28:33 +0000 (13:28 -0400)
committerBorislav Petkov <bp@suse.de>
Fri, 9 Apr 2021 11:45:09 +0000 (13:45 +0200)
commit24f973627351cc7f31c6fa1d06b474bad3ae0f6d
treeb4581824c67a657e741df1fb5d69378db1249017
parent83eb5ea7dc18750630ac5ddc4504ff992aae1907
x86/traps: Correct exc_general_protection() and math_error() return paths

Commit

  7bbb474a191d ("x86/traps: Attempt to fixup exceptions in vDSO before signaling")

added return statements which bypass calling cond_local_irq_disable().

According to

  ed930e73858b ("x86/traps: Make interrupt enable/disable symmetric in C code"),

cond_local_irq_disable() is needed because the asm return code no longer
disables interrupts. Follow the existing code as an example to use "goto
exit" instead of "return" statement.

 [ bp: Massage commit message. ]

Fixes: 7bbb474a191d ("x86/traps: Attempt to fixup exceptions in vDSO before signaling")
Signed-off-by: Thomas Tai <thomas.tai@oracle.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
Link: https://lkml.kernel.org/r/1617902914-83245-1-git-send-email-thomas.tai@oracle.com
arch/x86/kernel/traps.c