hw_x86_64: Restore kernel register values from master context

Set stack pointer to master context and restore kernel register by popping
the values from the master context.
This commit is contained in:
Adrian-Ken Rueegsegger 2015-02-20 16:11:41 +01:00 committed by Christian Helmuth
parent 7b051c0531
commit c62b4ea36a
1 changed files with 18 additions and 0 deletions

View File

@ -115,6 +115,24 @@
mov %rbx, %fs
mov %rbx, %gs
/* Restore register values from kernel context */
mov $_mt_master_context_begin+R8_OFFSET, %rsp
popq %r8
popq %r9
popq %r10
popq %r11
popq %r12
popq %r13
popq %r14
popq %r15
popq %rax
popq %rbx
popq %rcx
popq %rdx
popq %rdi
popq %rsi
popq %rbp
1: jmp 1b
.global _mt_user_entry_pic