Module Name:    src
Committed By:   njoly
Date:           Fri Jan 10 19:44:47 UTC 2014

Modified Files:
        src/sys/rump/kern/lib/libsys_linux: linux_rump.c syscalls.master

Log Message:
Do not redefine linux syscalls arguments, just use compat ones
instead.
Include linux_socketcall.h to bring missing socket syscall
arguments/prototypes on arches that have socketcall(2).
Finally, cleanup rump linux syscall wrapper, to remove linux syscall
argument/prototype local copy.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/rump/kern/lib/libsys_linux/linux_rump.c
cvs rdiff -u -r1.10 -r1.11 src/sys/rump/kern/lib/libsys_linux/syscalls.master

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/rump/kern/lib/libsys_linux/linux_rump.c
diff -u src/sys/rump/kern/lib/libsys_linux/linux_rump.c:1.1 src/sys/rump/kern/lib/libsys_linux/linux_rump.c:1.2
--- src/sys/rump/kern/lib/libsys_linux/linux_rump.c:1.1	Sat Dec 14 10:29:45 2013
+++ src/sys/rump/kern/lib/libsys_linux/linux_rump.c	Fri Jan 10 19:44:47 2014
@@ -1,28 +1,13 @@
-/*	$NetBSD: linux_rump.c,v 1.1 2013/12/14 10:29:45 njoly Exp $	*/
+/*	$NetBSD: linux_rump.c,v 1.2 2014/01/10 19:44:47 njoly Exp $	*/
 
 #include <sys/param.h>
 
 #include <compat/linux/common/linux_types.h>
 #include <compat/linux/common/linux_signal.h>
+#include <compat/linux/linux_syscallargs.h>
 
 #include "rump_linux_syscallargs.h"
 
-/*
-    compat/linux/arch/.../syscallargs.h and rump_linux_syscallargs.h
-    define the same syscall arguments and prototypes, thus cannot be
-    both used. Just copy needed linux stuff for now to avoid conflicts.
-*/
-
-struct linux_sys_mknodat_args {
-        syscallarg(int) fd;
-        syscallarg(const char *) path;
-        syscallarg(mode_t) mode;
-        syscallarg(unsigned) dev;
-};
-check_syscall_args(linux_sys_mknodat)
-
-int     linux_sys_mknodat(struct lwp *, const struct linux_sys_mknodat_args *, register_t *);
-
 int
 rump_linux_sys_mknodat(struct lwp *l,
     const struct rump_linux_sys_mknodat_args *uap, register_t *retval)

Index: src/sys/rump/kern/lib/libsys_linux/syscalls.master
diff -u src/sys/rump/kern/lib/libsys_linux/syscalls.master:1.10 src/sys/rump/kern/lib/libsys_linux/syscalls.master:1.11
--- src/sys/rump/kern/lib/libsys_linux/syscalls.master:1.10	Sat Dec 14 17:34:47 2013
+++ src/sys/rump/kern/lib/libsys_linux/syscalls.master	Fri Jan 10 19:44:47 2014
@@ -1,4 +1,4 @@
-	$NetBSD: syscalls.master,v 1.10 2013/12/14 17:34:47 njoly Exp $
+	$NetBSD: syscalls.master,v 1.11 2014/01/10 19:44:47 njoly Exp $
 
 ;	@(#)syscalls.master	8.2 (Berkeley) 1/13/94
 
@@ -34,6 +34,12 @@
 
 #include <compat/linux/common/linux_types.h>
 #include <compat/linux/common/linux_signal.h>
+#include <compat/linux/linux_syscallargs.h>
+#include <compat/linux/linux_syscall.h>
+
+#ifdef LINUX_SYS_socketcall
+#include <compat/linux/common/linux_socketcall.h>
+#endif
 
 #include "rump_linux_syscallargs.h"
 
@@ -45,13 +51,13 @@
 3	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
 4	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
 			    size_t nbyte); }
-5	NODEF		{ int|linux_sys||open(const char *path, \
+5	NOARGS		{ int|linux_sys||open(const char *path, \
 			    int flags, int mode); }
 6	NOARGS	 	{ int|sys||close(int fd); }
 7	UNIMPL		wait4
 8	UNIMPL		creat
 9	NOARGS 		{ int|sys||link(const char *path, const char *link); }
-10	NODEF 	 	{ int|linux_sys||unlink(const char *path); }
+10	NOARGS 	 	{ int|linux_sys||unlink(const char *path); }
 11	UNIMPL		execv
 12	NOARGS 	 	{ int|sys||chdir(const char *path); }
 13	NOARGS 	 	{ int|sys||fchdir(int fd); }
@@ -69,18 +75,18 @@
 24	NOARGS		{ uid_t|sys||getuid_with_euid(void); } getuid
 25	NOARGS		{ uid_t|sys||geteuid(void); }
 26	UNIMPL 		ptrace
-27	NODEF 		{ ssize_t|linux_sys||recvmsg(int s, \
+27	NOARGS 		{ ssize_t|linux_sys||recvmsg(int s, \
 			    struct linux_msghdr *msg, int flags); }
-28	NODEF 		{ ssize_t|linux_sys||sendmsg(int s, \
+28	NOARGS 		{ ssize_t|linux_sys||sendmsg(int s, \
 			    const struct linux_msghdr *msg, int flags); }
-29	NODEF 		{ ssize_t|linux_sys||recvfrom(int s, void *buf, \
+29	NOARGS 		{ ssize_t|linux_sys||recvfrom(int s, void *buf, \
 			    int len, int flags, struct osockaddr *from, \
 			    int *fromlenaddr); }
-30	NODEF		{ int|linux_sys||accept(int s, struct osockaddr *name, \
+30	NOARGS		{ int|linux_sys||accept(int s, struct osockaddr *name, \
 			    int *anamelen); }
-31	NODEF		{ int|linux_sys||getpeername(int fdes, \
+31	NOARGS		{ int|linux_sys||getpeername(int fdes, \
 			    struct osockaddr *asa, int *alen); }
-32	NODEF		{ int|linux_sys||getsockname(int fdes, \
+32	NOARGS		{ int|linux_sys||getsockname(int fdes, \
 			    struct osockaddr *asa, int *alen); }
 33	NOARGS 		{ int|sys||access(const char *path, int flags); }
 34	UNIMPL		chflags
@@ -106,7 +112,7 @@
 51	UNIMPL		acct
 52	UNIMPL  	sigpending
 53	UNIMPL  	sigaltstack
-54	NODEF		{ int|linux_sys||ioctl(int fd, \
+54	NOARGS		{ int|linux_sys||ioctl(int fd, \
 			    u_long com, void *data); }
 55	UNIMPL		reboot
 56	UNIMPL		revoke
@@ -149,13 +155,13 @@
 89	UNIMPL		getdtablesize
 90	NOARGS 	 	{ int|sys||dup2(int from, int to); }
 91	UNIMPL		getdopt
-92	NODEF		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
+92	NOARGS		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
 93	UNIMPL		select
 94	UNIMPL		setdopt
 95	NOARGS		{ int|sys||fsync(int fd); }
 96	UNIMPL		setpriority
 97	UNIMPL		socket
-98	NODEF		{ int|linux_sys||connect(int s, \
+98	NOARGS		{ int|linux_sys||connect(int s, \
 			    const struct osockaddr *name, \
 			    unsigned int namelen); }
 99	UNIMPL		accept
@@ -165,9 +171,9 @@
 102	UNIMPL		recv
 
 103	UNIMPL		sigreturn
-104	NODEF		{ int|linux_sys||bind(int s, \
+104	NOARGS		{ int|linux_sys||bind(int s, \
 			    const struct osockaddr *name, unsigned namelen); }
-105	NODEF		{ int|linux_sys||setsockopt(int s, int level, \
+105	NOARGS		{ int|linux_sys||setsockopt(int s, int level, \
 			    int name, const void *val, int optlen); }
 106	NOARGS		{ int|sys||listen(int s, int backlog); }
 107	UNIMPL		vtimes
@@ -181,7 +187,7 @@
 115	UNIMPL		vtrace
 116	UNIMPL		gettimeofday
 117	UNIMPL 		getrusage
-118	NODEF		{ int|linux_sys||getsockopt(int s, int level, \
+118	NOARGS		{ int|linux_sys||getsockopt(int s, int level, \
 			    int name, void *val, int *avalsize); }
 119	UNIMPL		resuba
 120	NOARGS 		{ ssize_t|sys||readv(int fd, \
@@ -200,11 +206,11 @@
 130	UNIMPL		oftruncate
 131	NOARGS 	 	{ int|sys||flock(int fd, int how); }
 132	UNIMPL 	 	mkfifo
-133	NODEF 	 	{ int|linux_sys||sendto(int s, void *buf, \
+133	NOARGS 	 	{ int|linux_sys||sendto(int s, void *buf, \
 			    int len, int flags, const struct osockaddr *to, \
 			    int tolen); }
 134	NOARGS	 	{ int|sys||shutdown(int s, int how); }
-135	NODEF	 	{ int|linux_sys||socketpair(int domain, int type, \
+135	NOARGS	 	{ int|linux_sys||socketpair(int domain, int type, \
 			    int protocol, int *rsv); }
 136	NOARGS 	 	{ int|sys||mkdir(const char *path, mode_t mode); }
 137	NOARGS 	 	{ int|sys||rmdir(const char *path); }
@@ -274,9 +280,9 @@
 191	UNIMPL 		pathconf
 192	UNIMPL 		fpathconf
 193	UNIMPL
-194	NODEF 		{ int|linux_sys||getrlimit(int which, \
+194	NOARGS 		{ int|linux_sys||getrlimit(int which, \
 			    struct orlimit *rlp); }
-195	NODEF 		{ int|linux_sys||setrlimit(int which, \
+195	NOARGS 		{ int|linux_sys||setrlimit(int which, \
 			    const struct orlimit *rlp); }
 196	UNIMPL		getdirentries
 197	UNIMPL		mmap
@@ -333,7 +339,7 @@
 ; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls
 ;
 240	UNIMPL		nanosleep
-241	NODEF 	 	{ int|linux_sys||fdatasync(int fd); }
+241	NOARGS 	 	{ int|linux_sys||fdatasync(int fd); }
 242	UNIMPL		mlockall
 243	UNIMPL		munlockall
 244	UNIMPL		__sigtimedwait
@@ -498,12 +504,12 @@
 387	UNIMPL		stat30
 388	UNIMPL		fstat30
 389	UNIMPL		lstat30
-390	NODEF		{ int|linux_sys||getdents64(int fd, \
+390	NOARGS		{ int|linux_sys||getdents64(int fd, \
 			    struct linux_dirent64 *dent, unsigned int count); }
 391	UNIMPL		old posix_fadvise
 392	UNIMPL		fhstat
 393	UNIMPL		ntp_gettime
-394	NODEF	 	{ int|linux_sys||socket(int domain, \
+394	NOARGS	 	{ int|linux_sys||socket(int domain, \
 			    int type, int protocol); }
 395	UNIMPL		getfh
 396	UNIMPL		fhopen
@@ -533,12 +539,12 @@
 414	UNIMPL		pset_assign
 415	UNIMPL		_pset_bind
 416	UNIMPL		fadvise
-417	NODEF  		{ int|linux_sys||select(int nd, \
+417	NOARGS  		{ int|linux_sys||select(int nd, \
 			    fd_set *in, fd_set *ou, fd_set *ex, \
 			    struct timeval50 *tv); }
 418	UNIMPL		gettimeofday
 419	UNIMPL		settimeofday
-420	NODEF		{ int|linux_sys||utimes(const char *path, \
+420	NOARGS		{ int|linux_sys||utimes(const char *path, \
 			    struct linux_timeval *tv); }
 421	UNIMPL		adjtime
 422	UNIMPL		lfs_segwait
@@ -556,15 +562,15 @@
 434	UNIMPL		_lwp_park
 435	UNIMPL		kevent
 436	UNIMPL		pselect
-437	NODEF		{ int|linux_sys||ppoll(struct pollfd *fds, \
+437	NOARGS		{ int|linux_sys||ppoll(struct pollfd *fds, \
 			    u_int nfds, const struct linux_timespec *timeout, \
 			    const linux_sigset_t *mask);}
 438	UNIMPL		aio_suspend
-439	NODEF  		{ int|linux_sys||stat64(const char *path, \
+439	NOARGS  		{ int|linux_sys||stat64(const char *path, \
 			    struct linux_stat64 *sp); }
-440	NODEF  		{ int|linux_sys||fstat64(int fd, \
+440	NOARGS  		{ int|linux_sys||fstat64(int fd, \
 			    struct linux_stat64 *sp); }
-441	NODEF  		{ int|linux_sys||lstat64(const char *path, \
+441	NOARGS  		{ int|linux_sys||lstat64(const char *path, \
 			    struct linux_stat64 *sp); }
 442	UNIMPL		__semctl
 443	UNIMPL		shmctl
@@ -574,17 +580,17 @@
 447	UNIMPL		timer_gettime
 448	UNIMPL		ntp_gettime
 449	UNIMPL		wait4
-450	NODEF  		{ int|linux_sys||mknod(const char *path, mode_t mode, \
+450	NOARGS  		{ int|linux_sys||mknod(const char *path, mode_t mode, \
 			    int dev); }
 451	UNIMPL		fhstat
 
 ; 452 only ever appeared in 5.99.x and can be reused after netbsd-7
 452	UNIMPL		5.99 quotactl
 453	UNIMPL		pipe2
-454	NODEF		{ int|linux_sys||dup3(int from, int to, int flags); }
+454	NOARGS		{ int|linux_sys||dup3(int from, int to, int flags); }
 455	UNIMPL		kqueue1
 456	UNIMPL		paccept
-457	NODEF		{ int|linux_sys||linkat(int fd1, const char *name1, \
+457	NOARGS		{ int|linux_sys||linkat(int fd1, const char *name1, \
 			    int fd2, const char *name2, int flags); }
 458	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
 			    int tofd, const char *to); }
@@ -593,24 +599,24 @@
 			    mode_t mode, int PAD, unsigned dev); }
 461	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
 			    mode_t mode); }
-462	NODEF		{ int|linux_sys||faccessat(int fd, const char *path, \
+462	NOARGS		{ int|linux_sys||faccessat(int fd, const char *path, \
 			    int amode); }
-463	NODEF		{ int|linux_sys||fchmodat(int fd, const char *path, \
+463	NOARGS		{ int|linux_sys||fchmodat(int fd, const char *path, \
 			    mode_t mode); }
-464	NODEF		{ int|linux_sys||fchownat(int fd, const char *path, \
+464	NOARGS		{ int|linux_sys||fchownat(int fd, const char *path, \
 			    uid_t owner, gid_t group, int flag); }
 465	UNIMPL		fexecve
-466	NODEF		{ int|linux_sys||fstatat64(int fd, const char *path, \
+466	NOARGS		{ int|linux_sys||fstatat64(int fd, const char *path, \
 			   struct linux_stat *sp, int flag); }
-467	NODEF		{ int|linux_sys||utimensat(int fd, const char *path, \
+467	NOARGS		{ int|linux_sys||utimensat(int fd, const char *path, \
 			    struct linux_timespec *times, int flag); }
-468	NODEF		{ int|linux_sys||openat(int fd, const char *path, \
+468	NOARGS		{ int|linux_sys||openat(int fd, const char *path, \
 			    int flags, ... mode_t mode); }
 469	NOARGS		{ int|sys||readlinkat(int fd, const char *path, \
 			    char *buf, size_t bufsize); }
 470	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
 			    const char *path2); }
-471	NODEF		{ int|linux_sys||unlinkat(int fd, const char *path, \
+471	NOARGS		{ int|linux_sys||unlinkat(int fd, const char *path, \
 			    int flag); }
 472	UNIMPL		futimens
 473	UNIMPL		__quotactl

Reply via email to