mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 14:10:49 +07:00
[PATCH] x86_64: Fix a small missing schedule race
Could lead to a lost reschedule event when the process already rescheduled on exception exit, and needs it again while still being in the kernel. Unlikely case though. Also remove one redundant cli in another entry.S path. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
6fefb0d175
commit
cdd219cd1f
@ -284,6 +284,7 @@ int_careful:
|
||||
pushq %rdi
|
||||
call schedule
|
||||
popq %rdi
|
||||
cli
|
||||
jmp int_with_check
|
||||
|
||||
/* handle signals and tracing -- both require a full stack frame */
|
||||
@ -453,7 +454,6 @@ retint_check:
|
||||
andl %edi,%edx
|
||||
jnz retint_careful
|
||||
retint_swapgs:
|
||||
cli
|
||||
swapgs
|
||||
retint_restore_args:
|
||||
cli
|
||||
|
Loading…
Reference in New Issue
Block a user