From owner-trustedbsd-cvs@FreeBSD.ORG Mon Sep 4 05:22:45 2006 Return-Path: X-Original-To: trustedbsd-cvs@freebsd.org Delivered-To: trustedbsd-cvs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B2AD416A4DD for ; Mon, 4 Sep 2006 05:22:45 +0000 (UTC) (envelope-from owner-perforce@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id DE46443D45 for ; Mon, 4 Sep 2006 05:22:44 +0000 (GMT) (envelope-from owner-perforce@freebsd.org) Received: from mx2.freebsd.org (mx2.freebsd.org [216.136.204.119]) by cyrus.watson.org (Postfix) with ESMTP id C9D7546C02 for ; Mon, 4 Sep 2006 01:22:43 -0400 (EDT) Received: from hub.freebsd.org (hub.freebsd.org [216.136.204.18]) by mx2.freebsd.org (Postfix) with ESMTP id E4BB055540; Mon, 4 Sep 2006 05:22:41 +0000 (GMT) (envelope-from owner-perforce@freebsd.org) Received: by hub.freebsd.org (Postfix, from userid 32767) id EACD916A4DF; Mon, 4 Sep 2006 05:22:41 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AC1C816A4DA for ; Mon, 4 Sep 2006 05:22:41 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9FE6F43D53 for ; Mon, 4 Sep 2006 05:22:40 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k845Mekt015043 for ; Mon, 4 Sep 2006 05:22:40 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k845Mctn015040 for perforce@freebsd.org; Mon, 4 Sep 2006 05:22:38 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 4 Sep 2006 05:22:38 GMT Message-Id: <200609040522.k845Mctn015040@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 105633 for review X-BeenThere: trustedbsd-cvs@FreeBSD.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: TrustedBSD CVS and Perforce commit message list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Sep 2006 05:22:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=105633 Change 105633 by rwatson@rwatson_zoo on 2006/09/04 05:21:42 Integrate TrustedBSD privilege branch from TrustedBSD base branch; see @105632 for a description of changes merged. Affected files ... .. //depot/projects/trustedbsd/priv/sys/amd64/amd64/support.S#2 integrate .. //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_dummy.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_machdep.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_proto.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_syscall.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_sysent.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/amd64/linux32/syscalls.master#2 integrate .. //depot/projects/trustedbsd/priv/sys/arm/arm/fusu.S#2 integrate .. //depot/projects/trustedbsd/priv/sys/arm/arm/pmap.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/arm/at91/at91.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/arm/include/asm.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/arm/xscale/i80321/ep80219_machdep.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/bsm/audit_internal.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/bsm/audit_record.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/trustedbsd/priv/sys/compat/linux/linux_emul.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/compat/linux/linux_stats.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/compat/svr4/svr4_stat.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/conf/NOTES#2 integrate .. //depot/projects/trustedbsd/priv/sys/crypto/sha2/sha2.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/aic7xxx/ahc_eisa.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/aic7xxx/ahc_isa.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/aic7xxx/ahc_pci.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/aic7xxx/ahd_pci.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/arcmsr/arcmsr.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/ata/ata-dma.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/atkbdc/atkbdc.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/bge/if_bge.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/em/if_em.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/em/if_em.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/fdc/fdc.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/dev/gem/if_gem.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/isp/isp.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/isp/isp_pci.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/isp/isp_sbus.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/ispfw/asm_2400.h#1 branch .. //depot/projects/trustedbsd/priv/sys/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/mii/miidevs#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/mk48txx/mk48txx.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/ofw/openfirmio.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/dev/usb/ohci_pci.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/i386/i386/support.s#2 integrate .. //depot/projects/trustedbsd/priv/sys/i386/linux/linux_dummy.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/i386/linux/linux_proto.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/i386/linux/linux_syscall.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/i386/linux/linux_sysent.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/i386/linux/syscalls.master#2 integrate .. //depot/projects/trustedbsd/priv/sys/ia64/ia64/support.S#2 integrate .. //depot/projects/trustedbsd/priv/sys/kern/bus_if.m#2 integrate .. //depot/projects/trustedbsd/priv/sys/kern/init_sysent.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/kern/kern_exec.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/kern/kern_thread.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/kern/kern_umtx.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/kern/subr_bus.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/kern/syscalls.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/kern/syscalls.master#2 integrate .. //depot/projects/trustedbsd/priv/sys/kern/systrace_args.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/modules/Makefile#2 integrate .. //depot/projects/trustedbsd/priv/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/trustedbsd/priv/sys/modules/ispfw/isp_2400/Makefile#1 branch .. //depot/projects/trustedbsd/priv/sys/netinet/ip_fw2.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/netinet/tcp_subr.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/nfsclient/nfs_socket.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/pci/agp_ati.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/powerpc/powerpc/copyinout.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/powerpc/powerpc/vm_machdep.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit_arg.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit_bsm.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit_ioctl.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit_pipe.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit_private.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/security/audit/audit_syscalls.c#3 integrate .. //depot/projects/trustedbsd/priv/sys/security/mac_mls/mac_mls.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/sparc64/sparc64/mp_machdep.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/sparc64/sparc64/support.S#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/_bus_dma.h#1 branch .. //depot/projects/trustedbsd/priv/sys/sys/bus.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/bus_dma.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/msgbuf.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/param.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/sx.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/syscall.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/syscall.mk#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/sysproto.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/sys/systm.h#3 integrate .. //depot/projects/trustedbsd/priv/sys/sys/umtx.h#2 integrate .. //depot/projects/trustedbsd/priv/sys/vm/vm_contig.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/vm/vm_page.c#2 integrate .. //depot/projects/trustedbsd/priv/sys/vm/vm_page.h#2 integrate Differences ... ==== //depot/projects/trustedbsd/priv/sys/amd64/amd64/support.S#2 (text+ko) ==== @@ -27,7 +27,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/support.S,v 1.119 2006/08/16 22:22:28 davidxu Exp $ + * $FreeBSD: src/sys/amd64/amd64/support.S,v 1.120 2006/08/28 02:28:14 davidxu Exp $ */ #include "opt_ddb.h" @@ -314,6 +314,34 @@ ret /* + * casuword32. Compare and set user integer. Returns -1 or the current value. + * dst = %rdi, old = %rsi, new = %rdx + */ +ENTRY(casuword32) + movq PCPU(CURPCB),%rcx + movq $fusufault,PCB_ONFAULT(%rcx) + + movq $VM_MAXUSER_ADDRESS-4,%rax + cmpq %rax,%rdi /* verify address is valid */ + ja fusufault + + movl %esi,%eax /* old */ +#ifdef SMP + lock +#endif + cmpxchgl %edx,(%rdi) /* new = %edx */ + + /* + * The old value is in %eax. If the store succeeded it will be the + * value we expected (old) from before the store, otherwise it will + * be the current value. + */ + + movq PCPU(CURPCB),%rcx + movq $0,PCB_ONFAULT(%rcx) + ret + +/* * casuptr. Compare and set user pointer. Returns -1 or the current value. * dst = %rdi, old = %rsi, new = %rdx */ ==== //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_dummy.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.4 2006/08/15 12:54:29 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.5 2006/08/27 08:56:53 netchild Exp $"); #include #include @@ -77,7 +77,6 @@ DUMMY(timer_gettime); DUMMY(timer_getoverrun); DUMMY(timer_delete); -DUMMY(statfs64); DUMMY(fstatfs64); DUMMY(utimes); DUMMY(fadvise64_64); ==== //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_machdep.c#2 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.16 2006/08/25 11:59:56 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.17 2006/08/28 13:09:24 netchild Exp $"); #include #include @@ -570,24 +570,24 @@ } } - if (args->flags & CLONE_PARENT) { -#ifdef DEBUG - printf("linux_clone: CLONE_PARENT\n"); -#endif + if (args->flags & (CLONE_PARENT|CLONE_THREAD)) { + sx_xlock(&proctree_lock); + PROC_LOCK(p2); + proc_reparent(p2, td->td_proc->p_pptr); + PROC_UNLOCK(p2); + sx_xunlock(&proctree_lock); } - + if (args->flags & CLONE_THREAD) { /* XXX: linux mangles pgrp and pptr somehow * I think it might be this but I am not sure. */ #ifdef notyet + PROC_LOCK(p2); p2->p_pgrp = td->td_proc->p_pgrp; - p2->p_pptr = td->td_proc->p_pptr; + PROC_UNLOCK(p2); #endif exit_signal = 0; -#ifdef DEBUG - printf("linux_clone: CLONE_THREADS\n"); -#endif } if (args->flags & CLONE_CHILD_SETTID) @@ -599,6 +599,7 @@ em->child_clear_tid = args->child_tidptr; else em->child_clear_tid = NULL; + EMUL_UNLOCK(&emul_lock); PROC_LOCK(p2); ==== //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_proto.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.21 2006/08/15 17:36:58 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.19 2006/08/15 12:28:14 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.22 2006/08/27 08:58:00 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.20 2006/08/27 08:56:53 netchild Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -782,7 +782,8 @@ char rmtp_l_[PADL_(struct l_timespec *)]; struct l_timespec * rmtp; char rmtp_r_[PADR_(struct l_timespec *)]; }; struct linux_statfs64_args { - register_t dummy; + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char buf_l_[PADL_(struct l_statfs64_buf *)]; struct l_statfs64_buf * buf; char buf_r_[PADR_(struct l_statfs64_buf *)]; }; struct linux_fstatfs64_args { register_t dummy; ==== //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_syscall.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.21 2006/08/15 17:36:58 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.19 2006/08/15 12:28:14 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.22 2006/08/27 08:58:00 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.20 2006/08/27 08:56:53 netchild Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/trustedbsd/priv/sys/amd64/linux32/linux32_sysent.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.21 2006/08/15 17:36:58 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.19 2006/08/15 12:28:14 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.22 2006/08/27 08:58:00 netchild Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.20 2006/08/27 08:56:53 netchild Exp */ #include @@ -288,7 +288,7 @@ { AS(linux_clock_gettime_args), (sy_call_t *)linux_clock_gettime, AUE_NULL, NULL, 0, 0 }, /* 265 = linux_clock_gettime */ { AS(linux_clock_getres_args), (sy_call_t *)linux_clock_getres, AUE_NULL, NULL, 0, 0 }, /* 266 = linux_clock_getres */ { AS(linux_clock_nanosleep_args), (sy_call_t *)linux_clock_nanosleep, AUE_NULL, NULL, 0, 0 }, /* 267 = linux_clock_nanosleep */ - { 0, (sy_call_t *)linux_statfs64, AUE_NULL, NULL, 0, 0 }, /* 268 = linux_statfs64 */ + { AS(linux_statfs64_args), (sy_call_t *)linux_statfs64, AUE_NULL, NULL, 0, 0 }, /* 268 = linux_statfs64 */ { 0, (sy_call_t *)linux_fstatfs64, AUE_NULL, NULL, 0, 0 }, /* 269 = linux_fstatfs64 */ { AS(linux_tgkill_args), (sy_call_t *)linux_tgkill, AUE_NULL, NULL, 0, 0 }, /* 270 = linux_tgkill */ { 0, (sy_call_t *)linux_utimes, AUE_NULL, NULL, 0, 0 }, /* 271 = linux_utimes */ ==== //depot/projects/trustedbsd/priv/sys/amd64/linux32/syscalls.master#2 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.19 2006/08/15 12:28:14 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.20 2006/08/27 08:56:53 netchild Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -430,7 +430,7 @@ 266 AUE_NULL STD { int linux_clock_getres(clockid_t which, struct l_timespec *tp); } 267 AUE_NULL STD { int linux_clock_nanosleep(clockid_t which, int flags, \ struct l_timespec *rqtp, struct l_timespec *rmtp); } -268 AUE_NULL STD { int linux_statfs64(void); } +268 AUE_NULL STD { int linux_statfs64(char *path, struct l_statfs64_buf *buf); } 269 AUE_NULL STD { int linux_fstatfs64(void); } 270 AUE_NULL STD { int linux_tgkill(int tgid, int pid, int sig); } 271 AUE_NULL STD { int linux_utimes(void); } ==== //depot/projects/trustedbsd/priv/sys/arm/arm/fusu.S#2 (text+ko) ==== @@ -37,7 +37,7 @@ #include #include #include "assym.s" -__FBSDID("$FreeBSD: src/sys/arm/arm/fusu.S,v 1.7 2005/04/23 16:45:04 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/fusu.S,v 1.10 2006/08/30 11:44:37 cognet Exp $"); #ifdef MULTIPROCESSOR .Lcpu_info: @@ -52,6 +52,7 @@ * Fetch an int from the user's address space. */ +ENTRY_NP(casuword32) ENTRY(casuptr) #ifdef MULTIPROCESSOR /* XXX Probably not appropriate for non-Hydra SMPs */ @@ -98,7 +99,7 @@ * Fetch an int from the user's address space. */ -ENTRY(fuword32) +ENTRY_NP(fuword32) ENTRY(fuword) #ifdef MULTIPROCESSOR /* XXX Probably not appropriate for non-Hydra SMPs */ @@ -300,7 +301,7 @@ * Store an int in the user's address space. */ -ENTRY(suword32) +ENTRY_NP(suword32) ENTRY(suword) #ifdef MULTIPROCESSOR /* XXX Probably not appropriate for non-Hydra SMPs */ ==== //depot/projects/trustedbsd/priv/sys/arm/arm/pmap.c#2 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.68 2006/08/08 20:59:38 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.69 2006/08/28 21:43:34 cognet Exp $"); #include #include #include @@ -4469,11 +4469,8 @@ pmap_remove_write(vm_page_t m) { - if (m->md.pvh_attrs & PVF_WRITE) + if (m->flags & PG_WRITEABLE) pmap_clearbit(m, PVF_WRITE); - else - KASSERT((m->flags & PG_WRITEABLE) == 0, - ("pmap_clear_write: page %p has PG_WRITEABLE set", m)); } ==== //depot/projects/trustedbsd/priv/sys/arm/at91/at91.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91.c,v 1.7 2006/05/19 11:27:02 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91.c,v 1.8 2006/08/28 20:05:00 cognet Exp $"); #include #include @@ -54,7 +54,11 @@ vm_paddr_t pa, endpa; pa = trunc_page(bpa); - if (pa >= 0xfff00000) + if (pa >= 0xfff00000) { + *bshp = pa - 0xf0000000 + 0xd0000000; + return (0); + } + if (pa >= 0xdff00000) return (0); endpa = round_page(bpa + size); @@ -417,8 +421,8 @@ rman_manage_region(&sc->sc_irq_rman, 1, 31) != 0) panic("at91_attach: failed to set up IRQ rman"); if (rman_init(&sc->sc_mem_rman) != 0 || - rman_manage_region(&sc->sc_mem_rman, 0xfff00000ul, - 0xfffffffful) != 0) + rman_manage_region(&sc->sc_mem_rman, 0xdff00000ul, + 0xdffffffful) != 0) panic("at91_attach: failed to set up memory rman"); if (rman_manage_region(&sc->sc_mem_rman, AT91RM92_OHCI_BASE, AT91RM92_OHCI_BASE + AT91RM92_OHCI_SIZE - 1) != 0) @@ -543,7 +547,7 @@ void **cookiep) { struct at91_softc *sc = device_get_softc(dev); - + if (rman_get_start(ires) == AT91RM92_IRQ_SYSTEM && !(flags & INTR_FAST)) panic("All system interrupt ISRs must be type INTR_FAST"); BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, intr, arg, ==== //depot/projects/trustedbsd/priv/sys/arm/at91/at91rm92reg.h#2 (text) ==== @@ -22,7 +22,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* $FreeBSD: src/sys/arm/at91/at91rm92reg.h,v 1.3 2006/06/20 20:13:40 imp Exp $ */ +/* $FreeBSD: src/sys/arm/at91/at91rm92reg.h,v 1.4 2006/08/28 20:05:00 cognet Exp $ */ #ifndef AT91RM92REG_H_ #define AT91RM92REG_H_ @@ -41,7 +41,7 @@ * 0xf0000000 - 0xfffffffff : Peripherals */ -#define AT91RM92_BASE 0xf0000000 +#define AT91RM92_BASE 0xd0000000 /* Usart */ #define AT91RM92_USART0_BASE 0xffc0000 ==== //depot/projects/trustedbsd/priv/sys/arm/at91/kb920x_machdep.c#2 (text) ==== @@ -48,7 +48,7 @@ #include "opt_at91.h" #include -__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.15 2006/08/08 20:59:38 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.16 2006/08/28 20:05:00 cognet Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include @@ -153,8 +153,8 @@ * and the timer. Other devices should use newbus to * map their memory anyway. */ + 0xdff00000, 0xfff00000, - 0xfff00000, 0x100000, VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, @@ -364,7 +364,7 @@ l1pagetable = kernel_l1pt.pv_va; /* Map the L2 pages tables in the L1 page table */ - pmap_link_l2pt(l1pagetable, ARM_VECTORS_LOW, + pmap_link_l2pt(l1pagetable, ARM_VECTORS_HIGH, &kernel_pt_table[KERNEL_PT_SYS]); for (i = 0; i < KERNEL_PT_KERN_NUM; i++) pmap_link_l2pt(l1pagetable, KERNBASE + i * 0x100000, @@ -383,7 +383,7 @@ /* Map the vector page. */ - pmap_map_entry(l1pagetable, ARM_VECTORS_LOW, systempage.pv_pa, + pmap_map_entry(l1pagetable, ARM_VECTORS_HIGH, systempage.pv_pa, VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE); /* Map the stack pages */ pmap_map_chunk(l1pagetable, irqstack.pv_va, irqstack.pv_pa, @@ -462,7 +462,7 @@ thread0.td_frame = &proc0_tf; pcpup->pc_curpcb = thread0.td_pcb; - arm_vector_init(ARM_VECTORS_LOW, ARM_VEC_ALL); + arm_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL); pmap_curmaxkvaddr = afterkern + 0x100000 * (KERNEL_PT_KERN_NUM - 1); /* ==== //depot/projects/trustedbsd/priv/sys/arm/include/asm.h#2 (text+ko) ==== @@ -33,7 +33,7 @@ * * from: @(#)asm.h 5.5 (Berkeley) 5/7/91 * - * $FreeBSD: src/sys/arm/include/asm.h,v 1.4 2005/01/05 21:58:48 imp Exp $ + * $FreeBSD: src/sys/arm/include/asm.h,v 1.5 2006/08/30 11:45:07 cognet Exp $ */ #ifndef _MACHINE_ASM_H_ @@ -55,15 +55,6 @@ #define _JB_MAGIC__SETJMP 0x4278f500 #define _JB_MAGIC_SETJMP 0x4278f501 #endif -#if 0 -#ifdef __STDC__ -# define __CONCAT(x,y) x ## y -# define __STRING(x) #x -#else -# define __CONCAT(x,y) x/**/y -# define __STRING(x) "x" -#endif -#endif #define I32_bit (1 << 7) /* IRQ disable */ #define F32_bit (1 << 6) /* FIQ disable */ ==== //depot/projects/trustedbsd/priv/sys/arm/xscale/i80321/ep80219_machdep.c#2 (text+ko) ==== @@ -49,7 +49,7 @@ #include "opt_ddb.h" #include -__FBSDID("$FreeBSD: src/sys/arm/xscale/i80321/ep80219_machdep.c,v 1.1 2006/08/24 23:51:28 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/xscale/i80321/ep80219_machdep.c,v 1.2 2006/08/27 13:23:51 cognet Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include @@ -444,6 +444,10 @@ pmap_curmaxkvaddr = afterkern + PAGE_SIZE; + dump_avail[0] = 0xa0000000; + dump_avail[1] = 0xa0000000 + memsize; + dump_avail[2] = 0; + dump_avail[3] = 0; pmap_bootstrap(pmap_curmaxkvaddr, 0xd0000000, &kernel_l1pt); msgbufp = (void*)msgbufpv.pv_va; @@ -462,10 +466,6 @@ phys_avail[i++] = trunc_page(0xa0000000 + memsize - 1); phys_avail[i++] = 0; phys_avail[i] = 0; - dump_avail[0] = 0xa0000000; - dump_avail[1] = 0xa0000000 + memsize; - dump_avail[2] = 0; - dump_avail[3] = 0; /* Do basic tuning, hz etc */ init_param1(); ==== //depot/projects/trustedbsd/priv/sys/bsm/audit_internal.h#2 (text) ==== @@ -35,7 +35,7 @@ * @APPLE_BSD_LICENSE_HEADER_END@ * * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_internal.h#11 $ - * $FreeBSD: src/sys/bsm/audit_internal.h,v 1.3 2006/08/26 08:17:58 rwatson Exp $ + * $FreeBSD: src/sys/bsm/audit_internal.h,v 1.4 2006/09/02 10:49:44 rwatson Exp $ */ #ifndef _AUDIT_INTERNAL_H @@ -71,9 +71,9 @@ /* * We could determined the header and trailer sizes by defining appropriate - * structures. We hold off that approach until we have a consistant way of + * structures. We hold off that approach until we have a consistent way of * using structures for all tokens. This is not straightforward since these - * token structures may contain pointers of whose contents we dont know the + * token structures may contain pointers of whose contents we do not know the * size (e.g text tokens). */ #define AUDIT_HEADER_SIZE 18 ==== //depot/projects/trustedbsd/priv/sys/bsm/audit_record.h#2 (text) ==== @@ -31,7 +31,7 @@ * @APPLE_BSD_LICENSE_HEADER_END@ * * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#19 $ - * $FreeBSD: src/sys/bsm/audit_record.h,v 1.4 2006/08/26 08:17:58 rwatson Exp $ + * $FreeBSD: src/sys/bsm/audit_record.h,v 1.5 2006/09/01 11:45:39 wsalamon Exp $ */ #ifndef _BSM_AUDIT_RECORD_H_ @@ -319,8 +319,13 @@ gid_t rgid, pid_t pid, au_asid_t sid, au_tid_addr_t *tid); token_t *au_to_subject64_ex(au_id_t auid, uid_t euid, gid_t egid, uid_t ruid, gid_t rgid, pid_t pid, au_asid_t sid, au_tid_addr_t *tid); -token_t *au_to_exec_args(const char **); -token_t *au_to_exec_env(const char **); +#if defined(_KERNEL) || defined(KERNEL) +token_t *au_to_exec_args(char *args, int argc); +token_t *au_to_exec_env(char *envs, int envc); +#else +token_t *au_to_exec_args(char **argv); +token_t *au_to_exec_env(char **envp); +#endif token_t *au_to_text(char *text); token_t *au_to_kevent(struct kevent *kev); token_t *au_to_trailer(int rec_size); ==== //depot/projects/trustedbsd/priv/sys/compat/freebsd32/freebsd32_proto.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.58 2006/08/15 17:36:59 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.70 2006/07/28 19:05:26 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.60 2006/09/03 16:24:36 rwatson Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp */ #ifndef _FREEBSD32_SYSPROTO_H_ @@ -455,7 +455,7 @@ #define FREEBSD32_SYS_AUE_freebsd32_pwritev AUE_PWRITEV #define FREEBSD32_SYS_AUE_freebsd32_modstat AUE_NULL #define FREEBSD32_SYS_AUE_freebsd32_kevent AUE_NULL -#define FREEBSD32_SYS_AUE_freebsd32_sendfile AUE_NULL +#define FREEBSD32_SYS_AUE_freebsd32_sendfile AUE_SENDFILE #define FREEBSD32_SYS_AUE_freebsd32_sigaction AUE_SIGACTION #define FREEBSD32_SYS_AUE_freebsd32_sigreturn AUE_SIGRETURN #define FREEBSD32_SYS_AUE_freebsd32_getcontext AUE_NULL ==== //depot/projects/trustedbsd/priv/sys/compat/freebsd32/freebsd32_syscall.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.56 2006/08/15 17:36:59 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.70 2006/07/28 19:05:26 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.58 2006/09/03 16:24:36 rwatson Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp */ #define FREEBSD32_SYS_syscall 0 @@ -311,4 +311,4 @@ #define FREEBSD32_SYS_thr_wake 443 #define FREEBSD32_SYS_kldunloadf 444 #define FREEBSD32_SYS_abort2 463 -#define FREEBSD32_SYS_MAXSYSCALL 469 +#define FREEBSD32_SYS_MAXSYSCALL 471 ==== //depot/projects/trustedbsd/priv/sys/compat/freebsd32/freebsd32_syscalls.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.47 2006/08/15 17:36:59 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.70 2006/07/28 19:05:26 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.49 2006/09/03 16:24:36 rwatson Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp */ const char *freebsd32_syscallnames[] = { @@ -167,7 +167,7 @@ "old.freebsd32_statfs", /* 157 = old freebsd32_statfs */ "old.freebsd32_fstatfs", /* 158 = old freebsd32_fstatfs */ "#159", /* 159 = nosys */ - "#160", /* 160 = nosys */ + "#160", /* 160 = lgetfh */ "getfh", /* 161 = getfh */ "getdomainname", /* 162 = getdomainname */ "setdomainname", /* 163 = setdomainname */ @@ -476,4 +476,6 @@ "#466", /* 466 = thr_setscheduler */ "#467", /* 467 = thr_getscheduler */ "#468", /* 468 = thr_setschedparam */ + "#469", /* 469 = __getpath_fromfd */ + "#470", /* 470 = __getpath_fromaddr */ }; ==== //depot/projects/trustedbsd/priv/sys/compat/freebsd32/freebsd32_sysent.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.57 2006/08/15 17:36:59 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.70 2006/07/28 19:05:26 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.59 2006/09/03 16:24:36 rwatson Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp */ #include "opt_compat.h" @@ -192,13 +192,13 @@ { compat4(AS(freebsd4_freebsd32_statfs_args),freebsd32_statfs), AUE_STATFS, NULL, 0, 0 }, /* 157 = old freebsd32_statfs */ { compat4(AS(freebsd4_freebsd32_fstatfs_args),freebsd32_fstatfs), AUE_FSTATFS, NULL, 0, 0 }, /* 158 = old freebsd32_fstatfs */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 159 = nosys */ - { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 160 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 160 = lgetfh */ { AS(getfh_args), (sy_call_t *)getfh, AUE_NFS_GETFH, NULL, 0, 0 }, /* 161 = getfh */ - { AS(getdomainname_args), (sy_call_t *)getdomainname, AUE_O_GETDOMAINNAME, NULL, 0, 0 }, /* 162 = getdomainname */ - { AS(setdomainname_args), (sy_call_t *)setdomainname, AUE_O_SETDOMAINNAME, NULL, 0, 0 }, /* 163 = setdomainname */ + { AS(getdomainname_args), (sy_call_t *)getdomainname, AUE_SYSCTL, NULL, 0, 0 }, /* 162 = getdomainname */ + { AS(setdomainname_args), (sy_call_t *)setdomainname, AUE_SYSCTL, NULL, 0, 0 }, /* 163 = setdomainname */ { AS(uname_args), (sy_call_t *)uname, AUE_NULL, NULL, 0, 0 }, /* 164 = uname */ - { AS(sysarch_args), (sy_call_t *)sysarch, AUE_NULL, NULL, 0, 0 }, /* 165 = sysarch */ - { AS(rtprio_args), (sy_call_t *)rtprio, AUE_NULL, NULL, 0, 0 }, /* 166 = rtprio */ + { AS(sysarch_args), (sy_call_t *)sysarch, AUE_SYSARCH, NULL, 0, 0 }, /* 165 = sysarch */ + { AS(rtprio_args), (sy_call_t *)rtprio, AUE_RTPRIO, NULL, 0, 0 }, /* 166 = rtprio */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 167 = nosys */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 168 = nosys */ { AS(freebsd32_semsys_args), (sy_call_t *)freebsd32_semsys, AUE_SEMSYS, NULL, 0, 0 }, /* 169 = freebsd32_semsys */ @@ -208,7 +208,7 @@ { AS(freebsd32_pread_args), (sy_call_t *)freebsd32_pread, AUE_PREAD, NULL, 0, 0 }, /* 173 = freebsd32_pread */ { AS(freebsd32_pwrite_args), (sy_call_t *)freebsd32_pwrite, AUE_PWRITE, NULL, 0, 0 }, /* 174 = freebsd32_pwrite */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 175 = nosys */ - { AS(ntp_adjtime_args), (sy_call_t *)ntp_adjtime, AUE_ADJTIME, NULL, 0, 0 }, /* 176 = ntp_adjtime */ + { AS(ntp_adjtime_args), (sy_call_t *)ntp_adjtime, AUE_NTP_ADJTIME, NULL, 0, 0 }, /* 176 = ntp_adjtime */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 177 = sfork */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 178 = getdescriptor */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 179 = setdescriptor */ @@ -358,7 +358,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 323 = obsolete thr_wakeup */ { AS(mlockall_args), (sy_call_t *)mlockall, AUE_MLOCKALL, NULL, 0, 0 }, /* 324 = mlockall */ { 0, (sy_call_t *)munlockall, AUE_MUNLOCKALL, NULL, 0, 0 }, /* 325 = munlockall */ - { AS(__getcwd_args), (sy_call_t *)__getcwd, AUE_NULL, NULL, 0, 0 }, /* 326 = __getcwd */ + { AS(__getcwd_args), (sy_call_t *)__getcwd, AUE_GETCWD, NULL, 0, 0 }, /* 326 = __getcwd */ { AS(sched_setparam_args), (sy_call_t *)sched_setparam, AUE_NULL, NULL, 0, 0 }, /* 327 = sched_setparam */ { AS(sched_getparam_args), (sy_call_t *)sched_getparam, AUE_NULL, NULL, 0, 0 }, /* 328 = sched_getparam */ { AS(sched_setscheduler_args), (sy_call_t *)sched_setscheduler, AUE_NULL, NULL, 0, 0 }, /* 329 = sched_setscheduler */ @@ -370,7 +370,7 @@ { AS(utrace_args), (sy_call_t *)utrace, AUE_NULL, NULL, 0, 0 }, /* 335 = utrace */ { compat4(AS(freebsd4_freebsd32_sendfile_args),freebsd32_sendfile), AUE_SENDFILE, NULL, 0, 0 }, /* 336 = old freebsd32_sendfile */ { AS(kldsym_args), (sy_call_t *)kldsym, AUE_NULL, NULL, 0, 0 }, /* 337 = kldsym */ - { AS(jail_args), (sy_call_t *)jail, AUE_NULL, NULL, 0, 0 }, /* 338 = jail */ + { AS(jail_args), (sy_call_t *)jail, AUE_JAIL, NULL, 0, 0 }, /* 338 = jail */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 339 = pioctl */ { AS(sigprocmask_args), (sy_call_t *)sigprocmask, AUE_SIGPROCMASK, NULL, 0, 0 }, /* 340 = sigprocmask */ { AS(sigsuspend_args), (sy_call_t *)sigsuspend, AUE_SIGSUSPEND, NULL, 0, 0 }, /* 341 = sigsuspend */ @@ -379,7 +379,7 @@ { compat4(AS(freebsd4_freebsd32_sigreturn_args),freebsd32_sigreturn), AUE_SIGRETURN, NULL, 0, 0 }, /* 344 = old freebsd32_sigreturn */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 345 = sigtimedwait */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 346 = sigwaitinfo */ - { AS(__acl_get_file_args), (sy_call_t *)__acl_get_file, AUE_JAIL, NULL, 0, 0 }, /* 347 = __acl_get_file */ + { AS(__acl_get_file_args), (sy_call_t *)__acl_get_file, AUE_NULL, NULL, 0, 0 }, /* 347 = __acl_get_file */ { AS(__acl_set_file_args), (sy_call_t *)__acl_set_file, AUE_NULL, NULL, 0, 0 }, /* 348 = __acl_set_file */ { AS(__acl_get_fd_args), (sy_call_t *)__acl_get_fd, AUE_NULL, NULL, 0, 0 }, /* 349 = __acl_get_fd */ { AS(__acl_set_fd_args), (sy_call_t *)__acl_set_fd, AUE_NULL, NULL, 0, 0 }, /* 350 = __acl_set_fd */ @@ -387,14 +387,14 @@ { AS(__acl_delete_fd_args), (sy_call_t *)__acl_delete_fd, AUE_NULL, NULL, 0, 0 }, /* 352 = __acl_delete_fd */ { AS(__acl_aclcheck_file_args), (sy_call_t *)__acl_aclcheck_file, AUE_NULL, NULL, 0, 0 }, /* 353 = __acl_aclcheck_file */ { AS(__acl_aclcheck_fd_args), (sy_call_t *)__acl_aclcheck_fd, AUE_NULL, NULL, 0, 0 }, /* 354 = __acl_aclcheck_fd */ - { AS(extattrctl_args), (sy_call_t *)extattrctl, AUE_NULL, NULL, 0, 0 }, /* 355 = extattrctl */ - { AS(extattr_set_file_args), (sy_call_t *)extattr_set_file, AUE_NULL, NULL, 0, 0 }, /* 356 = extattr_set_file */ - { AS(extattr_get_file_args), (sy_call_t *)extattr_get_file, AUE_NULL, NULL, 0, 0 }, /* 357 = extattr_get_file */ - { AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file, AUE_NULL, NULL, 0, 0 }, /* 358 = extattr_delete_file */ + { AS(extattrctl_args), (sy_call_t *)extattrctl, AUE_EXTATTRCTL, NULL, 0, 0 }, /* 355 = extattrctl */ + { AS(extattr_set_file_args), (sy_call_t *)extattr_set_file, AUE_EXTATTR_SET_FILE, NULL, 0, 0 }, /* 356 = extattr_set_file */ + { AS(extattr_get_file_args), (sy_call_t *)extattr_get_file, AUE_EXTATTR_GET_FILE, NULL, 0, 0 }, /* 357 = extattr_get_file */ + { AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file, AUE_EXTATTR_DELETE_FILE, NULL, 0, 0 }, /* 358 = extattr_delete_file */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 359 = aio_waitcomplete */ - { AS(getresuid_args), (sy_call_t *)getresuid, AUE_NULL, NULL, 0, 0 }, /* 360 = getresuid */ - { AS(getresgid_args), (sy_call_t *)getresgid, AUE_NULL, NULL, 0, 0 }, /* 361 = getresgid */ - { 0, (sy_call_t *)kqueue, AUE_NULL, NULL, 0, 0 }, /* 362 = kqueue */ + { AS(getresuid_args), (sy_call_t *)getresuid, AUE_GETRESUID, NULL, 0, 0 }, /* 360 = getresuid */ + { AS(getresgid_args), (sy_call_t *)getresgid, AUE_GETRESGID, NULL, 0, 0 }, /* 361 = getresgid */ + { 0, (sy_call_t *)kqueue, AUE_KQUEUE, NULL, 0, 0 }, /* 362 = kqueue */ { AS(freebsd32_kevent_args), (sy_call_t *)freebsd32_kevent, AUE_NULL, NULL, 0, 0 }, /* 363 = freebsd32_kevent */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 364 = __cap_get_proc */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 365 = __cap_set_proc */ @@ -403,14 +403,14 @@ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 368 = __cap_set_fd */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 369 = __cap_set_file */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 370 = lkmressys */ - { AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd, AUE_NULL, NULL, 0, 0 }, /* 371 = extattr_set_fd */ - { AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd, AUE_NULL, NULL, 0, 0 }, /* 372 = extattr_get_fd */ - { AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd, AUE_NULL, NULL, 0, 0 }, /* 373 = extattr_delete_fd */ + { AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd, AUE_EXTATTR_SET_FD, NULL, 0, 0 }, /* 371 = extattr_set_fd */ + { AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd, AUE_EXTATTR_GET_FD, NULL, 0, 0 }, /* 372 = extattr_get_fd */ + { AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd, AUE_EXTATTR_DELETE_FD, NULL, 0, 0 }, /* 373 = extattr_delete_fd */ { AS(__setugid_args), (sy_call_t *)__setugid, AUE_NULL, NULL, 0, 0 }, /* 374 = __setugid */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 375 = nfsclnt */ - { AS(eaccess_args), (sy_call_t *)eaccess, AUE_NULL, NULL, 0, 0 }, /* 376 = eaccess */ + { AS(eaccess_args), (sy_call_t *)eaccess, AUE_EACCESS, NULL, 0, 0 }, /* 376 = eaccess */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 377 = afs_syscall */ - { AS(nmount_args), (sy_call_t *)nmount, AUE_NULL, NULL, 0, 0 }, /* 378 = nmount */ + { AS(nmount_args), (sy_call_t *)nmount, AUE_NMOUNT, NULL, 0, 0 }, /* 378 = nmount */ { 0, (sy_call_t *)kse_exit, AUE_NULL, NULL, 0, 0 }, /* 379 = kse_exit */ { AS(kse_wakeup_args), (sy_call_t *)kse_wakeup, AUE_NULL, NULL, 0, 0 }, /* 380 = kse_wakeup */ { AS(kse_create_args), (sy_call_t *)kse_create, AUE_NULL, NULL, 0, 0 }, /* 381 = kse_create */ @@ -425,12 +425,12 @@ { AS(kenv_args), (sy_call_t *)kenv, AUE_NULL, NULL, 0, 0 }, /* 390 = kenv */ { AS(lchflags_args), (sy_call_t *)lchflags, AUE_LCHFLAGS, NULL, 0, 0 }, /* 391 = lchflags */ { AS(uuidgen_args), (sy_call_t *)uuidgen, AUE_NULL, NULL, 0, 0 }, /* 392 = uuidgen */ - { AS(freebsd32_sendfile_args), (sy_call_t *)freebsd32_sendfile, AUE_NULL, NULL, 0, 0 }, /* 393 = freebsd32_sendfile */ + { AS(freebsd32_sendfile_args), (sy_call_t *)freebsd32_sendfile, AUE_SENDFILE, NULL, 0, 0 }, /* 393 = freebsd32_sendfile */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 394 = mac_syscall */ { AS(getfsstat_args), (sy_call_t *)getfsstat, AUE_GETFSSTAT, NULL, 0, 0 }, /* 395 = getfsstat */ { AS(statfs_args), (sy_call_t *)statfs, AUE_STATFS, NULL, 0, 0 }, /* 396 = statfs */ { AS(fstatfs_args), (sy_call_t *)fstatfs, AUE_FSTATFS, NULL, 0, 0 }, /* 397 = fstatfs */ - { AS(fhstatfs_args), (sy_call_t *)fhstatfs, AUE_NULL, NULL, 0, 0 }, /* 398 = fhstatfs */ + { AS(fhstatfs_args), (sy_call_t *)fhstatfs, AUE_FHSTATFS, NULL, 0, 0 }, /* 398 = fhstatfs */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 399 = nosys */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 400 = ksem_close */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 401 = ksem_post */ @@ -476,7 +476,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 441 = ksem_timedwait */ { AS(thr_suspend_args), (sy_call_t *)thr_suspend, AUE_NULL, NULL, 0, 0 }, /* 442 = thr_suspend */ { AS(thr_wake_args), (sy_call_t *)thr_wake, AUE_NULL, NULL, 0, 0 }, /* 443 = thr_wake */ - { AS(kldunloadf_args), (sy_call_t *)kldunloadf, AUE_NULL, NULL, 0, 0 }, /* 444 = kldunloadf */ + { AS(kldunloadf_args), (sy_call_t *)kldunloadf, AUE_MODUNLOAD, NULL, 0, 0 }, /* 444 = kldunloadf */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 445 = audit */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 446 = auditon */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 447 = getauid */ @@ -501,4 +501,6 @@ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 466 = thr_setscheduler */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 467 = thr_getscheduler */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 468 = thr_setschedparam */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 469 = __getpath_fromfd */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 470 = __getpath_fromaddr */ }; ==== //depot/projects/trustedbsd/priv/sys/compat/freebsd32/syscalls.master#2 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.71 2006/08/16 22:32:50 peter Exp $ + $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp $ ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 ; from: src/sys/kern/syscalls.master 1.107 ; @@ -238,8 +238,8 @@ 126 AUE_SETREUID NOPROTO { int setreuid(int ruid, int euid); } 127 AUE_SETREGID NOPROTO { int setregid(int rgid, int egid); } 128 AUE_RENAME NOPROTO { int rename(char *from, char *to); } -129 AUE_NULL OBSOL otruncate -130 AUE_NULL OBSOL ftruncate +129 AUE_TRUNCATE OBSOL otruncate +130 AUE_FTRUNCATE OBSOL ftruncate 131 AUE_FLOCK NOPROTO { int flock(int fd, int how); } 132 AUE_MKFIFO NOPROTO { int mkfifo(char *path, int mode); } 133 AUE_SENDTO NOPROTO { int sendto(int s, caddr_t buf, \ @@ -256,17 +256,17 @@ 140 AUE_ADJTIME STD { int freebsd32_adjtime( \ struct timeval32 *delta, \ struct timeval32 *olddelta); } -141 AUE_NULL OBSOL ogetpeername -142 AUE_NULL OBSOL ogethostid -143 AUE_NULL OBSOL sethostid -144 AUE_NULL OBSOL getrlimit -145 AUE_NULL OBSOL setrlimit -146 AUE_NULL OBSOL killpg +141 AUE_GETPEERNAME OBSOL ogetpeername +142 AUE_SYSCTL OBSOL ogethostid +143 AUE_SYSCTL OBSOL sethostid +144 AUE_GETRLIMIT OBSOL getrlimit +145 AUE_SETRLIMIT OBSOL setrlimit +146 AUE_KILLPG OBSOL killpg 147 AUE_SETSID NOPROTO { int setsid(void); } 148 AUE_QUOTACTL NOPROTO { int quotactl(char *path, int cmd, int uid, \ caddr_t arg); } -149 AUE_NULL OBSOL oquota -150 AUE_NULL OBSOL ogetsockname +149 AUE_O_QUOTA OBSOL oquota +150 AUE_GETSOCKNAME OBSOL ogetsockname ; Syscalls 151-180 inclusive are reserved for vendor-specific ; system calls. (This includes various calls added for compatibity @@ -278,23 +278,23 @@ 154 AUE_NULL UNIMPL nosys ; 155 is initialized by the NFS code, if present. ; XXX this is a problem!!! -155 AUE_NFSSVC UNIMPL nfssvc -156 AUE_NULL OBSOL ogetdirentries +155 AUE_NFS_SVC UNIMPL nfssvc +156 AUE_GETDIRENTRIES OBSOL ogetdirentries 157 AUE_STATFS COMPAT4 { int freebsd32_statfs(char *path, \ struct statfs32 *buf); } 158 AUE_FSTATFS COMPAT4 { int freebsd32_fstatfs(int fd, \ struct statfs32 *buf); } 159 AUE_NULL UNIMPL nosys -160 AUE_NULL UNIMPL nosys +160 AUE_LGETFH UNIMPL lgetfh 161 AUE_NFS_GETFH NOPROTO { int getfh(char *fname, \ struct fhandle *fhp); } -162 AUE_O_GETDOMAINNAME NOPROTO { int getdomainname(char *domainname, \ +162 AUE_SYSCTL NOPROTO { int getdomainname(char *domainname, \ int len); } -163 AUE_O_SETDOMAINNAME NOPROTO { int setdomainname(char *domainname, \ +163 AUE_SYSCTL NOPROTO { int setdomainname(char *domainname, \ int len); } 164 AUE_NULL NOPROTO { int uname(struct utsname *name); } -165 AUE_NULL NOPROTO { int sysarch(int op, char *parms); } -166 AUE_NULL NOPROTO { int rtprio(int function, pid_t pid, \ +165 AUE_SYSARCH NOPROTO { int sysarch(int op, char *parms); } +166 AUE_RTPRIO NOPROTO { int rtprio(int function, pid_t pid, \ struct rtprio *rtp); } 167 AUE_NULL UNIMPL nosys 168 AUE_NULL UNIMPL nosys @@ -314,7 +314,7 @@ u_int32_t offsetlo, u_int32_t offsethi); } ; XXX note - bigendian is different 175 AUE_NULL UNIMPL nosys -176 AUE_ADJTIME NOPROTO { int ntp_adjtime(struct timex *tp); } +176 AUE_NTP_ADJTIME NOPROTO { int ntp_adjtime(struct timex *tp); } 177 AUE_NULL UNIMPL sfork (BSD/OS 2.x) 178 AUE_NULL UNIMPL getdescriptor (BSD/OS 2.x) 179 AUE_NULL UNIMPL setdescriptor (BSD/OS 2.x) @@ -542,7 +542,7 @@ 323 AUE_NULL OBSOL thr_wakeup 324 AUE_MLOCKALL NOPROTO { int mlockall(int how); } 325 AUE_MUNLOCKALL NOPROTO { int munlockall(void); } -326 AUE_NULL NOPROTO { int __getcwd(u_char *buf, u_int buflen); } +326 AUE_GETCWD NOPROTO { int __getcwd(u_char *buf, u_int buflen); } 327 AUE_NULL NOPROTO { int sched_setparam (pid_t pid, \ const struct sched_param *param); } @@ -567,7 +567,7 @@ off_t *sbytes, int flags); } 337 AUE_NULL NOPROTO { int kldsym(int fileid, int cmd, \ void *data); } -338 AUE_NULL NOPROTO { int jail(struct jail *jail); } +338 AUE_JAIL NOPROTO { int jail(struct jail *jail); } 339 AUE_NULL UNIMPL pioctl 340 AUE_SIGPROCMASK NOPROTO { int sigprocmask(int how, \ const sigset_t *set, sigset_t *oset); } @@ -579,10 +579,10 @@ 344 AUE_SIGRETURN COMPAT4 { int freebsd32_sigreturn( \ const struct freebsd4_freebsd32_ucontext *sigcntxp); } ; XXX implement -345 AUE_NULL UNIMPL sigtimedwait +345 AUE_SIGWAIT UNIMPL sigtimedwait ; XXX implement 346 AUE_NULL UNIMPL sigwaitinfo -347 AUE_JAIL NOPROTO { int __acl_get_file(const char *path, \ +347 AUE_NULL NOPROTO { int __acl_get_file(const char *path, \ acl_type_t type, struct acl *aclp); } 348 AUE_NULL NOPROTO { int __acl_set_file(const char *path, \ acl_type_t type, struct acl *aclp); } @@ -598,24 +598,26 @@ acl_type_t type, struct acl *aclp); } 354 AUE_NULL NOPROTO { int __acl_aclcheck_fd(int filedes, \ acl_type_t type, struct acl *aclp); } -355 AUE_NULL NOPROTO { int extattrctl(const char *path, int cmd, \ +355 AUE_EXTATTRCTL NOPROTO { int extattrctl(const char *path, int cmd, \ const char *filename, int attrnamespace, \ const char *attrname); } -356 AUE_NULL NOPROTO { int extattr_set_file(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -357 AUE_NULL NOPROTO { ssize_t extattr_get_file(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -358 AUE_NULL NOPROTO { int extattr_delete_file(const char *path, \ - int attrnamespace, \ +356 AUE_EXTATTR_SET_FILE NOPROTO { int extattr_set_file( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +357 AUE_EXTATTR_GET_FILE NOPROTO { ssize_t extattr_get_file( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +358 AUE_EXTATTR_DELETE_FILE NOPROTO { int extattr_delete_file( \ + const char *path, int attrnamespace, \ const char *attrname); } 359 AUE_NULL UNIMPL aio_waitcomplete -360 AUE_NULL NOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \ +360 AUE_GETRESUID NOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \ uid_t *suid); } -361 AUE_NULL NOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \ +361 AUE_GETRESGID NOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \ gid_t *sgid); } -362 AUE_NULL NOPROTO { int kqueue(void); } +362 AUE_KQUEUE NOPROTO { int kqueue(void); } 363 AUE_NULL STD { int freebsd32_kevent(int fd, \ const struct kevent32 *changelist, \ int nchanges, \ @@ -628,20 +630,20 @@ 368 AUE_NULL UNIMPL __cap_set_fd 369 AUE_NULL UNIMPL __cap_set_file 370 AUE_NULL UNIMPL lkmressys -371 AUE_NULL NOPROTO { int extattr_set_fd(int fd, \ +371 AUE_EXTATTR_SET_FD NOPROTO { int extattr_set_fd(int fd, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -372 AUE_NULL NOPROTO { ssize_t extattr_get_fd(int fd, \ +372 AUE_EXTATTR_GET_FD NOPROTO { ssize_t extattr_get_fd(int fd, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -373 AUE_NULL NOPROTO { int extattr_delete_fd(int fd, \ +373 AUE_EXTATTR_DELETE_FD NOPROTO { int extattr_delete_fd(int fd, \ int attrnamespace, \ const char *attrname); } 374 AUE_NULL NOPROTO { int __setugid(int flag); } 375 AUE_NULL UNIMPL nfsclnt -376 AUE_NULL NOPROTO { int eaccess(char *path, int flags); } +376 AUE_EACCESS NOPROTO { int eaccess(char *path, int flags); } 377 AUE_NULL UNIMPL afs_syscall -378 AUE_NULL NOPROTO { int nmount(struct iovec *iovp, \ >>> TRUNCATED FOR MAIL (1000 lines) <<<