diff options
-rw-r--r-- | arch/x86/kernel/entry_64.S | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S index 692c1da61905..e5ddf573ded2 100644 --- a/arch/x86/kernel/entry_64.S +++ b/arch/x86/kernel/entry_64.S | |||
@@ -529,10 +529,13 @@ sysret_signal: | |||
529 | jc sysret_audit | 529 | jc sysret_audit |
530 | #endif | 530 | #endif |
531 | /* edx: work flags (arg3) */ | 531 | /* edx: work flags (arg3) */ |
532 | leaq do_notify_resume(%rip),%rax | ||
533 | leaq -ARGOFFSET(%rsp),%rdi # &pt_regs -> arg1 | 532 | leaq -ARGOFFSET(%rsp),%rdi # &pt_regs -> arg1 |
534 | xorl %esi,%esi # oldset -> arg2 | 533 | xorl %esi,%esi # oldset -> arg2 |
535 | call ptregscall_common | 534 | SAVE_REST |
535 | FIXUP_TOP_OF_STACK %r11 | ||
536 | call do_notify_resume | ||
537 | RESTORE_TOP_OF_STACK %r11 | ||
538 | RESTORE_REST | ||
536 | movl $_TIF_WORK_MASK,%edi | 539 | movl $_TIF_WORK_MASK,%edi |
537 | /* Use IRET because user could have changed frame. This | 540 | /* Use IRET because user could have changed frame. This |
538 | works because ptregscall_common has called FIXUP_TOP_OF_STACK. */ | 541 | works because ptregscall_common has called FIXUP_TOP_OF_STACK. */ |