Parcourir la source

将entry.S中冗余的ret_from_syscall代码删除,改为jmp Restore_all (#98)

* 将entry.S中冗余的ret_from_syscall代码删除,改为jmp Restore_all
login il y a 2 ans
Parent
commit
036acc52ce
1 fichiers modifiés avec 1 ajouts et 28 suppressions
  1. 1 28
      kernel/src/exception/entry.S

+ 1 - 28
kernel/src/exception/entry.S

@@ -142,36 +142,9 @@ ENTRY(system_call)
     callq system_call_function
 
 
-
 // 从系统调用中返回
 ENTRY(ret_from_system_call)
-
-    popq %r15
-    popq %r14
-    popq %r13
-    popq %r12
-    popq %r11
-    popq %r10
-    popq %r9
-    popq %r8
-    popq %rbx
-    popq %rcx
-    popq %rdx
-    popq %rsi
-    popq %rdi
-    popq %rbp
-
-    popq %rax   //  不允许直接pop到ds
-    movq %rax, %ds
-
-    popq %rax
-    movq %rax, %es
-
-    popq %rax
-    addq $0x10, %rsp // 弹出变量FUNC和errcode
-
-    sti
-    iretq
+    jmp Restore_all