about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux')
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/syscall.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/x86_64/syscall.S b/sysdeps/unix/sysv/linux/x86_64/syscall.S
index 262a917d13..cf49dbcd19 100644
--- a/sysdeps/unix/sysv/linux/x86_64/syscall.S
+++ b/sysdeps/unix/sysv/linux/x86_64/syscall.S
@@ -21,7 +21,7 @@
 /* Please consult the file sysdeps/unix/sysv/linux/x86-64/sysdep.h for
    more information about the value -4095 used below.  */
 
-/* Usage: long syscall (syscall_number, arg1, arg2, arg3, arg4, arg5)
+/* Usage: long syscall (syscall_number, arg1, arg2, arg3, arg4, arg5, arg6)
    We need to do some arg shifting, the syscall_number will be in
    rax.  */
 
@@ -34,6 +34,7 @@ ENTRY (syscall)
 	movq %rcx, %rdx
 	movq %r8, %r10
 	movq %r9, %r8
+	movq 8(%rsp),%r9	/* arg6 is on the stack.  */
 	syscall			/* Do the system call.  */
 	cmpq $-4095, %rax	/* Check %rax for error.  */
 	jae SYSCALL_ERROR_LABEL	/* Jump to error handler if error.  */