aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/ia32/ia32entry.S4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/x86/ia32/ia32entry.S b/arch/x86/ia32/ia32entry.S
index 64ced0b8f8fd..025f0f01d254 100644
--- a/arch/x86/ia32/ia32entry.S
+++ b/arch/x86/ia32/ia32entry.S
@@ -210,7 +210,9 @@ sysexit_from_sys_call:
210 sti 210 sti
211 movl %eax,%esi /* second arg, syscall return value */ 211 movl %eax,%esi /* second arg, syscall return value */
212 cmpl $-MAX_ERRNO,%eax /* is it an error ? */ 212 cmpl $-MAX_ERRNO,%eax /* is it an error ? */
213 setbe %al /* 1 if so, 0 if not */ 213 jbe 1f
214 movslq %eax, %rsi /* if error sign extend to 64 bits */
2151: setbe %al /* 1 if error, 0 if not */
214 movzbl %al,%edi /* zero-extend that into %edi */ 216 movzbl %al,%edi /* zero-extend that into %edi */
215 call __audit_syscall_exit 217 call __audit_syscall_exit
216 movq RAX-ARGOFFSET(%rsp),%rax /* reload syscall return value */ 218 movq RAX-ARGOFFSET(%rsp),%rax /* reload syscall return value */