Commit be9e6870 authored by Andi Kleen's avatar Andi Kleen Committed by Linus Torvalds

[PATCH] x86_64: interrupt handling fix

- Initialize workmask correctly on interrupt signal handling

- Readd missing cli's in the interrupt return path.
Signed-off-by: default avatarAndi Kleen <ak@suse.de>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 3c3b73b6
......@@ -296,6 +296,7 @@ int_very_careful:
call syscall_trace_leave
popq %rdi
andl $~(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SINGLESTEP),%edi
cli
jmp int_restore_rest
int_signal:
......@@ -307,6 +308,7 @@ int_signal:
1: movl $_TIF_NEED_RESCHED,%edi
int_restore_rest:
RESTORE_REST
cli
jmp int_with_check
CFI_ENDPROC
......@@ -490,7 +492,8 @@ retint_signal:
call do_notify_resume
RESTORE_REST
cli
GET_THREAD_INFO(%rcx)
GET_THREAD_INFO(%rcx)
movl $_TIF_WORK_MASK,%edi
jmp retint_check
#ifdef CONFIG_PREEMPT
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment