This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Fix sendfile on x86_64


Hi!

On x86_64 it matters how many arguments one declares for syscall.
sendfile has 3 args, scalar, scalar, pointer, scalar, yet it was declared
as i:iip, which means %rcx was not moved to %r10.
While at it, I've fixed a couple of other signatures too, full
review would be good some time.

2002-12-05  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
	args to i:iipi.
	(readahead): Change args to i:iii.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
	Change args to i:iii.
	* sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
	args to i:iiii.

--- libc/sysdeps/unix/sysv/linux/mips/syscalls.list.jj	2002-11-05 23:10:46.000000000 +0100
+++ libc/sysdeps/unix/sysv/linux/mips/syscalls.list	2002-12-06 01:16:52.000000000 +0100
@@ -66,7 +66,7 @@ s_pread64	pread64	pread		i:ibniii __sysc
 s_putpmsg	putpmsg	putpmsg		i:ippii	__syscall_putpmsg
 s_ptrace	ptrace	ptrace		i:iipp	__syscall_ptrace
 s_pwrite64	pwrite64 pwrite		i:ibniii __syscall_pwrite
-s_readahead	EXTRA	readahead	i:iipi	__syscall_readahead
+s_readahead	EXTRA	readahead	i:iiii	__syscall_readahead
 s_reboot	reboot	reboot		i:iii	__syscall_reboot
 s_setrlimit	setrlimit setrlimit	i:ip	__syscall_setrlimit
 s_sigpending	sigpending sigpending	i:p	__syscall_sigpending
--- libc/sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list.jj	2002-10-14 09:29:05.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list	2002-12-06 01:18:12.000000000 +0100
@@ -4,7 +4,7 @@
 s_ioctl		ioctl	ioctl		i:iiI	__syscall_ioctl
 s_ipc		msgget	ipc		i:iiiip	__syscall_ipc
 s_llseek	llseek	_llseek		i:iiipi	__syscall__llseek
-s_readahead	readahead readahead	i:iiii	__syscall_readahead
+s_readahead	readahead readahead	i:iii	__syscall_readahead
 s_chown		chown	chown		i:sii	__syscall_chown
 s_execve	execve	execve		i:spp	__syscall_execve
 rt_sigaction	-	rt_sigaction	i:ippi	__syscall_rt_sigaction
--- libc/sysdeps/unix/sysv/linux/x86_64/syscalls.list.jj	2002-12-06 01:03:38.000000000 +0100
+++ libc/sysdeps/unix/sysv/linux/x86_64/syscalls.list	2002-12-06 01:15:42.000000000 +0100
@@ -12,8 +12,8 @@ getrlimit	-	getrlimit	i:ip	__getrlimit	g
 setrlimit	-	setrlimit	i:ip	__setrlimit	setrlimit64 setrlimit
 ftruncate	-	ftruncate	i:ii	__ftruncate	ftruncate ftruncate64 __ftruncate64
 truncate	-	truncate	i:si	truncate	truncate64
-readahead	-	readahead	i:iipi	__readahead	readahead
-sendfile	-	sendfile	i:iip	sendfile	sendfile64
+readahead	-	readahead	i:iii	__readahead	readahead
+sendfile	-	sendfile	i:iipi	sendfile	sendfile64
 
 # semaphore and shm system calls
 msgctl		-	msgctl		i:iip	__msgctl	msgctl

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]