@@ -57,15 +57,6 @@ SYM_CODE_START(entry_SYSENTER_compat)
57
57
58
58
movq PER_CPU_VAR(cpu_current_top_of_stack), %rsp
59
59
60
- /*
61
- * User tracing code (ptrace or signal handlers) might assume that
62
- * the saved RAX contains a 32-bit number when we're invoking a 32-bit
63
- * syscall. Just in case the high bits are nonzero, zero-extend
64
- * the syscall number. (This could almost certainly be deleted
65
- * with no ill effects.)
66
- */
67
- movl %eax , %eax
68
-
69
60
/* Construct struct pt_regs on stack */
70
61
pushq $__USER32_DS /* pt_regs->ss */
71
62
pushq $0 /* pt_regs->sp = 0 (placeholder) */
@@ -80,6 +71,16 @@ SYM_CODE_START(entry_SYSENTER_compat)
80
71
pushq $__USER32_CS /* pt_regs->cs */
81
72
pushq $0 /* pt_regs->ip = 0 (placeholder) */
82
73
SYM_INNER_LABEL(entry_SYSENTER_compat_after_hwframe, SYM_L_GLOBAL)
74
+
75
+ /*
76
+ * User tracing code (ptrace or signal handlers) might assume that
77
+ * the saved RAX contains a 32-bit number when we're invoking a 32-bit
78
+ * syscall. Just in case the high bits are nonzero, zero-extend
79
+ * the syscall number. (This could almost certainly be deleted
80
+ * with no ill effects.)
81
+ */
82
+ movl %eax , %eax
83
+
83
84
pushq %rax /* pt_regs->orig_ax */
84
85
pushq %rdi /* pt_regs->di */
85
86
pushq %rsi /* pt_regs->si */
0 commit comments