From owner-svn-src-stable-8@FreeBSD.ORG Wed Jun 1 05:50:25 2011 Return-Path: Delivered-To: svn-src-stable-8@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1B79F106564A; Wed, 1 Jun 2011 05:50:25 +0000 (UTC) (envelope-from art@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 0A82D8FC22; Wed, 1 Jun 2011 05:50:25 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id p515oOcO056305; Wed, 1 Jun 2011 05:50:24 GMT (envelope-from art@svn.freebsd.org) Received: (from art@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id p515oOjk056295; Wed, 1 Jun 2011 05:50:24 GMT (envelope-from art@svn.freebsd.org) Message-Id: <201106010550.p515oOjk056295@svn.freebsd.org> From: Artem Belevich Date: Wed, 1 Jun 2011 05:50:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r222555 - in stable/8/sys: amd64/linux32 compat/freebsd32 i386/linux kern X-BeenThere: svn-src-stable-8@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 8-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Jun 2011 05:50:25 -0000 Author: art Date: Wed Jun 1 05:50:24 2011 New Revision: 222555 URL: http://svn.freebsd.org/changeset/base/222555 Log: MFC r219559: add DTrace systrace support for linux32 and freebsd32 on amd64 syscalls This commits makes necessary changes in syscall/sysent generation infrastructure. PR: kern/152822 Reviewed by: jhb (ealier version) Approved by: avg (mentor) Modified: stable/8/sys/amd64/linux32/Makefile stable/8/sys/amd64/linux32/syscalls.conf stable/8/sys/amd64/linux32/syscalls.master stable/8/sys/compat/freebsd32/Makefile stable/8/sys/compat/freebsd32/syscalls.conf stable/8/sys/i386/linux/Makefile stable/8/sys/i386/linux/syscalls.conf stable/8/sys/i386/linux/syscalls.master stable/8/sys/kern/makesyscalls.sh Modified: stable/8/sys/amd64/linux32/Makefile ============================================================================== --- stable/8/sys/amd64/linux32/Makefile Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/amd64/linux32/Makefile Wed Jun 1 05:50:24 2011 (r222555) @@ -5,11 +5,13 @@ all: @echo "make sysent only" -sysent: linux32_sysent.c linux32_syscall.h linux32_proto.h +sysent: linux32_sysent.c linux32_syscall.h linux32_proto.h linux32_syscalls.c linux32_systrace_args.c -linux32_sysent.c linux32_syscall.h linux32_proto.h: ../../kern/makesyscalls.sh \ +linux32_sysent.c linux32_syscall.h linux32_proto.h linux32_syscalls.c linux32_systrace_args.c: ../../kern/makesyscalls.sh \ syscalls.master syscalls.conf -mv -f linux32_sysent.c linux32_sysent.c.bak -mv -f linux32_syscall.h linux32_syscall.h.bak -mv -f linux32_proto.h linux32_proto.h.bak + -mv -f linux32_syscalls.c linux32_syscalls.c.bak + -mv -f linux32_systrace_args.c linux32_systrace_args.c.bak sh ../../kern/makesyscalls.sh syscalls.master syscalls.conf Modified: stable/8/sys/amd64/linux32/syscalls.conf ============================================================================== --- stable/8/sys/amd64/linux32/syscalls.conf Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/amd64/linux32/syscalls.conf Wed Jun 1 05:50:24 2011 (r222555) @@ -1,5 +1,5 @@ # $FreeBSD$ -sysnames="/dev/null" +sysnames="linux32_syscalls.c" sysproto="linux32_proto.h" sysproto_h=_LINUX_SYSPROTO_H_ syshdr="linux32_syscall.h" @@ -8,4 +8,4 @@ sysmk="/dev/null" syscallprefix="LINUX_SYS_" switchname="linux_sysent" namesname="linux_syscallnames" -systrace="/dev/null" +systrace="linux32_systrace_args.c" Modified: stable/8/sys/amd64/linux32/syscalls.master ============================================================================== --- stable/8/sys/amd64/linux32/syscalls.master Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/amd64/linux32/syscalls.master Wed Jun 1 05:50:24 2011 (r222555) @@ -291,7 +291,7 @@ l_uid16_t *euid, l_uid16_t *suid); } 166 AUE_NULL UNIMPL vm86 167 AUE_NULL STD { int linux_query_module(void); } -168 AUE_POLL NOPROTO { int poll(struct pollfd*, \ +168 AUE_POLL NOPROTO { int poll(struct pollfd *fds, \ unsigned int nfds, int timeout); } 169 AUE_NULL STD { int linux_nfsservctl(void); } 170 AUE_SETRESGID STD { int linux_setresgid16(l_gid16_t rgid, \ Modified: stable/8/sys/compat/freebsd32/Makefile ============================================================================== --- stable/8/sys/compat/freebsd32/Makefile Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/compat/freebsd32/Makefile Wed Jun 1 05:50:24 2011 (r222555) @@ -5,15 +5,17 @@ all: @echo "make sysent only" -sysent: freebsd32_sysent.c freebsd32_syscall.h freebsd32_proto.h +sysent: freebsd32_sysent.c freebsd32_syscall.h freebsd32_proto.h freebsd32_systrace_args.c -freebsd32_sysent.c freebsd32_syscalls.c freebsd32_syscall.h freebsd32_proto.h: \ +freebsd32_sysent.c freebsd32_syscalls.c freebsd32_syscall.h freebsd32_proto.h freebsd32_systrace_args.c : \ ../../kern/makesyscalls.sh syscalls.master syscalls.conf -mv -f freebsd32_sysent.c freebsd32_sysent.c.bak -mv -f freebsd32_syscalls.c freebsd32_syscalls.c.bak -mv -f freebsd32_syscall.h freebsd32_syscall.h.bak -mv -f freebsd32_proto.h freebsd32_proto.h.bak + -mv -f freebsd32_systrace_args.c freebsd32_systrace_args.c.bak sh ../../kern/makesyscalls.sh syscalls.master syscalls.conf clean: rm -f freebsd32_sysent.c freebsd32_syscalls.c freebsd32_syscall.h freebsd32_proto.h + rm -f freebsd32_systrace_args.c Modified: stable/8/sys/compat/freebsd32/syscalls.conf ============================================================================== --- stable/8/sys/compat/freebsd32/syscalls.conf Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/compat/freebsd32/syscalls.conf Wed Jun 1 05:50:24 2011 (r222555) @@ -8,4 +8,4 @@ sysmk="/dev/null" syscallprefix="FREEBSD32_SYS_" switchname="freebsd32_sysent" namesname="freebsd32_syscallnames" -systrace="/dev/null" +systrace="freebsd32_systrace_args.c" Modified: stable/8/sys/i386/linux/Makefile ============================================================================== --- stable/8/sys/i386/linux/Makefile Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/i386/linux/Makefile Wed Jun 1 05:50:24 2011 (r222555) @@ -5,11 +5,13 @@ all: @echo "make sysent only" -sysent: linux_sysent.c linux_syscall.h linux_proto.h +sysent: linux_sysent.c linux_syscall.h linux_proto.h linux_syscalls.c linux_systrace_args.c -linux_sysent.c linux_syscall.h linux_proto.h: ../../kern/makesyscalls.sh \ - syscalls.master syscalls.conf +linux_sysent.c linux_syscall.h linux_proto.h linux_syscalls.c linux_systrace_args.c: \ + ../../kern/makesyscalls.sh syscalls.master syscalls.conf -mv -f linux_sysent.c linux_sysent.c.bak -mv -f linux_syscall.h linux_syscall.h.bak -mv -f linux_proto.h linux_proto.h.bak + -mv -f linux_syscalls.c linux_syscalls.c.bak + -mv -f linux_systrace_args.c linux_systrace_args.c.bak sh ../../kern/makesyscalls.sh syscalls.master syscalls.conf Modified: stable/8/sys/i386/linux/syscalls.conf ============================================================================== --- stable/8/sys/i386/linux/syscalls.conf Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/i386/linux/syscalls.conf Wed Jun 1 05:50:24 2011 (r222555) @@ -1,5 +1,5 @@ # $FreeBSD$ -sysnames="/dev/null" +sysnames="linux_syscalls.c" sysproto="linux_proto.h" sysproto_h=_LINUX_SYSPROTO_H_ syshdr="linux_syscall.h" @@ -8,4 +8,4 @@ sysmk="/dev/null" syscallprefix="LINUX_SYS_" switchname="linux_sysent" namesname="linux_syscallnames" -systrace="/dev/null" +systrace="linux_systrace_args.c" Modified: stable/8/sys/i386/linux/syscalls.master ============================================================================== --- stable/8/sys/i386/linux/syscalls.master Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/i386/linux/syscalls.master Wed Jun 1 05:50:24 2011 (r222555) @@ -102,7 +102,7 @@ 46 AUE_SETGID STD { int linux_setgid16(l_gid16_t gid); } 47 AUE_GETGID STD { int linux_getgid16(void); } 48 AUE_NULL STD { int linux_signal(l_int sig, \ - l_handler_t handler); } + void *handler); } 49 AUE_GETEUID STD { int linux_geteuid16(void); } 50 AUE_GETEGID STD { int linux_getegid16(void); } 51 AUE_ACCT NOPROTO { int acct(char *path); } @@ -148,7 +148,7 @@ struct timeval *tp, \ struct timezone *tzp); } 79 AUE_SETTIMEOFDAY NOPROTO { int settimeofday( \ - struct timeval *tp, \ + struct timeval *tv, \ struct timezone *tzp); } 80 AUE_GETGROUPS STD { int linux_getgroups16(l_uint gidsetsize, \ l_gid16_t *gidset); } @@ -293,7 +293,7 @@ l_uid16_t *euid, l_uid16_t *suid); } 166 AUE_NULL STD { int linux_vm86(void); } 167 AUE_NULL STD { int linux_query_module(void); } -168 AUE_POLL NOPROTO { int poll(struct pollfd*, \ +168 AUE_POLL NOPROTO { int poll(struct pollfd* fds, \ unsigned int nfds, long timeout); } 169 AUE_NULL STD { int linux_nfsservctl(void); } 170 AUE_SETRESGID STD { int linux_setresgid16(l_gid16_t rgid, \ Modified: stable/8/sys/kern/makesyscalls.sh ============================================================================== --- stable/8/sys/kern/makesyscalls.sh Wed Jun 1 05:03:17 2011 (r222554) +++ stable/8/sys/kern/makesyscalls.sh Wed Jun 1 05:50:24 2011 (r222555) @@ -190,6 +190,8 @@ s/\$//g print > syscompat6 print > syscompat7 print > sysnames + print > systrace + print > systracetmp savesyscall = syscall next } @@ -202,6 +204,8 @@ s/\$//g print > syscompat6 print > syscompat7 print > sysnames + print > systrace + print > systracetmp syscall = savesyscall next } @@ -214,6 +218,8 @@ s/\$//g print > syscompat6 print > syscompat7 print > sysnames + print > systrace + print > systracetmp next } syscall != $1 {