PATCH: more syscall signatures

Greg McGary greg@kayak.mcgary.org
Mon Jun 26 16:15:00 GMT 2000


The PowerPC __syscall_setrlimit had an arg-count of 3, which
AFAIK should be 2.  (I found no evidence of a 3-arg setrlimit
anywhere in glibc sources)

The only remaining calls without signatures in the generic linux
syscalls.list are these:

create_module	EXTRA	create_module	3	create_module
delete_module	EXTRA	delete_module	3	delete_module
init_module	EXTRA	init_module	5	init_module

I looked at the Linux kernel source briefly but found that the
sys_{create,delete,init}_module interfaces took fewer args
than indicated above (1, 1 and 2 respectively).  I'll leave
these alone until I get better information.

OK?

2000-06-26  Greg McGary  <greg@mcgary.org>

	* sysdeps/unix/sysv/linux/syscalls.list: Add missing signatures.
	* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Replace
	arg-count with signatures.

Index: sysdeps/unix/sysv/linux/syscalls.list
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/syscalls.list,v
retrieving revision 1.77
diff -u -p -r1.77 syscalls.list
--- syscalls.list	2000/06/13 08:24:20	1.77
+++ syscalls.list	2000/06/26 23:15:14
@@ -2,11 +2,11 @@
 
 adjtimex	adjtime	adjtimex	i:p	__adjtimex	adjtimex ntp_adjtime
 bdflush		EXTRA	bdflush		i:ii	bdflush
-capget		EXTRA	capget		2	capget
-capset		EXTRA	capset		2	capset
-clock_getres	-	clock_getres	2	clock_getres
-clock_gettime	-	clock_gettime	2	clock_gettime
-clock_settime	-	clock_settime	2	clock_settime
+capget		EXTRA	capget		i:pp	capget
+capset		EXTRA	capset		i:pp	capset
+clock_getres	-	clock_getres	i:ip	clock_getres
+clock_gettime	-	clock_gettime	i:ip	clock_gettime
+clock_settime	-	clock_settime	i:ip	clock_settime
 create_module	EXTRA	create_module	3	create_module
 delete_module	EXTRA	delete_module	3	delete_module
 fdatasync	-	fdatasync	i:i	fdatasync
@@ -60,10 +60,10 @@ sigaltstack	-	sigaltstack	i:pp	__sigalts
 sysinfo		EXTRA	sysinfo		i:p	sysinfo
 swapon		-	swapon		i:si	__swapon	swapon
 swapoff		-	swapoff		i:s	__swapoff	swapoff
-timer_create	-	timer_create	3	timer_create
-timer_delete	-	timer_delete	1	timer_delete
-timer_getoverr	-	timer_getoverrun	1	timer_getoverrun
-timer_gettime	-	timer_gettime	2	timer_gettime
-timer_settime	-	timer_settime	4	timer_settime
+timer_create	-	timer_create	i:ipp	timer_create
+timer_delete	-	timer_delete	i:i	timer_delete
+timer_getoverr	-	timer_getoverrun i:i	timer_getoverrun
+timer_gettime	-	timer_gettime	i:ip	timer_gettime
+timer_settime	-	timer_settime	i:iipp	timer_settime
 uselib		EXTRA	uselib		i:s	uselib
 wait4		-	wait4		i:ipip	__wait4		wait4
Index: sysdeps/unix/sysv/linux/powerpc/syscalls.list
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/powerpc/syscalls.list,v
retrieving revision 1.20
diff -u -p -r1.20 syscalls.list
--- syscalls.list	2000/06/12 07:13:22	1.20
+++ syscalls.list	2000/06/26 22:59:45
@@ -1,50 +1,50 @@
 # File name	Caller	Syscall name	# args	Strong name	Weak names
 
 # System calls with wrappers.
-s_ioctl		ioctl	ioctl		3	__syscall_ioctl
-s_ipc		msgget	ipc		5	__syscall_ipc
-s_llseek	llseek	_llseek		5	__syscall__llseek
-s_chown		chown	chown		3	__syscall_chown
-s_execve	execve	execve		3	__syscall_execve
-rt_sigaction	-	rt_sigaction	4	__syscall_rt_sigaction
-rt_sigpending	-	rt_sigpending	2	__syscall_rt_sigpending
-rt_sigprocmask	-	rt_sigprocmask	4	__syscall_rt_sigprocmask
-rt_sigqueueinfo	-	rt_sigqueueinfo	3	__syscall_rt_sigqueueinfo
-rt_sigsuspend	-	rt_sigsuspend	2	__syscall_rt_sigsuspend
-rt_sigtimedwait	-	rt_sigtimedwait	4	__syscall_rt_sigtimedwait
-s_fstat64	fxstat64 fstat64	2	__syscall_fstat64
-s_ftruncate64	ftruncate64 ftruncate64	3	__syscall_ftruncate64
-s_getcwd	getcwd	getcwd		2	__syscall_getcwd
-s_getdents	getdents getdents	3	__syscall_getdents
-s_getpmsg	getpmsg	getpmsg		5	__syscall_getpmsg
-s_getpriority	getpriority getpriority	2	__syscall_getpriority
-getresgid	-	getresgid	3	getresgid
-getresuid	-	getresuid	3	getresuid
-s_getrlimit	getrlimit getrlimit	2	__syscall_getrlimit
-s_lstat64	lxstat64 lstat64	2	__syscall_lstat64
-s_mmap2		mmap64	mmap2		6	__syscall_mmap2
-s_poll		poll	poll		3	__syscall_poll
-s_pread64	pread64	pread		5	__syscall_pread
-s_ptrace	ptrace	ptrace		4	__syscall_ptrace
-s_putpmsg	putpmsg	putpmsg		5	__syscall_putpmsg
-s_pwrite64	pwrite64 pwrite		5	__syscall_pwrite
-s_reboot	reboot	reboot		3	__syscall_reboot
-s_setrlimit	setrlimit setrlimit	3	__syscall_setrlimit
-s_sigaction	sigaction sigaction	3	__syscall_sigaction
-s_sigpending	sigpending sigpending	1	__syscall_sigpending
-s_sigprocmask	sigprocmask sigprocmask	3	__syscall_sigprocmask
-s_sigsuspend	sigsuspend sigsuspend	3	__syscall_sigsuspend
-s_stat64	xstat64 stat64		2	__syscall_stat64
-s_sysctl	sysctl	_sysctl		1	__syscall__sysctl
-s_truncate64	truncate64 truncate64	3	__syscall_truncate64
-s_ugetrlimit	getrlimit ugetrlimit	2	__syscall_ugetrlimit
-s_ustat		ustat	ustat		2	__syscall_ustat
-s_vfork		vfork	vfork		0	__syscall_vfork
-sys_fstat	fxstat	fstat		2	__syscall_fstat
-sys_lstat	lxstat	lstat		2	__syscall_lstat
-sys_mknod	xmknod	mknod		3	__syscall_mknod
-sys_readv	readv	readv		3	__syscall_readv
-sys_stat	xstat	stat		2	__syscall_stat
-sys_writev	writev	writev		3	__syscall_writev
-oldgetrlimit	EXTRA	getrlimit	2	__old_getrlimit	getrlimit@GLIBC_2.0
-oldsetrlimit	EXTRA	setrlimit	2	__old_setrlimit	setrlimit@GLIBC_2.0
+s_ioctl		ioctl	ioctl		i:iip	__syscall_ioctl
+s_ipc		msgget	ipc		i:iiiip	__syscall_ipc
+s_llseek	llseek	_llseek		i:iiipi	__syscall__llseek
+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
+rt_sigpending	-	rt_sigpending	i:pi	__syscall_rt_sigpending
+rt_sigprocmask	-	rt_sigprocmask	i:ippi	__syscall_rt_sigprocmask
+rt_sigqueueinfo	-	rt_sigqueueinfo	i:iip	__syscall_rt_sigqueueinfo
+rt_sigsuspend	-	rt_sigsuspend	i:pi	__syscall_rt_sigsuspend
+rt_sigtimedwait	-	rt_sigtimedwait	i:pppi	__syscall_rt_sigtimedwait
+s_fstat64	fxstat64 fstat64	i:ip	__syscall_fstat64
+s_ftruncate64	ftruncate64 ftruncate64	i:iii	__syscall_ftruncate64
+s_getcwd	getcwd	getcwd		i:pi	__syscall_getcwd
+s_getdents	getdents getdents	i:ipi	__syscall_getdents
+s_getpmsg	getpmsg	getpmsg		i:ipppp	__syscall_getpmsg
+s_getpriority	getpriority getpriority	i:ii	__syscall_getpriority
+getresgid	-	getresgid	i:ppp	getresgid
+getresuid	-	getresuid	i:ppp	getresuid
+s_getrlimit	getrlimit getrlimit	i:ip	__syscall_getrlimit
+s_lstat64	lxstat64 lstat64	i:sp	__syscall_lstat64
+s_mmap2		mmap64	mmap2		p:piiiii __syscall_mmap2
+s_poll		poll	poll		i:pii	__syscall_poll
+s_pread64	pread64	pread		i:ipiii	__syscall_pread
+s_ptrace	ptrace	ptrace		i:iipp	__syscall_ptrace
+s_putpmsg	putpmsg	putpmsg		i:ippii	__syscall_putpmsg
+s_pwrite64	pwrite64 pwrite		i:ipiii	__syscall_pwrite
+s_reboot	reboot	reboot		i:iii	__syscall_reboot
+s_setrlimit	setrlimit setrlimit	i:ip	__syscall_setrlimit
+s_sigaction	sigaction sigaction	i:ipp	__syscall_sigaction
+s_sigpending	sigpending sigpending	i:p	__syscall_sigpending
+s_sigprocmask	sigprocmask sigprocmask	i:ipp	__syscall_sigprocmask
+s_sigsuspend	sigsuspend sigsuspend	i:iii	__syscall_sigsuspend
+s_stat64	xstat64 stat64		i:sp	__syscall_stat64
+s_sysctl	sysctl	_sysctl		i:p	__syscall__sysctl
+s_truncate64	truncate64 truncate64	i:sii	__syscall_truncate64
+s_ugetrlimit	getrlimit ugetrlimit	i:ip	__syscall_ugetrlimit
+s_ustat		ustat	ustat		i:ip	__syscall_ustat
+s_vfork		vfork	vfork		i:	__syscall_vfork
+sys_fstat	fxstat	fstat		i:ip	__syscall_fstat
+sys_lstat	lxstat	lstat		i:sp	__syscall_lstat
+sys_mknod	xmknod	mknod		i:pii	__syscall_mknod
+sys_readv	readv	readv		i:ipi	__syscall_readv
+sys_stat	xstat	stat		i:sp	__syscall_stat
+sys_writev	writev	writev		i:ipi	__syscall_writev
+oldgetrlimit	EXTRA	getrlimit	i:ip	__old_getrlimit	getrlimit@GLIBC_2.0
+oldsetrlimit	EXTRA	setrlimit	i:ip	__old_setrlimit	setrlimit@GLIBC_2.0


More information about the Libc-hacker mailing list