From owner-p4-projects@FreeBSD.ORG Sun Jul 2 04:45:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4858416A415; Sun, 2 Jul 2006 04:45:30 +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 1D25F16A407 for ; Sun, 2 Jul 2006 04:45:30 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF50944411 for ; Sun, 2 Jul 2006 04:45:29 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k624jTHT066138 for ; Sun, 2 Jul 2006 04:45:29 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k624jTRD066135 for perforce@freebsd.org; Sun, 2 Jul 2006 04:45:29 GMT (envelope-from jb@freebsd.org) Date: Sun, 2 Jul 2006 04:45:29 GMT Message-Id: <200607020445.k624jTRD066135@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100424 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 04:45:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=100424 Change 100424 by jb@jb_freebsd2 on 2006/07/02 04:44:30 Define as values rather than just defining. (#if vs #ifdef) Affected files ... .. //depot/projects/dtrace/src/gnu/lib/libdwarf/config.h#3 edit Differences ... ==== //depot/projects/dtrace/src/gnu/lib/libdwarf/config.h#3 (text+ko) ==== @@ -42,8 +42,11 @@ /* Define to 1 if the elf64_getehdr function is in libelf.a */ /* #undef HAVE_ELF64_GETEHDR */ +#if defined(__sparc64__) +#define HAVE_ELF64_GETSHDR 1 +#define HAVE_ELF64_GETEHDR 1 +#endif - /* see if __uint32_t is predefined in the compiler */ /* #undef HAVE___UINT32_T */ @@ -138,3 +141,6 @@ /* Define to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel and VAX). */ /* #undef WORDS_BIGENDIAN */ +#if defined(__sparc64__) +#define WORDS_BIGENDIAN +#endif From owner-p4-projects@FreeBSD.ORG Sun Jul 2 04:45:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A72DB16A553; Sun, 2 Jul 2006 04:45:30 +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 8573516A551 for ; Sun, 2 Jul 2006 04:45:30 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3BFAD44411 for ; Sun, 2 Jul 2006 04:45:30 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k624jUZ9066144 for ; Sun, 2 Jul 2006 04:45:30 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k624jTwf066141 for perforce@freebsd.org; Sun, 2 Jul 2006 04:45:29 GMT (envelope-from jb@freebsd.org) Date: Sun, 2 Jul 2006 04:45:29 GMT Message-Id: <200607020445.k624jTwf066141@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100425 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 04:45:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=100425 Change 100425 by jb@jb_freebsd2 on 2006/07/02 04:44:55 Suck another Sparc header from OpenSolaris Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/sparc/sys/fasttrap_isa.h#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sun Jul 2 04:47:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BA16116A415; Sun, 2 Jul 2006 04:47:33 +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 9108A16A40F for ; Sun, 2 Jul 2006 04:47:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 48D4144411 for ; Sun, 2 Jul 2006 04:47:33 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k624lXOZ074027 for ; Sun, 2 Jul 2006 04:47:33 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k624lWih074024 for perforce@freebsd.org; Sun, 2 Jul 2006 04:47:32 GMT (envelope-from jb@freebsd.org) Date: Sun, 2 Jul 2006 04:47:32 GMT Message-Id: <200607020447.k624lWih074024@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100426 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 04:47:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100426 Change 100426 by jb@jb_freebsd2 on 2006/07/02 04:46:49 Add support for sparc64 Affected files ... .. //depot/projects/dtrace/src/cddl/lib/libdtrace/Makefile#9 edit Differences ... ==== //depot/projects/dtrace/src/cddl/lib/libdtrace/Makefile#9 (text+ko) ==== @@ -69,6 +69,8 @@ .if ${MACHINE_ARCH} == "i386" CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/intel +.elif ${MACHINE_ARCH} == "sparc64" +CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/sparc .endif LFLAGS+=-l From owner-p4-projects@FreeBSD.ORG Sun Jul 2 08:16:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 622F016A415; Sun, 2 Jul 2006 08:16:15 +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 1D24316A407 for ; Sun, 2 Jul 2006 08:16:15 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 99F5743D48 for ; Sun, 2 Jul 2006 08:16:14 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k628GE4j087609 for ; Sun, 2 Jul 2006 08:16:14 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k628GEgR087606 for perforce@freebsd.org; Sun, 2 Jul 2006 08:16:14 GMT (envelope-from clem1@FreeBSD.org) Date: Sun, 2 Jul 2006 08:16:14 GMT Message-Id: <200607020816.k628GEgR087606@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100431 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 08:16:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=100431 Change 100431 by clem1@clem1_ipv6vulns on 2006/07/02 08:15:48 isicng - IPv6 Stack Integrity Checker New Generation. Port to IPv6 of isic. isicng.c : fuzz ipv6 header and fragmentation header. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/INSTALL#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/README#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sun Jul 2 13:54:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 48B7B16A492; Sun, 2 Jul 2006 13:54:18 +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 1C69E16A47C for ; Sun, 2 Jul 2006 13:54:18 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9DC5A43D45 for ; Sun, 2 Jul 2006 13:54:17 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k62DsHro024968 for ; Sun, 2 Jul 2006 13:54:17 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k62DsH1e024965 for perforce@freebsd.org; Sun, 2 Jul 2006 13:54:17 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sun, 2 Jul 2006 13:54:17 GMT Message-Id: <200607021354.k62DsH1e024965@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100435 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 13:54:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=100435 Change 100435 by rdivacky@rdivacky_witten on 2006/07/02 13:54:12 Kernel side TLS implementation. This implementes a bit crippled version of set_thread_area() syscall. We support just 1 thread area (linux does 3) but this should not matter much. Still this code might be altered later. This is for i386 only now as I want to fully implement NPTL first and then focus on amd64. With this we pass tls_test.c test and are able to run /bin/bash (which uses this) with 2.6.x emulation. Full run of bash (ie. running program from within it) is not possible because we lack TID handling and futexes. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#3 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#6 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#3 (text+ko) ==== @@ -718,5 +718,31 @@ l_uint useable:1; }; +/* macros from linux include/asm-um/ldt-i386.h */ +#define LDT_entry_a(info) \ + ((((info)->base_addr & 0x0000ffff) << 16) | ((info)->limit & 0x0ffff)) + +#define LDT_entry_b(info) \ + (((info)->base_addr & 0xff000000) | \ + (((info)->base_addr & 0x00ff0000) >> 16) | \ + ((info)->limit & 0xf0000) | \ + (((info)->read_exec_only ^ 1) << 9) | \ + ((info)->contents << 10) | \ + (((info)->seg_not_present ^ 1) << 15) | \ + ((info)->seg_32bit << 22) | \ + ((info)->limit_in_pages << 23) | \ + ((info)->useable << 20) | \ + 0x7000) + +#define LDT_empty(info) (\ + (info)->base_addr == 0 && \ + (info)->limit == 0 && \ + (info)->contents == 0 && \ + (info)->read_exec_only == 1 && \ + (info)->seg_32bit == 0 && \ + (info)->limit_in_pages == 0 && \ + (info)->seg_not_present == 1 && \ + (info)->useable == 0 ) + #endif /* !_I386_LINUX_LINUX_H_ */ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#6 (text+ko) ==== @@ -59,6 +59,8 @@ #include #include +#include /* needed for pcb definition in linux_set_thread_area */ + struct l_descriptor { l_uint entry_number; l_ulong base_addr; @@ -851,11 +853,30 @@ struct l_user_desc info; int error; int idx; + int a[2]; + struct segment_descriptor sd; error = copyin(args->desc, &info, sizeof(struct l_user_desc)); if (error) return (error); +#ifdef DEBUG + if (ldebug(set_thread_area)) + printf("Args passed to the set_thread_area:\n + entry number: %i, base address: %i, limit: %i, + seg32bit: %i, contents: %i, read_exec_only: %i, + limit in pages: %i, seg_not_present: %i, useable: %i\n", + info.entry_number, + info.base_addr, + info.limit, + info.seg_32bit, + info.contents, + info.read_exec_only, + info.limit_in_pages, + info.seg_not_present, + info.useable); +#endif + idx = info.entry_number; /* Semantics of linux version: every thread in the system has array * of 3 tls descriptors. 1st is GLIBC TLS, 2nd is WINE, 3rd unknown. This @@ -864,15 +885,63 @@ * descriptors. * * Semantics of fbsd version: I think we can ignore that linux has 3 per-thread - * descriptors and use just the 1st one (TODO: davidxu will report us where we get this). - * The tls_array[] is used only in set/get-thread_area() syscalls and for loading the - * GDT descriptors. In fbsd we use just one GDT descriptor for TLS so we will load - * just one. + * descriptors and use just the 1st one. The tls_array[] is used only in + * set/get-thread_area() syscalls and for loading the GDT descriptors. In fbsd + * we use just one GDT descriptor for TLS so we will load just one. + * XXX: this doesnt work when user-space process tries to use more then 1 TLS segment + * comment in the linux sources says wine might do that. */ - /* we support just GLIBC TLS now */ - if (idx != 6 && idx != -1) + /* we support just GLIBC TLS now + * we should let 3 proceed as well because we use this segment so + * if code does two subsequent calls it should succeed + */ + if (idx != 6 && idx != -1 && idx != 3) return (EINVAL); + + /* we have to copy out the GDT entry we use + * FreeBSD uses GDT entry #3 for storing %gs so load that + * XXX: what if userspace program doesnt check this value and tries + * to use 6, 7 or 8? + */ + idx = info.entry_number = 3; + error = copyout(&info, args->desc, sizeof(struct l_user_desc)); + if (error) + return (error); + + if (LDT_empty(&info)) { + a[0] = 0; + a[1] = 0; + } else { + a[0] = LDT_entry_a(&info); + a[1] = LDT_entry_b(&info); + } + + memcpy(&sd, &a, sizeof(a)); +#ifdef DEBUG + if (ldebug(set_thread_area)) + printf("Segment created in set_thread_area: \n + lobase: %x, hibase: %x, lolimit: %x, + hilimit: %x, type: %i, dpl: %i, + p: %i, xx: %i, def32: %i, gran: %i\n", sd.sd_lobase, + sd.sd_hibase, + sd.sd_lolimit, + sd.sd_hilimit, + sd.sd_type, + sd.sd_dpl, + sd.sd_p, + sd.sd_xx, + sd.sd_def32, + sd.sd_gran); +#endif + + /* this is taken from i386 version of cpu_set_user_tls() */ + critical_enter(); + /* set %gs */ + td->td_pcb->pcb_gsd = sd; + PCPU_GET(fsgs_gdt)[1] = sd; + load_gs(GSEL(GUGS_SEL, SEL_UPL)); + critical_exit(); return (0); } From owner-p4-projects@FreeBSD.ORG Sun Jul 2 17:08:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ECAF816A416; Sun, 2 Jul 2006 17:08:50 +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 76A1016A412 for ; Sun, 2 Jul 2006 17:08:50 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A5D6D44570 for ; Sun, 2 Jul 2006 17:08:46 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k62H8kv6045530 for ; Sun, 2 Jul 2006 17:08:46 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k62H8j7f045503 for perforce@freebsd.org; Sun, 2 Jul 2006 17:08:45 GMT (envelope-from imp@freebsd.org) Date: Sun, 2 Jul 2006 17:08:45 GMT Message-Id: <200607021708.k62H8j7f045503@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100439 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 17:08:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100439 Change 100439 by imp@imp_plunger on 2006/07/02 16:54:42 mips2 branch. Affected files ... .. //depot/projects/mips2/src/COPYRIGHT#1 branch .. //depot/projects/mips2/src/LOCKS#1 branch .. //depot/projects/mips2/src/MAINTAINERS#1 branch .. //depot/projects/mips2/src/Makefile#1 branch .. //depot/projects/mips2/src/Makefile.inc1#1 branch .. //depot/projects/mips2/src/ObsoleteFiles.inc#1 branch .. //depot/projects/mips2/src/README#1 branch .. //depot/projects/mips2/src/UPDATING#1 branch .. //depot/projects/mips2/src/bin/Makefile#1 branch .. //depot/projects/mips2/src/bin/Makefile.inc#1 branch .. //depot/projects/mips2/src/bin/cat/Makefile#1 branch .. //depot/projects/mips2/src/bin/cat/cat.1#1 branch .. //depot/projects/mips2/src/bin/cat/cat.c#1 branch .. //depot/projects/mips2/src/bin/chflags/Makefile#1 branch .. //depot/projects/mips2/src/bin/chflags/chflags.1#1 branch .. //depot/projects/mips2/src/bin/chflags/chflags.c#1 branch .. //depot/projects/mips2/src/bin/chio/Makefile#1 branch .. //depot/projects/mips2/src/bin/chio/chio.1#1 branch .. //depot/projects/mips2/src/bin/chio/chio.c#1 branch .. //depot/projects/mips2/src/bin/chio/defs.h#1 branch .. //depot/projects/mips2/src/bin/chio/pathnames.h#1 branch .. //depot/projects/mips2/src/bin/chmod/Makefile#1 branch .. //depot/projects/mips2/src/bin/chmod/chmod.1#1 branch .. //depot/projects/mips2/src/bin/chmod/chmod.c#1 branch .. //depot/projects/mips2/src/bin/cp/Makefile#1 branch .. //depot/projects/mips2/src/bin/cp/cp.1#1 branch .. //depot/projects/mips2/src/bin/cp/cp.c#1 branch .. //depot/projects/mips2/src/bin/cp/extern.h#1 branch .. //depot/projects/mips2/src/bin/cp/utils.c#1 branch .. //depot/projects/mips2/src/bin/csh/Makefile#1 branch .. //depot/projects/mips2/src/bin/csh/USD.doc/csh.1#1 branch .. //depot/projects/mips2/src/bin/csh/USD.doc/csh.2#1 branch .. //depot/projects/mips2/src/bin/csh/USD.doc/csh.3#1 branch .. //depot/projects/mips2/src/bin/csh/USD.doc/csh.4#1 branch .. //depot/projects/mips2/src/bin/csh/USD.doc/csh.a#1 branch .. //depot/projects/mips2/src/bin/csh/USD.doc/csh.g#1 branch .. //depot/projects/mips2/src/bin/csh/USD.doc/tabs#1 branch .. //depot/projects/mips2/src/bin/csh/config.h#1 branch .. //depot/projects/mips2/src/bin/csh/config_p.h#1 branch .. //depot/projects/mips2/src/bin/csh/host.defs#1 branch .. //depot/projects/mips2/src/bin/csh/iconv.h#1 branch .. //depot/projects/mips2/src/bin/csh/iconv_stub.c#1 branch .. //depot/projects/mips2/src/bin/date/Makefile#1 branch .. //depot/projects/mips2/src/bin/date/date.1#1 branch .. //depot/projects/mips2/src/bin/date/date.c#1 branch .. //depot/projects/mips2/src/bin/date/extern.h#1 branch .. //depot/projects/mips2/src/bin/date/netdate.c#1 branch .. //depot/projects/mips2/src/bin/date/vary.c#1 branch .. //depot/projects/mips2/src/bin/date/vary.h#1 branch .. //depot/projects/mips2/src/bin/dd/Makefile#1 branch .. //depot/projects/mips2/src/bin/dd/args.c#1 branch .. //depot/projects/mips2/src/bin/dd/conv.c#1 branch .. //depot/projects/mips2/src/bin/dd/conv_tab.c#1 branch .. //depot/projects/mips2/src/bin/dd/dd.1#1 branch .. //depot/projects/mips2/src/bin/dd/dd.c#1 branch .. //depot/projects/mips2/src/bin/dd/dd.h#1 branch .. //depot/projects/mips2/src/bin/dd/extern.h#1 branch .. //depot/projects/mips2/src/bin/dd/gen.c#1 branch .. //depot/projects/mips2/src/bin/dd/misc.c#1 branch .. //depot/projects/mips2/src/bin/dd/position.c#1 branch .. //depot/projects/mips2/src/bin/dd/ref.ascii#1 branch .. //depot/projects/mips2/src/bin/dd/ref.ebcdic#1 branch .. //depot/projects/mips2/src/bin/dd/ref.ibm#1 branch .. //depot/projects/mips2/src/bin/dd/ref.lcase#1 branch .. //depot/projects/mips2/src/bin/dd/ref.oldascii#1 branch .. //depot/projects/mips2/src/bin/dd/ref.oldebcdic#1 branch .. //depot/projects/mips2/src/bin/dd/ref.oldibm#1 branch .. //depot/projects/mips2/src/bin/dd/ref.pareven#1 branch .. //depot/projects/mips2/src/bin/dd/ref.parnone#1 branch .. //depot/projects/mips2/src/bin/dd/ref.parodd#1 branch .. //depot/projects/mips2/src/bin/dd/ref.parset#1 branch .. //depot/projects/mips2/src/bin/dd/ref.swab#1 branch .. //depot/projects/mips2/src/bin/dd/ref.ucase#1 branch .. //depot/projects/mips2/src/bin/df/Makefile#1 branch .. //depot/projects/mips2/src/bin/df/df.1#1 branch .. //depot/projects/mips2/src/bin/df/df.c#1 branch .. //depot/projects/mips2/src/bin/domainname/Makefile#1 branch .. //depot/projects/mips2/src/bin/domainname/domainname.1#1 branch .. //depot/projects/mips2/src/bin/domainname/domainname.c#1 branch .. //depot/projects/mips2/src/bin/echo/Makefile#1 branch .. //depot/projects/mips2/src/bin/echo/echo.1#1 branch .. //depot/projects/mips2/src/bin/echo/echo.c#1 branch .. //depot/projects/mips2/src/bin/ed/Makefile#1 branch .. //depot/projects/mips2/src/bin/ed/POSIX#1 branch .. //depot/projects/mips2/src/bin/ed/README#1 branch .. //depot/projects/mips2/src/bin/ed/buf.c#1 branch .. //depot/projects/mips2/src/bin/ed/cbc.c#1 branch .. //depot/projects/mips2/src/bin/ed/ed.1#1 branch .. //depot/projects/mips2/src/bin/ed/ed.h#1 branch .. //depot/projects/mips2/src/bin/ed/glbl.c#1 branch .. //depot/projects/mips2/src/bin/ed/io.c#1 branch .. //depot/projects/mips2/src/bin/ed/main.c#1 branch .. //depot/projects/mips2/src/bin/ed/re.c#1 branch .. //depot/projects/mips2/src/bin/ed/sub.c#1 branch .. //depot/projects/mips2/src/bin/ed/test/=.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/Makefile#1 branch .. //depot/projects/mips2/src/bin/ed/test/README#1 branch .. //depot/projects/mips2/src/bin/ed/test/TODO#1 branch .. //depot/projects/mips2/src/bin/ed/test/a.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/a.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/a.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/a1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/a2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/addr.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/addr.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/addr.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/addr1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/addr2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/ascii.d.uu#1 branch .. //depot/projects/mips2/src/bin/ed/test/ascii.r.uu#1 branch .. //depot/projects/mips2/src/bin/ed/test/ascii.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/bang1.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/bang1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/bang1.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/bang1.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/bang2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/c.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/c.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/c.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/c1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/c2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/ckscripts.sh#1 branch .. //depot/projects/mips2/src/bin/ed/test/d.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/d.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/d.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/d.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/e1.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/e1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/e1.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/e1.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/e2.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/e2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/e2.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/e2.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/e3.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/e3.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/e3.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/e3.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/e4.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/e4.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/e4.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/f1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/f2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/g1.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/g1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/g1.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/g1.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/g2.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/g2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/g2.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/g2.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/g3.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/g3.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/g3.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/g3.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/g4.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/g4.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/g4.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/g5.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/g5.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/g5.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/h.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/i.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/i.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/i.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/i1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/i2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/i3.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/j.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/j.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/j.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/k.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/k.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/k.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/k1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/k2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/k3.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/k4.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/l.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/l.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/l.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/m.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/m.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/m.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/m.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/mkscripts.sh#1 branch .. //depot/projects/mips2/src/bin/ed/test/n.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/n.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/n.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/nl.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/nl1.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/nl1.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/nl1.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/nl2.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/nl2.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/nl2.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/p.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/p.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/p.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/q.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/q.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/q.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/q1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/r1.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/r1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/r1.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/r1.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/r2.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/r2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/r2.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/r2.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/r3.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/r3.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/r3.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/s1.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/s1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s1.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/s1.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/s10.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s2.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/s2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s2.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/s2.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/s3.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/s3.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s3.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/s3.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/s4.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s5.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s6.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s7.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s8.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/s9.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/t.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/t.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/t1.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/t1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/t1.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/t1.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/t2.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/t2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/t2.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/t2.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/u.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/u.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/u.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/u.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/v.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/v.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/v.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/w.d#1 branch .. //depot/projects/mips2/src/bin/ed/test/w.r#1 branch .. //depot/projects/mips2/src/bin/ed/test/w.t#1 branch .. //depot/projects/mips2/src/bin/ed/test/w1.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/w2.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/w3.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/x.err#1 branch .. //depot/projects/mips2/src/bin/ed/test/z.err#1 branch .. //depot/projects/mips2/src/bin/ed/undo.c#1 branch .. //depot/projects/mips2/src/bin/expr/Makefile#1 branch .. //depot/projects/mips2/src/bin/expr/expr.1#1 branch .. //depot/projects/mips2/src/bin/expr/expr.y#1 branch .. //depot/projects/mips2/src/bin/getfacl/Makefile#1 branch .. //depot/projects/mips2/src/bin/getfacl/getfacl.1#1 branch .. //depot/projects/mips2/src/bin/getfacl/getfacl.c#1 branch .. //depot/projects/mips2/src/bin/hostname/Makefile#1 branch .. //depot/projects/mips2/src/bin/hostname/hostname.1#1 branch .. //depot/projects/mips2/src/bin/hostname/hostname.c#1 branch .. //depot/projects/mips2/src/bin/kenv/Makefile#1 branch .. //depot/projects/mips2/src/bin/kenv/kenv.1#1 branch .. //depot/projects/mips2/src/bin/kenv/kenv.c#1 branch .. //depot/projects/mips2/src/bin/kill/Makefile#1 branch .. //depot/projects/mips2/src/bin/kill/kill.1#1 branch .. //depot/projects/mips2/src/bin/kill/kill.c#1 branch .. //depot/projects/mips2/src/bin/ln/Makefile#1 branch .. //depot/projects/mips2/src/bin/ln/ln.1#1 branch .. //depot/projects/mips2/src/bin/ln/ln.c#1 branch .. //depot/projects/mips2/src/bin/ln/symlink.7#1 branch .. //depot/projects/mips2/src/bin/ls/Makefile#1 branch .. //depot/projects/mips2/src/bin/ls/cmp.c#1 branch .. //depot/projects/mips2/src/bin/ls/extern.h#1 branch .. //depot/projects/mips2/src/bin/ls/ls.1#1 branch .. //depot/projects/mips2/src/bin/ls/ls.c#1 branch .. //depot/projects/mips2/src/bin/ls/ls.h#1 branch .. //depot/projects/mips2/src/bin/ls/print.c#1 branch .. //depot/projects/mips2/src/bin/ls/util.c#1 branch .. //depot/projects/mips2/src/bin/mkdir/Makefile#1 branch .. //depot/projects/mips2/src/bin/mkdir/mkdir.1#1 branch .. //depot/projects/mips2/src/bin/mkdir/mkdir.c#1 branch .. //depot/projects/mips2/src/bin/mv/Makefile#1 branch .. //depot/projects/mips2/src/bin/mv/mv.1#1 branch .. //depot/projects/mips2/src/bin/mv/mv.c#1 branch .. //depot/projects/mips2/src/bin/pax/Makefile#1 branch .. //depot/projects/mips2/src/bin/pax/ar_io.c#1 branch .. //depot/projects/mips2/src/bin/pax/ar_subs.c#1 branch .. //depot/projects/mips2/src/bin/pax/buf_subs.c#1 branch .. //depot/projects/mips2/src/bin/pax/cache.c#1 branch .. //depot/projects/mips2/src/bin/pax/cache.h#1 branch .. //depot/projects/mips2/src/bin/pax/cpio.1#1 branch .. //depot/projects/mips2/src/bin/pax/cpio.c#1 branch .. //depot/projects/mips2/src/bin/pax/cpio.h#1 branch .. //depot/projects/mips2/src/bin/pax/extern.h#1 branch .. //depot/projects/mips2/src/bin/pax/file_subs.c#1 branch .. //depot/projects/mips2/src/bin/pax/ftree.c#1 branch .. //depot/projects/mips2/src/bin/pax/ftree.h#1 branch .. //depot/projects/mips2/src/bin/pax/gen_subs.c#1 branch .. //depot/projects/mips2/src/bin/pax/getoldopt.c#1 branch .. //depot/projects/mips2/src/bin/pax/options.c#1 branch .. //depot/projects/mips2/src/bin/pax/options.h#1 branch .. //depot/projects/mips2/src/bin/pax/pat_rep.c#1 branch .. //depot/projects/mips2/src/bin/pax/pat_rep.h#1 branch .. //depot/projects/mips2/src/bin/pax/pax.1#1 branch .. //depot/projects/mips2/src/bin/pax/pax.c#1 branch .. //depot/projects/mips2/src/bin/pax/pax.h#1 branch .. //depot/projects/mips2/src/bin/pax/sel_subs.c#1 branch .. //depot/projects/mips2/src/bin/pax/sel_subs.h#1 branch .. //depot/projects/mips2/src/bin/pax/tables.c#1 branch .. //depot/projects/mips2/src/bin/pax/tables.h#1 branch .. //depot/projects/mips2/src/bin/pax/tar.1#1 branch .. //depot/projects/mips2/src/bin/pax/tar.c#1 branch .. //depot/projects/mips2/src/bin/pax/tar.h#1 branch .. //depot/projects/mips2/src/bin/pax/tty_subs.c#1 branch .. //depot/projects/mips2/src/bin/ps/Makefile#1 branch .. //depot/projects/mips2/src/bin/ps/extern.h#1 branch .. //depot/projects/mips2/src/bin/ps/fmt.c#1 branch .. //depot/projects/mips2/src/bin/ps/keyword.c#1 branch .. //depot/projects/mips2/src/bin/ps/nlist.c#1 branch .. //depot/projects/mips2/src/bin/ps/print.c#1 branch .. //depot/projects/mips2/src/bin/ps/ps.1#1 branch .. //depot/projects/mips2/src/bin/ps/ps.c#1 branch .. //depot/projects/mips2/src/bin/ps/ps.h#1 branch .. //depot/projects/mips2/src/bin/pwd/Makefile#1 branch .. //depot/projects/mips2/src/bin/pwd/pwd.1#1 branch .. //depot/projects/mips2/src/bin/pwd/pwd.c#1 branch .. //depot/projects/mips2/src/bin/rcp/Makefile#1 branch .. //depot/projects/mips2/src/bin/rcp/extern.h#1 branch .. //depot/projects/mips2/src/bin/rcp/rcp.1#1 branch .. //depot/projects/mips2/src/bin/rcp/rcp.c#1 branch .. //depot/projects/mips2/src/bin/rcp/util.c#1 branch .. //depot/projects/mips2/src/bin/realpath/Makefile#1 branch .. //depot/projects/mips2/src/bin/realpath/realpath.1#1 branch .. //depot/projects/mips2/src/bin/realpath/realpath.c#1 branch .. //depot/projects/mips2/src/bin/rm/Makefile#1 branch .. //depot/projects/mips2/src/bin/rm/rm.1#1 branch .. //depot/projects/mips2/src/bin/rm/rm.c#1 branch .. //depot/projects/mips2/src/bin/rmail/Makefile#1 branch .. //depot/projects/mips2/src/bin/rmdir/Makefile#1 branch .. //depot/projects/mips2/src/bin/rmdir/rmdir.1#1 branch .. //depot/projects/mips2/src/bin/rmdir/rmdir.c#1 branch .. //depot/projects/mips2/src/bin/setfacl/Makefile#1 branch .. //depot/projects/mips2/src/bin/setfacl/file.c#1 branch .. //depot/projects/mips2/src/bin/setfacl/mask.c#1 branch .. //depot/projects/mips2/src/bin/setfacl/merge.c#1 branch .. //depot/projects/mips2/src/bin/setfacl/remove.c#1 branch .. //depot/projects/mips2/src/bin/setfacl/setfacl.1#1 branch .. //depot/projects/mips2/src/bin/setfacl/setfacl.c#1 branch .. //depot/projects/mips2/src/bin/setfacl/setfacl.h#1 branch .. //depot/projects/mips2/src/bin/setfacl/util.c#1 branch .. //depot/projects/mips2/src/bin/sh/Makefile#1 branch .. //depot/projects/mips2/src/bin/sh/TOUR#1 branch .. //depot/projects/mips2/src/bin/sh/alias.c#1 branch .. //depot/projects/mips2/src/bin/sh/alias.h#1 branch .. //depot/projects/mips2/src/bin/sh/arith.h#1 branch .. //depot/projects/mips2/src/bin/sh/arith.y#1 branch .. //depot/projects/mips2/src/bin/sh/arith_lex.l#1 branch .. //depot/projects/mips2/src/bin/sh/bltin/bltin.h#1 branch .. //depot/projects/mips2/src/bin/sh/bltin/echo.1#1 branch .. //depot/projects/mips2/src/bin/sh/bltin/echo.c#1 branch .. //depot/projects/mips2/src/bin/sh/builtins.def#1 branch .. //depot/projects/mips2/src/bin/sh/cd.c#1 branch .. //depot/projects/mips2/src/bin/sh/cd.h#1 branch .. //depot/projects/mips2/src/bin/sh/error.c#1 branch .. //depot/projects/mips2/src/bin/sh/error.h#1 branch .. //depot/projects/mips2/src/bin/sh/eval.c#1 branch .. //depot/projects/mips2/src/bin/sh/eval.h#1 branch .. //depot/projects/mips2/src/bin/sh/exec.c#1 branch .. //depot/projects/mips2/src/bin/sh/exec.h#1 branch .. //depot/projects/mips2/src/bin/sh/expand.c#1 branch .. //depot/projects/mips2/src/bin/sh/expand.h#1 branch .. //depot/projects/mips2/src/bin/sh/funcs/cmv#1 branch .. //depot/projects/mips2/src/bin/sh/funcs/dirs#1 branch .. //depot/projects/mips2/src/bin/sh/funcs/kill#1 branch .. //depot/projects/mips2/src/bin/sh/funcs/login#1 branch .. //depot/projects/mips2/src/bin/sh/funcs/newgrp#1 branch .. //depot/projects/mips2/src/bin/sh/funcs/popd#1 branch .. //depot/projects/mips2/src/bin/sh/funcs/pushd#1 branch .. //depot/projects/mips2/src/bin/sh/funcs/suspend#1 branch .. //depot/projects/mips2/src/bin/sh/histedit.c#1 branch .. //depot/projects/mips2/src/bin/sh/init.h#1 branch .. //depot/projects/mips2/src/bin/sh/input.c#1 branch .. //depot/projects/mips2/src/bin/sh/input.h#1 branch .. //depot/projects/mips2/src/bin/sh/jobs.c#1 branch .. //depot/projects/mips2/src/bin/sh/jobs.h#1 branch .. //depot/projects/mips2/src/bin/sh/mail.c#1 branch .. //depot/projects/mips2/src/bin/sh/mail.h#1 branch .. //depot/projects/mips2/src/bin/sh/main.c#1 branch .. //depot/projects/mips2/src/bin/sh/main.h#1 branch .. //depot/projects/mips2/src/bin/sh/memalloc.c#1 branch .. //depot/projects/mips2/src/bin/sh/memalloc.h#1 branch .. //depot/projects/mips2/src/bin/sh/miscbltin.c#1 branch .. //depot/projects/mips2/src/bin/sh/mkbuiltins#1 branch .. //depot/projects/mips2/src/bin/sh/mkinit.c#1 branch .. //depot/projects/mips2/src/bin/sh/mknodes.c#1 branch .. //depot/projects/mips2/src/bin/sh/mksyntax.c#1 branch .. //depot/projects/mips2/src/bin/sh/mktokens#1 branch .. //depot/projects/mips2/src/bin/sh/myhistedit.h#1 branch .. //depot/projects/mips2/src/bin/sh/mystring.c#1 branch .. //depot/projects/mips2/src/bin/sh/mystring.h#1 branch .. //depot/projects/mips2/src/bin/sh/nodes.c.pat#1 branch .. //depot/projects/mips2/src/bin/sh/nodetypes#1 branch .. //depot/projects/mips2/src/bin/sh/options.c#1 branch .. //depot/projects/mips2/src/bin/sh/options.h#1 branch .. //depot/projects/mips2/src/bin/sh/output.c#1 branch .. //depot/projects/mips2/src/bin/sh/output.h#1 branch .. //depot/projects/mips2/src/bin/sh/parser.c#1 branch .. //depot/projects/mips2/src/bin/sh/parser.h#1 branch .. //depot/projects/mips2/src/bin/sh/redir.c#1 branch .. //depot/projects/mips2/src/bin/sh/redir.h#1 branch .. //depot/projects/mips2/src/bin/sh/sh.1#1 branch .. //depot/projects/mips2/src/bin/sh/shell.h#1 branch .. //depot/projects/mips2/src/bin/sh/show.c#1 branch .. //depot/projects/mips2/src/bin/sh/show.h#1 branch .. //depot/projects/mips2/src/bin/sh/trap.c#1 branch .. //depot/projects/mips2/src/bin/sh/trap.h#1 branch .. //depot/projects/mips2/src/bin/sh/var.c#1 branch .. //depot/projects/mips2/src/bin/sh/var.h#1 branch .. //depot/projects/mips2/src/bin/sleep/Makefile#1 branch .. //depot/projects/mips2/src/bin/sleep/sleep.1#1 branch .. //depot/projects/mips2/src/bin/sleep/sleep.c#1 branch .. //depot/projects/mips2/src/bin/stty/Makefile#1 branch .. //depot/projects/mips2/src/bin/stty/cchar.c#1 branch .. //depot/projects/mips2/src/bin/stty/extern.h#1 branch .. //depot/projects/mips2/src/bin/stty/gfmt.c#1 branch .. //depot/projects/mips2/src/bin/stty/key.c#1 branch .. //depot/projects/mips2/src/bin/stty/modes.c#1 branch .. //depot/projects/mips2/src/bin/stty/print.c#1 branch .. //depot/projects/mips2/src/bin/stty/stty.1#1 branch .. //depot/projects/mips2/src/bin/stty/stty.c#1 branch .. //depot/projects/mips2/src/bin/stty/stty.h#1 branch .. //depot/projects/mips2/src/bin/stty/util.c#1 branch .. //depot/projects/mips2/src/bin/sync/Makefile#1 branch .. //depot/projects/mips2/src/bin/sync/sync.8#1 branch .. //depot/projects/mips2/src/bin/sync/sync.c#1 branch .. //depot/projects/mips2/src/bin/test/Makefile#1 branch .. //depot/projects/mips2/src/bin/test/TEST.README#1 branch .. //depot/projects/mips2/src/bin/test/TEST.csh#1 branch .. //depot/projects/mips2/src/bin/test/TEST.sh#1 branch .. //depot/projects/mips2/src/bin/test/test.1#1 branch .. //depot/projects/mips2/src/bin/test/test.c#1 branch .. //depot/projects/mips2/src/contrib/amd/AUTHORS#1 branch .. //depot/projects/mips2/src/contrib/amd/BUGS#1 branch .. //depot/projects/mips2/src/contrib/amd/COPYING#1 branch .. //depot/projects/mips2/src/contrib/amd/ChangeLog#1 branch .. //depot/projects/mips2/src/contrib/amd/FREEBSD-Xlist#1 branch .. //depot/projects/mips2/src/contrib/amd/FREEBSD-upgrade#1 branch .. //depot/projects/mips2/src/contrib/amd/INSTALL#1 branch .. //depot/projects/mips2/src/contrib/amd/MIRRORS.html#1 branch .. //depot/projects/mips2/src/contrib/amd/MIRRORS.txt#1 branch .. //depot/projects/mips2/src/contrib/amd/NEWS#1 branch .. //depot/projects/mips2/src/contrib/amd/README#1 branch .. //depot/projects/mips2/src/contrib/amd/README.ldap#1 branch .. //depot/projects/mips2/src/contrib/amd/README.y2k#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/am_ops.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amd.8#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amd.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amd.h#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_auto.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_direct.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_error.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_host.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_inherit.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_link.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_linkx.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_nfsl.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_nfsx.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_program.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_root.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_toplvl.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amfs_union.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amq_subr.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/amq_svc.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/autil.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/clock.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/conf.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/conf_parse.y#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/conf_tok.l#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/get_args.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_file.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_hesiod.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_ldap.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_ndbm.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_nis.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_nisplus.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_passwd.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/info_union.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/map.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/mapc.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/mntfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/nfs_prot_svc.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/nfs_start.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/nfs_subr.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_TEMPLATE.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_cachefs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_cdfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_efs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_lofs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_mfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_nfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_nfs3.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_nullfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_pcfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_tfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_tmpfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_ufs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_umapfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_unionfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/ops_xfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/opts.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/restart.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/rpc_fwd.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/sched.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/srvr_amfs_auto.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amd/srvr_nfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amq/amq.8#1 branch .. //depot/projects/mips2/src/contrib/amd/amq/amq.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amq/amq.h#1 branch .. //depot/projects/mips2/src/contrib/amd/amq/amq_clnt.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amq/amq_xdr.c#1 branch .. //depot/projects/mips2/src/contrib/amd/amq/pawd.1#1 branch .. //depot/projects/mips2/src/contrib/amd/amq/pawd.c#1 branch .. //depot/projects/mips2/src/contrib/amd/aux_conf.h.in#1 branch .. //depot/projects/mips2/src/contrib/amd/bootstrap#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/checkmount/checkmount_bsd44.c#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/fh_dref/fh_dref_freebsd22.h#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/mtab/mtab_bsd.c#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/nfs_prot/nfs_prot_freebsd2.h#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/nfs_prot/nfs_prot_freebsd3.h#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/sa_dref/sa_dref_bsd44.h#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/transp/transp_sockets.c#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/trap/trap_default.h#1 branch .. //depot/projects/mips2/src/contrib/amd/conf/umount/umount_bsd44.c#1 branch .. //depot/projects/mips2/src/contrib/amd/doc/am-utils.texi#1 branch .. //depot/projects/mips2/src/contrib/amd/doc/texinfo.tex#1 branch .. //depot/projects/mips2/src/contrib/amd/doc/version.texi#1 branch .. //depot/projects/mips2/src/contrib/amd/fixmount/fixmount.8#1 branch .. //depot/projects/mips2/src/contrib/amd/fixmount/fixmount.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_analyze.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_data.h#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_dict.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_gram.y#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_lex.l#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsi_util.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsinfo.8#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsinfo.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/fsinfo.h#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_atab.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_bparam.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_dumpset.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_exportfs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/fsinfo/wr_fstab.c#1 branch .. //depot/projects/mips2/src/contrib/amd/hlfsd/hlfsd.8#1 branch .. //depot/projects/mips2/src/contrib/amd/hlfsd/hlfsd.c#1 branch .. //depot/projects/mips2/src/contrib/amd/hlfsd/hlfsd.h#1 branch .. //depot/projects/mips2/src/contrib/amd/hlfsd/homedir.c#1 branch .. //depot/projects/mips2/src/contrib/amd/hlfsd/nfs_prot_svc.c#1 branch .. //depot/projects/mips2/src/contrib/amd/hlfsd/stubs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/include/am_compat.h#1 branch .. //depot/projects/mips2/src/contrib/amd/include/am_defs.h#1 branch .. //depot/projects/mips2/src/contrib/amd/include/am_utils.h#1 branch .. //depot/projects/mips2/src/contrib/amd/include/am_xdr_func.h#1 branch .. //depot/projects/mips2/src/contrib/amd/include/amq_defs.h#1 branch .. //depot/projects/mips2/src/contrib/amd/include/mount_headers1.h#1 branch .. //depot/projects/mips2/src/contrib/amd/include/mount_headers2.h#1 branch .. //depot/projects/mips2/src/contrib/amd/ldap-id.ms#1 branch .. //depot/projects/mips2/src/contrib/amd/ldap-id.txt#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/alloca.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/amu.h#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/hasmntopt.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/misc_rpc.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/mount_fs.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/mtab.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/nfs_prot_xdr.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/strerror.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/util.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/wire.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/xdr_func.c#1 branch .. //depot/projects/mips2/src/contrib/amd/libamu/xutil.c#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/GNUmakefile#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/amdgrep#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/amindent#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/autopat#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/chop-aclocal.pl#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/copy-if-newbig#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/macros/HEADER#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/macros/TRAILER#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/mk-aclocal#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/mkconf#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/rmtspc#1 branch .. //depot/projects/mips2/src/contrib/amd/m4/update_build_version#1 branch .. //depot/projects/mips2/src/contrib/amd/mk-amd-map/mk-amd-map.8#1 branch .. //depot/projects/mips2/src/contrib/amd/mk-amd-map/mk-amd-map.c#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/Makefile.am#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/am-eject.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/amd.conf-sample#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/amd.conf.5#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/amd2ldif.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/amd2sun.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/automount2amd.8#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/automount2amd.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/ctl-amd.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/ctl-hlfsd.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/expn.1#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/expn.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/fix-amd-map.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/fixrmtab.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/redhat-ctl-amd.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/wait4amd.in#1 branch .. //depot/projects/mips2/src/contrib/amd/scripts/wait4amd2die.in#1 branch .. //depot/projects/mips2/src/contrib/amd/tasks#1 branch .. //depot/projects/mips2/src/contrib/amd/wire-test/wire-test.8#1 branch .. //depot/projects/mips2/src/contrib/amd/wire-test/wire-test.c#1 branch .. //depot/projects/mips2/src/contrib/bc/AUTHORS#1 branch .. //depot/projects/mips2/src/contrib/bc/ChangeLog#1 branch .. //depot/projects/mips2/src/contrib/bc/Examples/ckbook.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Examples/pi.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Examples/primes.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Examples/twins.b#1 branch .. //depot/projects/mips2/src/contrib/bc/FAQ#1 branch .. //depot/projects/mips2/src/contrib/bc/FREEBSD-upgrade#1 branch .. //depot/projects/mips2/src/contrib/bc/INSTALL#1 branch .. //depot/projects/mips2/src/contrib/bc/Makefile.am#1 branch .. //depot/projects/mips2/src/contrib/bc/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bc/NEWS#1 branch .. //depot/projects/mips2/src/contrib/bc/README#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/BUG.bc#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/array.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/arrayp.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/aryprm.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/atan.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/checklib.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/div.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/exp.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/fact.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/jn.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/ln.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/mul.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/raise.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/signum#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/sine.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/sqrt.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/sqrt1.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/sqrt2.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/testfn.b#1 branch .. //depot/projects/mips2/src/contrib/bc/Test/timetest#1 branch .. //depot/projects/mips2/src/contrib/bc/acconfig.h#1 branch .. //depot/projects/mips2/src/contrib/bc/aclocal.m4#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/Makefile.am#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/bc.y#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/bcdefs.h#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/const.h#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/execute.c#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/fix-libmath_h#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/global.c#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/global.h#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/libmath.b#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/libmath.h#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/load.c#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/main.c#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/proto.h#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/sbc.y#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/scan.l#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/storage.c#1 branch .. //depot/projects/mips2/src/contrib/bc/bc/util.c#1 branch .. //depot/projects/mips2/src/contrib/bc/config.h.in#1 branch .. //depot/projects/mips2/src/contrib/bc/configure#1 branch .. //depot/projects/mips2/src/contrib/bc/configure.in#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/Makefile.am#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/array.c#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/dc-proto.h#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/dc-regdef.h#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/dc.c#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/dc.h#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/eval.c#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/misc.c#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/numeric.c#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/stack.c#1 branch .. //depot/projects/mips2/src/contrib/bc/dc/string.c#1 branch .. //depot/projects/mips2/src/contrib/bc/doc/Makefile.am#1 branch .. //depot/projects/mips2/src/contrib/bc/doc/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bc/doc/bc.1#1 branch .. //depot/projects/mips2/src/contrib/bc/doc/bc.texi#1 branch .. //depot/projects/mips2/src/contrib/bc/doc/dc.1#1 branch .. //depot/projects/mips2/src/contrib/bc/doc/dc.texi#1 branch .. //depot/projects/mips2/src/contrib/bc/h/number.h#1 branch .. //depot/projects/mips2/src/contrib/bc/install-sh#1 branch .. //depot/projects/mips2/src/contrib/bc/lib/Makefile.am#1 branch .. //depot/projects/mips2/src/contrib/bc/lib/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bc/lib/number.c#1 branch .. //depot/projects/mips2/src/contrib/bc/lib/testmul.c#1 branch .. //depot/projects/mips2/src/contrib/bc/lib/vfprintf.c#1 branch .. //depot/projects/mips2/src/contrib/bc/missing#1 branch .. //depot/projects/mips2/src/contrib/bc/mkinstalldirs#1 branch .. //depot/projects/mips2/src/contrib/bc/stamp-h.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/CHANGES#1 branch .. //depot/projects/mips2/src/contrib/bind9/COPYRIGHT#1 branch .. //depot/projects/mips2/src/contrib/bind9/FAQ#1 branch .. //depot/projects/mips2/src/contrib/bind9/FAQ.xml#1 branch .. //depot/projects/mips2/src/contrib/bind9/FREEBSD-Upgrade#1 branch .. //depot/projects/mips2/src/contrib/bind9/FREEBSD-Xlist#1 branch .. //depot/projects/mips2/src/contrib/bind9/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/README#1 branch .. //depot/projects/mips2/src/contrib/bind9/acconfig.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/check-tool.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/check-tool.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/named-checkconf.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/named-checkconf.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/named-checkconf.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/named-checkconf.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/named-checkzone.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/named-checkzone.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/named-checkzone.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/check/named-checkzone.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/dig.1#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/dig.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/dig.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/dig.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/dighost.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/host.1#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/host.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/host.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/host.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/include/dig/dig.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/nslookup.1#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/nslookup.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/nslookup.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dig/nslookup.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssec-keygen.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssec-keygen.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssec-keygen.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssec-keygen.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssec-signzone.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssec-signzone.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssec-signzone.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssec-signzone.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssectool.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/dnssec/dnssectool.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/aclconf.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/builtin.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/client.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/config.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/control.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/controlconf.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/aclconf.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/builtin.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/client.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/config.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/control.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/globals.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/interfacemgr.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/listenlist.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/log.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/logconf.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/lwaddr.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/lwdclient.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/lwresd.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/lwsearch.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/main.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/notify.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/ns_smf_globals.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/query.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/server.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/sortlist.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/tkeyconf.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/tsigconf.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/types.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/update.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/xfrout.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/include/named/zoneconf.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/interfacemgr.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/listenlist.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/log.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/logconf.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwaddr.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwdclient.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwderror.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwdgabn.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwdgnba.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwdgrbn.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwdnoop.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwresd.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwresd.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwresd.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwresd.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/lwsearch.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/main.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/named.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/named.conf.5#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/named.conf.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/named.conf.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/named.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/named.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/notify.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/query.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/server.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/sortlist.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/tkeyconf.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/tsigconf.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/unix/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/unix/include/named/os.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/unix/os.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/update.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/xfrout.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/named/zoneconf.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/nsupdate/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/nsupdate/nsupdate.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/nsupdate/nsupdate.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/nsupdate/nsupdate.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/nsupdate/nsupdate.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/include/rndc/os.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc-confgen.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc-confgen.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc-confgen.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc-confgen.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc.8#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc.conf#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc.conf.5#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc.conf.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc.conf.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc.docbook#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/rndc.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/unix/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/unix/os.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/util.c#1 branch .. //depot/projects/mips2/src/contrib/bind9/bin/rndc/util.h#1 branch .. //depot/projects/mips2/src/contrib/bind9/config.guess#1 branch .. //depot/projects/mips2/src/contrib/bind9/config.sub#1 branch .. //depot/projects/mips2/src/contrib/bind9/config.threads.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/configure.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM-book.xml#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch01.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch02.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch03.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch04.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch05.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch06.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch07.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch08.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.ch09.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.html#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Bv9ARM.pdf#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/arm/README-SGML#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-baba-dnsext-acl-reqts-01.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-daigle-napstr-04.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-danisch-dns-rr-smtp-03.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-dnsext-opcode-discover-02.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-durand-dnsop-dynreverse-00.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-2929bis-01.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-axfr-clarify-05.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dhcid-rr-09.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dns-name-p-s-00.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-2535typecode-change-06.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-bis-updates-01.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-experiments-01.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-online-signing-00.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-opt-in-07.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-trans-02.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-ecc-key-07.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-insensitive-06.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-interop3597-02.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-keyrr-key-signing-flag-12.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-mdns-43.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-nsec3-02.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2536bis-dsa-06.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2538bis-04.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2539bis-dhk-06.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-signed-nonexistence-requirements-01.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-tkey-renewal-mode-05.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-trustupdate-threshold-00.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-trustupdate-timers-01.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-tsig-sha-04.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsext-wcard-clarify-08.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-bad-dns-res-04.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-dnssec-operational-practices-04.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-inaddr-required-07.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-configuration-06.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-issues-11.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-transport-guidelines-01.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-key-rollover-requirements-02.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-respsize-02.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-dnsop-serverid-04.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-enum-e164-gstn-np-05.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-ipv6-node-requirements-08.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ietf-secsh-dns-05.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-ihren-dnsext-threshold-validation-00.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-kato-dnsop-local-zones-00.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/draft-park-ipv6-extensions-dns-pnp-00.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/draft/update#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/Makefile.in#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/dnssec#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/format-options.pl#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/ipv6#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/migration#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/migration-4to9#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/options#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/rfc-compliance#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/roadmap#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/misc/sdb#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/index#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1032.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1033.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1034.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1035.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1101.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1122.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1123.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1183.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1348.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1535.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1536.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1537.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1591.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1611.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1612.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1706.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1712.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1750.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1876.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1886.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1982.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1995.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc1996.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2052.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2104.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2119.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2133.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2136.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2137.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2163.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2168.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2181.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2230.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2308.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2317.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2373.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2374.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2375.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2418.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2535.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2536.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2537.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2538.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2539.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2540.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2541.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2553.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2671.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2672.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2673.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2782.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2825.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2826.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2845.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2874.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2915.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2929.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2930.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc2931.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3007.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3008.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3071.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3090.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3110.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3123.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3152.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3197.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3225.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3226.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3258.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3363.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3364.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3425.txt#1 branch .. //depot/projects/mips2/src/contrib/bind9/doc/rfc/rfc3445.txt#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Jul 2 17:15:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 200F816A47C; Sun, 2 Jul 2006 17:15:00 +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 CAE6B16A403 for ; Sun, 2 Jul 2006 17:14:59 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF8E844562 for ; Sun, 2 Jul 2006 17:14:54 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k62HEs2f045932 for ; Sun, 2 Jul 2006 17:14:54 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k62HEsX0045929 for perforce@freebsd.org; Sun, 2 Jul 2006 17:14:54 GMT (envelope-from bushman@freebsd.org) Date: Sun, 2 Jul 2006 17:14:54 GMT Message-Id: <200607021714.k62HEsX0045929@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 100440 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 17:15:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=100440 Change 100440 by bushman@bushman_nss_ldap_cached on 2006/07/02 17:14:31 testutil.h small style fixes. test-gethostby (for gethostby***() functions) added - not fully functional yet. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.t#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/testutil.h#6 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#4 (text+ko) ==== @@ -1,6 +1,6 @@ # $FreeBSD$ -TESTS= test-getpw test-getgr test-getserv +TESTS= test-getpw test-getgr test-gethostby test-getserv CFLAGS+= -g -Wall .PHONY: tests ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/testutil.h#6 (text+ko) ==== @@ -41,15 +41,15 @@ STAILQ_HEAD(ent_head, ent##_entry) snapshot_data; \ }; \ \ -void __##ent##_test_data_init(struct ent##_test_data *, \ +void __##ent##_test_data_init(struct ent##_test_data *, \ void (*)(struct ent *, struct ent const *), \ void (*freef)(struct ent *)); \ void __##ent##_test_data_destroy(struct ent##_test_data *); \ \ void __##ent##_test_data_append(struct ent##_test_data *, struct ent *data);\ -int __##ent##_test_data_foreach(struct ent##_test_data *, int (*)(struct ent *,\ - void *), void *); \ -int __##ent##_test_data_compare(struct ent##_test_data *, \ +int __##ent##_test_data_foreach(struct ent##_test_data *, \ + int (*)(struct ent *, void *), void *); \ +int __##ent##_test_data_compare(struct ent##_test_data *, \ struct ent##_test_data *, int (*)(struct ent *, struct ent *, \ void *), void *); \ struct ent *__##ent##_test_data_find(struct ent##_test_data *, struct ent *,\ @@ -69,8 +69,8 @@ #define TEST_DATA_CLEAR(ent, td) __##ent##_test_data_clear(td) #define IMPLEMENT_TEST_DATA(ent) \ -void \ -__##ent##_test_data_init(struct ent##_test_data *td, \ +void \ +__##ent##_test_data_init(struct ent##_test_data *td, \ void (*clonef)(struct ent *, struct ent const *), \ void (*freef)(struct ent *)) \ { \ @@ -84,14 +84,14 @@ STAILQ_INIT(&td->snapshot_data); \ } \ \ -void \ -__##ent##_test_data_destroy(struct ent##_test_data *td) \ +void \ +__##ent##_test_data_destroy(struct ent##_test_data *td) \ { \ - __##ent##_test_data_clear(td); \ + __##ent##_test_data_clear(td); \ } \ \ -void \ -__##ent##_test_data_append(struct ent##_test_data *td, struct ent *app_data) \ +void \ +__##ent##_test_data_append(struct ent##_test_data *td, struct ent *app_data)\ { \ struct ent##_entry *e; \ \ @@ -106,8 +106,8 @@ STAILQ_INSERT_TAIL(&td->snapshot_data, e, entries); \ } \ \ -int \ -__##ent##_test_data_foreach(struct ent##_test_data *td, \ +int \ +__##ent##_test_data_foreach(struct ent##_test_data *td, \ int (*forf)(struct ent *, void *), void *mdata) \ { \ struct ent##_entry *e; \ @@ -126,7 +126,7 @@ return (rv); \ } \ \ -int \ +int \ __##ent##_test_data_compare(struct ent##_test_data *td1, struct ent##_test_data *td2,\ int (*cmp_func)(struct ent *, struct ent *, void *), void *mdata)\ { \ @@ -157,8 +157,8 @@ return (rv); \ } \ \ -struct ent * \ -__##ent##_test_data_find(struct ent##_test_data *td, struct ent *data, \ +struct ent * \ +__##ent##_test_data_find(struct ent##_test_data *td, struct ent *data, \ int (*cmp)(struct ent *, struct ent *, void *), void *mdata) \ { \ struct ent##_entry *e; \ @@ -179,8 +179,8 @@ } \ \ \ -void \ -__##ent##_test_data_clear(struct ent##_test_data *td) \ +void \ +__##ent##_test_data_clear(struct ent##_test_data *td) \ { \ struct ent##_entry *e; \ assert(td != NULL); \ @@ -201,20 +201,20 @@ void (*sdump_func)(struct ent *, char *, size_t); \ }; \ \ -int __##ent##_snapshot_write_func(struct ent *, void *); \ +int __##ent##_snapshot_write_func(struct ent *, void *); \ int __##ent##_snapshot_write(char const *, struct ent##_test_data *, \ void (*)(struct ent *, char *, size_t)); \ int __##ent##_snapshot_read(char const *, struct ent##_test_data *, \ int (*)(struct ent *, char *)); -#define TEST_SNAPSHOT_FILE_WRITE(ent, fname, td, f)\ +#define TEST_SNAPSHOT_FILE_WRITE(ent, fname, td, f) \ __##ent##_snapshot_write(fname, td, f) -#define TEST_SNAPSHOT_FILE_READ(ent, fname, td, f)\ +#define TEST_SNAPSHOT_FILE_READ(ent, fname, td, f) \ __##ent##_snapshot_read(fname, td, f) -#define IMPLEMENT_TEST_FILE_SNAPSHOT(ent) \ -int \ -__##ent##_snapshot_write_func(struct ent *data, void *mdata) \ +#define IMPLEMENT_TEST_FILE_SNAPSHOT(ent) \ +int \ +__##ent##_snapshot_write_func(struct ent *data, void *mdata) \ { \ char buffer[1024]; \ struct ent##_snp_param *param; \ @@ -229,8 +229,8 @@ return (0); \ } \ \ -int \ -__##ent##_snapshot_write(char const *fname, struct ent##_test_data *td, \ +int \ +__##ent##_snapshot_write(char const *fname, struct ent##_test_data *td, \ void (*sdump_func)(struct ent *, char *, size_t)) \ { \ struct ent##_snp_param param; \ @@ -243,14 +243,14 @@ return (-1); \ \ param.sdump_func = sdump_func; \ - __##ent##_test_data_foreach(td, __##ent##_snapshot_write_func, ¶m); \ + __##ent##_test_data_foreach(td, __##ent##_snapshot_write_func, ¶m);\ fclose(param.fp); \ \ return (0); \ } \ \ -int \ -__##ent##_snapshot_read(char const *fname, struct ent##_test_data *td, \ +int \ +__##ent##_snapshot_read(char const *fname, struct ent##_test_data *td, \ int (*read_func)(struct ent *, char *)) \ { \ char buffer[1024]; \ @@ -279,7 +279,7 @@ \ rv = read_func(&data, s); \ if (rv == 0) { \ - __##ent##_test_data_append(td, &data); \ + __##ent##_test_data_append(td, &data); \ td->free_func(&data); \ } \ } \ @@ -292,20 +292,20 @@ #define DECLARE_1PASS_TEST(ent) \ int __##ent##_1pass_test(struct ent##_test_data *, \ - int (*)(struct ent *, void *), \ + int (*)(struct ent *, void *), \ void *); -#define DO_1PASS_TEST(ent, td, f, mdata)\ +#define DO_1PASS_TEST(ent, td, f, mdata) \ __##ent##_1pass_test(td, f, mdata) #define IMPLEMENT_1PASS_TEST(ent) \ -int \ -__##ent##_1pass_test(struct ent##_test_data *td, \ +int \ +__##ent##_1pass_test(struct ent##_test_data *td, \ int (*tf)(struct ent *, void *), \ void *mdata) \ { \ int rv; \ - rv = __##ent##_test_data_foreach(td, tf, mdata); \ + rv = __##ent##_test_data_foreach(td, tf, mdata); \ \ return (rv); \ } @@ -315,18 +315,18 @@ struct ent##_test_data *, \ int (*)(struct ent *, struct ent *, void *), void *); -#define DO_2PASS_TEST(ent, td1, td2, f, mdata)\ +#define DO_2PASS_TEST(ent, td1, td2, f, mdata) \ __##ent##_2pass_test(td1, td2, f, mdata) #define IMPLEMENT_2PASS_TEST(ent) \ -int \ -__##ent##_2pass_test(struct ent##_test_data *td1, \ +int \ +__##ent##_2pass_test(struct ent##_test_data *td1, \ struct ent##_test_data *td2, \ int (*cmp_func)(struct ent *, struct ent *, void *), \ void *cmp_mdata) \ { \ int rv; \ \ - rv = __##ent##_test_data_compare(td1, td2, cmp_func, cmp_mdata); \ + rv = __##ent##_test_data_compare(td1, td2, cmp_func, cmp_mdata); \ return (rv); \ } From owner-p4-projects@FreeBSD.ORG Sun Jul 2 19:20:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7E0F216A4F4; Sun, 2 Jul 2006 19:20:39 +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 1FE8316A412 for ; Sun, 2 Jul 2006 19:20:39 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B63F343D53 for ; Sun, 2 Jul 2006 19:20:38 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k62JKcAD069052 for ; Sun, 2 Jul 2006 19:20:38 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k62JKcN9069049 for perforce@freebsd.org; Sun, 2 Jul 2006 19:20:38 GMT (envelope-from clem1@FreeBSD.org) Date: Sun, 2 Jul 2006 19:20:38 GMT Message-Id: <200607021920.k62JKcN9069049@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100443 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 19:20:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=100443 Change 100443 by clem1@clem1_ipv6vulns on 2006/07/02 19:20:22 extension headers support for isicng.c Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.c#2 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.c#2 (text+ko) ==== @@ -37,9 +37,14 @@ struct libnet_in6_addr ip_src, ip_dst; u_int32_t flow; u_int16_t plen; - u_int8_t tc, hl, nh, ver; + u_int8_t tc, hl, nh, ver, *nx, eo; struct libnet_ipv6_frag_hdr *ip6f = NULL; + struct libnet_ipv6_routing_hdr *ip6r = NULL; + struct libnet_ipv6_destopts_hdr *ip6d = NULL; + struct libnet_ipv6_hbhopts_hdr *ip6h = NULL; + struct libnet_ah_hdr *ip6ah = NULL; + struct libnet_esp_hdr *ip6esp = NULL; #ifdef LIBNET_BSDISH_OS char *smac = NULL, *dmac = NULL; @@ -53,14 +58,21 @@ u_long max_pushed = 10240; /* 10MB/sec */ u_long num_to_send = 0xffffffff; /* Send 4billion packets */ u_long skip = 0; /* Skip how many packets */ + u_int off = 0; int printout = 0; /* Debugging */ u_int repeat = 1; /* How many times to send * each packet */ /* Defaults */ float FragPct = 30; + float RthPct = 10; + float DopPct = 10; + float HbhPct = 20; + float EspPct = 10; + float AhPct = 10; float BadIPVer = 10; float IPLength = 20; + int MaxEHdr = 10; /* Not crypto strong randomness but we don't really care. And this * * gives us a way to determine the seed while the program is running * @@ -68,7 +80,7 @@ seed = getpid(); - while((c = getopt(argc, argv, "hd:i:I:s:r:m:k:p:V:F:vx:S:D:")) != EOF) + while((c = getopt(argc, argv, "hd:i:I:s:r:m:k:p:V:F:O:E:M:H:R:A:vx:S:D:")) != EOF) { switch (c) { @@ -140,6 +152,24 @@ case 'I': IPLength = atof(optarg); break; + case 'H': + HbhPct = atof(optarg); + break; + case 'O': + DopPct = atof(optarg); + break; + case 'R': + RthPct = atof(optarg); + break; + case 'E': + EspPct = atof(optarg); + break; + case 'A': + AhPct = atof(optarg); + break; + case 'M': + MaxEHdr = atoi(optarg); + break; case 'x': repeat = atoi(optarg); break; @@ -211,6 +241,9 @@ else memcpy(buf + 6, smac, 6); memcpy(buf + 12, "\x86\xdd", 2); + eo = 0xe; +#else /* !BSD */ + eo = 0; /* no ethernet header */ #endif @@ -221,13 +254,23 @@ printf("Bad IP Version\t= %.0f%%\t\t", BadIPVer); printf("Odd IP Header Length\t= %.0f%%\t\t", IPLength); - printf("Frag'd Pcnt\t= %.0f%%\n", FragPct); + printf("Routing hdr\t=%.0f%%\t\t", RthPct); + printf("Destination opts hdr\t=%.0f%%\t\t", DopPct); + printf("Hop by hop hdr\t=%.0f%%\t\t", HbhPct); + printf("Esp hdr\t=%.0f%%\t\t", EspPct); + printf("Ah hdr\t=%.0f%%\t\t", AhPct); + printf("Frag hdr\t= %.0f%%\n", FragPct); /* Drop them down to floats so we can multiply and not overflow */ BadIPVer /= 100; FragPct /= 100; - IPLength /= 100; + RthPct /= 100; + DopPct /= 100; + HbhPct /= 100; + EspPct /= 100; + AhPct /= 100; + IPLength /= 100; @@ -239,6 +282,8 @@ for(acx = 0; acx < num_to_send; acx++) { + off = eo; + hl = rand() & 0xff; nh = rand() & 0xff; flow = rand(); @@ -262,47 +307,119 @@ plen = payload_s; /* Build the IP header */ -#ifdef LIBNET_BSDISH_OS - ip6 = (struct libnet_ipv6_hdr *) (buf + 0xe); -#else /* !BSD */ - ip6 = (struct libnet_ipv6_hdr *) buf; -#endif + ip6 = (struct libnet_ipv6_hdr *) (buf + off); + ip6->ip_flags[0] = ver << 4; ip6->ip_flags[1] = ((tc & 0x0F) << 4) | ((flow & 0xF0000) >> 16); ip6->ip_flags[2] = (flow & 0x0FF00 >> 8); ip6->ip_flags[3] = (flow & 0x000FF); ip6->ip_nh = nh; + nx = &ip6->ip_nh; ip6->ip_hl = hl; ip6->ip_len = htons(plen); memcpy(&ip6->ip_src, &ip_src, 16); memcpy(&ip6->ip_dst, &ip_dst, 16); - if (rand() <= (RAND_MAX * FragPct)) - { + off += 40; + + for (c = 0; c < MaxEHdr; c++){ + switch (rand() % 6) + { + case 0: + /* Fragmentation header */ + if (rand() <= (RAND_MAX * FragPct)) + { + ip6f = (struct libnet_ipv6_frag_hdr *)(buf + off); + *nx = 44; + ip6f->ip_nh = rand() & 0xff; + nx = &ip6->ip_nh; + ip6f->ip_reserved = (rand() % 2) ? rand() & 0xff : 0; + ip6f->ip_frag = rand() & 0xffff; + ip6f->ip_id = (rand() % 10) ? rand() : getpid(); + off += 8; + } + break; + case 1: + /* Routing header */ + if (rand() <= (RAND_MAX * RthPct)) + { + ip6r = (struct libnet_ipv6_routing_hdr *)(buf + off); + *nx = 43; + ip6r->ip_nh = rand() & 0xff; + nx = &ip6r->ip_nh; + ip6r->ip_len = rand() & 0xff; + ip6r->ip_rtype = (rand() % 2) ? rand() & 0xff : 0; + ip6r->ip_segments = rand() & 0xff; + off += 4; + } + break; + case 2: + /* Destination opts */ + if (rand() <= (RAND_MAX * DopPct)) + { + ip6d = (struct libnet_ipv6_destopts_hdr *)(buf + off); + *nx = 60; + ip6d->ip_nh = rand() & 0xff; + nx = &ip6d->ip_nh; + ip6d->ip_len = rand() & 0xff; + off += 2; + } + break; + case 3: + /* Hop by hop header */ + if (rand() <= (RAND_MAX * HbhPct)) + { + ip6h = (struct libnet_ipv6_hbhopts_hdr *)(buf + off); + *nx = 0; + ip6h->ip_nh = rand() & 0xff; + nx = &ip6h->ip_nh; + ip6h->ip_len = rand() & 0xff; + off += 2; + } + break; + case 4: + /* AH header */ + if (rand() <= (RAND_MAX * AhPct)) + { + ip6ah = (struct libnet_ah_hdr *)(buf + off); + *nx = 51; + ip6ah->ah_nh = rand() & 0xff; + nx = &ip6ah->ah_nh; + ip6ah->ah_len = rand() & 0xff; + ip6ah->ah_res = (rand() % 2) ? 0 : rand() % 0xffff; + ip6ah->ah_spi = rand(); + ip6ah->ah_seq = rand(); + ip6ah->ah_auth = rand(); + off += 16; + } + break; + case 5: + /* ESP header */ + if (rand() <= (RAND_MAX * EspPct)) + { + ip6esp = (struct libnet_esp_hdr *)(buf + off); + *nx = 50; + ip6esp->esp_spi = rand(); + ip6esp->esp_seq = rand(); + ip6esp->esp_iv = rand(); + off += 12; + } + break; + } + } + #ifdef LIBNET_BSDISH_OS - ip6f = (struct libnet_ipv6_frag_hdr *)(buf + 0xe + 0x28); + if ((payload_s - off + 0xe) > payload_s) + payload_s = 0; + else + payload_s -= (off - 0xe); #else /* !BSD */ - ip6f = (struct libnet_ipv6_frag_hdr *)(buf + 0x28); -#endif - ip6->ip_nh = 44; - ip6f->ip_nh = rand() & 0xff; - ip6f->ip_reserved = (rand() % 2) ? rand() & 0xff : 0; - ip6f->ip_frag = rand() & 0xffff; - ip6f->ip_id = (rand() % 10) ? rand() : getpid(); -#ifdef LIBNET_BSDISH_OS - payload = (short int *)(buf + 0xe + 0x28 + 0x8); -#else /* !BSD */ - payload = (short int *)(buf + 0x28 + 0x8); -#endif - } + if ((payload_s - off) > payload_s) + payload_s = 0; else - { -#ifdef LIBNET_BSDISH_OS - payload = (short int *)(buf + 0xe + 0x28); -#else /* !BSD */ - payload = (short int *)(buf + 0x28); + payload_s -= off; #endif - } + payload = (short int *)(buf + off); for(cx = 0; cx <= (payload_s >> 1); cx+=1) (u_int16_t) payload[cx] = rand() & 0xffff; @@ -379,8 +496,10 @@ #endif "[-p ] [-k ]\n" " [-x ] [-r ]\n" - " [-m ]\n" - " Percentage Opts: [-F frags] [-V ]\n" + " [-m ] [-M ]\n" + " Percentage Opts: [-F ] [-R ] [-H ]\n" + " [-O ] [-E [-A ]\n" + " [-V ]\n" " [-I ]\n" "notes:\n" " [-v] causes packet info to be printed out -- DEBUGGING\n\n" From owner-p4-projects@FreeBSD.ORG Sun Jul 2 20:48:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B9B416A415; Sun, 2 Jul 2006 20:48:31 +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 5B3A316A40F for ; Sun, 2 Jul 2006 20:48:31 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 022EA43D48 for ; Sun, 2 Jul 2006 20:48:31 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k62KmUEP082143 for ; Sun, 2 Jul 2006 20:48:30 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k62KmSnl082140 for perforce@freebsd.org; Sun, 2 Jul 2006 20:48:28 GMT (envelope-from jb@freebsd.org) Date: Sun, 2 Jul 2006 20:48:28 GMT Message-Id: <200607022048.k62KmSnl082140@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100445 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 20:48:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=100445 Change 100445 by jb@jb_freebsd2 on 2006/07/02 20:48:21 Update libdwarf to libdwarf-20041112 which matches the one in ports. It contains a few updates since Sun started using it in OpenSolaris. Curiously, it looks like OpenSolaris only uses this library on Intel architecture. They just distributed a shared library on Sparc which must be encumbered. That's just a guess. Affected files ... .. //depot/projects/dtrace/src/contrib/libdwarf/CHANGES#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/COPYING#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/ChangeLog#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/LIBDWARFCOPYRIGHT#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/Makefile.in#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/NEWS#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/README#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/bldDWindex.sh#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/cmplrs/dwarf_addr_finder.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/config.guess#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/config.h.in#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/config.sub#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/configure#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/configure.in#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf.v2.mm#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf.v2.ps#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_abbrev.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_abbrev.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_addr_finder.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_alloc.c#3 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_alloc.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_arange.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_arange.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_base_types.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_die_deliv.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_die_deliv.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_error.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_error.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_form.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_frame.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_frame.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_funcs.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_funcs.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_global.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_global.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_incl.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_init_finish.c#4 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_leb.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_line.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_line.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_loc.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_loc.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_macro.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_macro.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_opaque.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_print_lines.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_query.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_sort_line.c#3 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_string.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_stubs.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_types.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_types.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_util.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_util.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_vars.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_vars.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_weaks.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_weaks.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/index.v2.mm#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/index.v2.ps#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/install.sh#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/libdwarf.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/libdwarf2.1.mm#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/libdwarf2.1.ps#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/libdwarf2p.1.mm#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/libdwarf2p.1.ps#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/libdwarfdefs.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/mips_extensions.mm#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/mips_extensions.ps#1 add .. //depot/projects/dtrace/src/contrib/libdwarf/pro_alloc.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_alloc.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_arange.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_arange.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_die.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_die.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_encode_nm.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_encode_nm.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_error.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_error.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_expr.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_expr.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_finish.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_forms.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_frame.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_frame.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_funcs.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_incl.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_init.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_line.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_line.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_macinfo.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_macinfo.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_opaque.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_pubnames.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_reloc.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_reloc.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_reloc_stream.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_reloc_stream.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_reloc_symbolic.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_reloc_symbolic.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_section.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_section.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_types.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_types.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_util.h#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_vars.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/pro_weaks.c#2 edit .. //depot/projects/dtrace/src/contrib/libdwarf/t.c#1 add Differences ... ==== //depot/projects/dtrace/src/contrib/libdwarf/COPYING#2 (text) ==== @@ -26,6 +26,6 @@ These documents are substantial revisions, done at SGI, of previous libdwarf work. -$Source: /plroot/cmplrs.src/v7.4.2m/.RCS/PL/libdwarf/RCS/COPYING,v $ +$Source: /plroot/cmplrs.src/v7.4.4m/.RCS/PL/libdwarf/RCS/COPYING,v $ $Revision: 1.2 $ $Date: 2001/01/16 17:08:36 $ ==== //depot/projects/dtrace/src/contrib/libdwarf/ChangeLog#2 (text) ==== @@ -1,8 +1,55 @@ +2004-11-21 David Anderson + * configure.in libdwarfdefs.h: Now tests more precisely for __uint32_t + and __uint64_t (previous test was not sufficient for debian/mips). + Regenerated configure config.h.in. + +2004-10-28 David Anderson + * LIBDWARFCOPYRIGHT Makefile.in NEWS config.h dwarf_abbrev.c + dwarf_abbrev.h dwarf_addr_finder.c dwarf_alloc.c dwarf_alloc.h + dwarf_arange.c dwarf_arange.h dwarf_base_types.h dwarf_die_deliv.c + dwarf_die_deliv.h dwarf_error.c dwarf_error.h dwarf_form.c + dwarf_frame.c dwarf_frame.h dwarf_funcs.c dwarf_funcs.h + dwarf_global.c dwarf_global.h dwarf_incl.h dwarf_init_finish.c + dwarf_leb.c dwarf_line.c dwarf_line.h dwarf_loc.c dwarf_loc.h + dwarf_macro.c dwarf_macro.h dwarf_opaque.h dwarf_print_lines.c + dwarf_query.c dwarf_sort_line.c dwarf_string.c dwarf_stubs.c + dwarf_types.c dwarf_types.h dwarf_util.c dwarf_util.h + dwarf_vars.c dwarf_vars.h dwarf_weaks.c dwarf_weaks.h + libdwarfdefs.h pro_alloc.c pro_alloc.h pro_arange.c pro_arange.h + pro_die.c pro_die.h pro_encode_nm.c pro_encode_nm.h pro_error.c + pro_error.h pro_expr.c pro_expr.h pro_finish.c pro_forms.c + pro_frame.c pro_frame.h pro_funcs.c pro_funcs.h pro_incl.h + pro_init.c pro_line.c pro_line.h pro_macinfo.c pro_macinfo.h + pro_opaque.h pro_pubnames.c pro_pubnames.h pro_reloc.c + pro_reloc.h pro_reloc_stream.c pro_reloc_stream.h pro_reloc_symbolic.c + pro_reloc_symbolic.h pro_section.c pro_section.h pro_types.c + pro_types.h pro_util.c pro_util.h pro_vars.c pro_vars.h + pro_weaks.c pro_weaks.h: Copyright update with + 2004 and new SGI official address. + +2004-10-26 David Anderson + * acconfig.h: removed. Was old style autoconf usage. + * configure.in: Updated AC_DEFINE usage, adding args 2 & 3. + * config.guess: Updated. timestamp='2004-06-11'. + * config.sub: Updated. timestamp='2004-03-12'. + * configure config.h.in: regenerated with autoconf 2.58. + +2004-06-09 David Anderson + * dwarf_frame.c (_dwarf_exec_frame_instr): + Was not setting ru_offset to 1 in DW_CFA_def_cfa_offset + case, now it does. + +2004-02-24 David Anderson + * dwarf_frame.c (_dwarf_exec_frame_instr): + DW_CFA_def_cfa_register case, was setting offset, which + is incorrect. Thanks to Tom Hughes + for pointing this out. + 2004-02-03 David Anderson * dwarf_util.h: DECODE_LEB128_UWORD DECODE_LEB128_SWORD were simply wrong if Dwarf_Word or - Dwarf_Sword longer than 4 bytes. Upper bits left random and - large values not extracted correcty. + Dwarf_Sword longer than 4 bytes. Upper bits left random. + Large values not extracted correctly. 2004-01-15 David Anderson * dwarf_alloc.c pro_alloc.c pro_init.c: changing BSD-ish bzero() ==== //depot/projects/dtrace/src/contrib/libdwarf/LIBDWARFCOPYRIGHT#2 (text) ==== @@ -1,4 +1,4 @@ - Copyright (C) 2000 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -20,7 +20,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/cmplrs/dwarf_addr_finder.h#2 (text) ==== @@ -1,6 +1,6 @@ /* dwarf_addr_finder.h - $Source: /plroot/cmplrs.src/v7.4.2m/.RCS/PL/include/cmplrs/RCS/dwarf_addr_finder.h,v $ + $Source: /plroot/cmplrs.src/v7.4.4m/.RCS/PL/include/cmplrs/RCS/dwarf_addr_finder.h,v $ $Date: 2002/06/11 17:49:06 $ Defines user interface. ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf.h#2 (text) ==== @@ -1,5 +1,5 @@ /* - Copyright (C) 2000, 2001 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000, 2001, 2003, 2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -21,7 +21,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com @@ -41,10 +41,19 @@ /* dwarf.h DWARF debugging information values - $Revision: 1.29 $ $Date: 2003/02/05 22:57:01 $ + $Revision: 1.31 $ $Date: 2004/10/27 23:24:15 $ The comment "DWARF3" appears where there are - new entries from DWARF3. + new entries from DWARF3, and other comments apply + where extension entries appear. + + A few extension names have omitted the 'vendor id' + (See chapter 7, "Vendor Extensibility"). Please + always use a 'vendor id' string in extension names. + + Vendors should use a vendor string in names and + whereever possible avoid duplicating values used by + other vendor extensions */ @@ -86,7 +95,7 @@ #define DW_TAG_file_type 0x29 #define DW_TAG_friend 0x2a #define DW_TAG_namelist 0x2b - /* Previous releases of this header had the following + /* Early releases of this header had the following misspelled with a trailing 's' */ #define DW_TAG_namelist_item 0x2c /* DWARF3/2 spelling */ #define DW_TAG_namelist_items 0x2c /* SGI misspelling/typo */ @@ -113,23 +122,30 @@ #define DW_TAG_imported_unit 0x3d /* DWARF3 */ #define DW_TAG_mutable_type 0x3e /* DWARF3 */ #define DW_TAG_lo_user 0x4080 + #define DW_TAG_MIPS_loop 0x4081 -#define DW_TAG_hi_user 0xffff + +/* HP extensions: ftp://ftp.hp.com/pub/lang/tools/WDB/wdb-4.0.tar.gz */ +#define DW_TAG_HP_array_descriptor 0x4090 /* HP */ -/* The following 3 are GNU extensions - The TAG names are as if the extensions were dwarf standard, - not extensions. -*/ -#define DW_TAG_format_label 0x4101 /* for FORTRAN 77, Fortran 90 */ -#define DW_TAG_function_template 0x4102 /* for C++ */ -#define DW_TAG_class_template 0x4103 /* for C++ */ +/* GNU extensions. The first 3 missing the GNU_. */ +#define DW_TAG_format_label 0x4101 /* GNU. Fortran. */ +#define DW_TAG_function_template 0x4102 /* GNU. For C++ */ +#define DW_TAG_class_template 0x4103 /* GNU. For C++ */ +#define DW_TAG_GNU_BINCL 0x4104 /* GNU */ +#define DW_TAG_GNU_EINCL 0x4105 /* GNU */ /* The following 3 are extensions to support UPC */ #define DW_TAG_upc_shared_type 0x8765 /* UPC */ #define DW_TAG_upc_strict_type 0x8766 /* UPC */ #define DW_TAG_upc_relaxed_type 0x8767 /* UPC */ +/* PGI (STMicroelectronics) extensions. */ +#define DW_TAG_PGI_kanji_type 0xa000 /* PGI */ +#define DW_TAG_PGI_interface_block 0xa020 /* PGI */ +#define DW_TAG_hi_user 0xffff + #define DW_children_no 0 #define DW_children_yes 1 @@ -232,35 +248,65 @@ #define DW_AT_call_file 0x58 /* DWARF3 */ #define DW_AT_call_line 0x59 /* DWARF3 */ #define DW_AT_description 0x5a /* DWARF3 */ +/* HP extensions. */ +#define DW_AT_HP_block_index 0x2000 /* HP */ + #define DW_AT_lo_user 0x2000 -#define DW_AT_MIPS_fde 0x2001 -#define DW_AT_MIPS_loop_begin 0x2002 -#define DW_AT_MIPS_tail_loop_begin 0x2003 -#define DW_AT_MIPS_epilog_begin 0x2004 -#define DW_AT_MIPS_loop_unroll_factor 0x2005 -#define DW_AT_MIPS_software_pipeline_depth 0x2006 -#define DW_AT_MIPS_linkage_name 0x2007 -#define DW_AT_MIPS_stride 0x2008 -#define DW_AT_MIPS_abstract_name 0x2009 -#define DW_AT_MIPS_clone_origin 0x200a -#define DW_AT_MIPS_has_inlines 0x200b -#define DW_AT_MIPS_stride_byte 0x200c -#define DW_AT_MIPS_stride_elem 0x200d -#define DW_AT_MIPS_ptr_dopetype 0x200e -#define DW_AT_MIPS_allocatable_dopetype 0x200f -#define DW_AT_MIPS_assumed_shape_dopetype 0x2010 -#define DW_AT_MIPS_assumed_size 0x2011 + +#define DW_AT_MIPS_fde 0x2001 /* MIPS/SGI */ +#define DW_AT_MIPS_loop_begin 0x2002 /* MIPS/SGI */ +#define DW_AT_MIPS_tail_loop_begin 0x2003 /* MIPS/SGI */ +#define DW_AT_MIPS_epilog_begin 0x2004 /* MIPS/SGI */ +#define DW_AT_MIPS_loop_unroll_factor 0x2005 /* MIPS/SGI */ +#define DW_AT_MIPS_software_pipeline_depth 0x2006 /* MIPS/SGI */ +#define DW_AT_MIPS_linkage_name 0x2007 /* MIPS/SGI */ +#define DW_AT_MIPS_stride 0x2008 /* MIPS/SGI */ +#define DW_AT_MIPS_abstract_name 0x2009 /* MIPS/SGI */ +#define DW_AT_MIPS_clone_origin 0x200a /* MIPS/SGI */ +#define DW_AT_MIPS_has_inlines 0x200b /* MIPS/SGI */ +#define DW_AT_MIPS_stride_byte 0x200c /* MIPS/SGI */ +#define DW_AT_MIPS_stride_elem 0x200d /* MIPS/SGI */ +#define DW_AT_MIPS_ptr_dopetype 0x200e /* MIPS/SGI */ +#define DW_AT_MIPS_allocatable_dopetype 0x200f /* MIPS/SGI */ +#define DW_AT_MIPS_assumed_shape_dopetype 0x2010 /* MIPS/SGI */ +#define DW_AT_MIPS_assumed_size 0x2011 /* MIPS/SGI */ + +/* HP extensions. */ +#if 0 +#define DW_AT_HP_unmodifiable 0x2001 /* conflict: MIPS */ +#define DW_AT_HP_actuals_stmt_list 0x2010 /* conflict: MIPS */ +#define DW_AT_HP_proc_per_section 0x2011 /* conflict: MIPS */ +#endif +#define DW_AT_HP_raw_data_ptr 0x2012 /* HP */ +#define DW_AT_HP_pass_by_reference 0x2013 /* HP */ +#define DW_AT_HP_opt_level 0x2014 /* HP */ +#define DW_AT_HP_prof_version_id 0x2015 /* HP */ +#define DW_AT_HP_opt_flags 0x2016 /* HP */ +#define DW_AT_HP_cold_region_low_pc 0x2017 /* HP */ +#define DW_AT_HP_cold_region_high_pc 0x2018 /* HP */ +#define DW_AT_HP_all_variables_modifiable 0x2019 /* HP */ +#define DW_AT_HP_linkage_name 0x201a /* HP */ +#define DW_AT_HP_prof_flags 0x201b /* HP */ + + +/* GNU extensions. */ +#define DW_AT_sf_names 0x2101 /* GNU */ +#define DW_AT_src_info 0x2102 /* GNU */ +#define DW_AT_mac_info 0x2103 /* GNU */ +#define DW_AT_src_coords 0x2104 /* GNU */ +#define DW_AT_body_begin 0x2105 /* GNU */ +#define DW_AT_body_end 0x2106 /* GNU */ +#define DW_AT_GNU_vector 0x2107 /* GNU */ + +/* VMS extensions. */ +#define DW_AT_VMS_rtnbeg_pd_address 0x2201 /* VMS */ + +/* PGI (STMicroelectronics) extensions. */ +#define DW_AT_PGI_lbase 0x3a00 /* PGI */ +#define DW_AT_PGI_soffset 0x3a01 /* PGI */ +#define DW_AT_PGI_lstride 0x3a02 /* PGI */ -/* GNU extensions, currently not used in dwarf2 by egcs - Mostly dwarf1 extensions not needed in dwarf2? -*/ -#define DW_AT_sf_names 0x2101 -#define DW_AT_src_info 0x2102 -#define DW_AT_mac_info 0x2103 -#define DW_AT_src_coords 0x2104 -#define DW_AT_body_begin 0x2105 -#define DW_AT_body_end 0x2106 /* UPC extension */ #define DW_AT_upc_threads_scaled 0x3210 /* UPC */ @@ -416,7 +462,22 @@ #define DW_OP_call2 0x98 /* DWARF3 */ #define DW_OP_call4 0x99 /* DWARF3 */ #define DW_OP_call_ref 0x9a /* DWARF3 */ + + /* GNU extensions. */ +#define DW_OP_GNU_push_tls_address 0xe0 /* GNU */ #define DW_OP_lo_user 0xe0 + + /* HP extensions. */ +#if 0 +#define DW_OP_HP_unknown 0xe0 /* HP conflict: GNU */ +#endif +#define DW_OP_HP_is_value 0xe1 /* HP */ +#define DW_OP_HP_fltconst4 0xe2 /* HP */ +#define DW_OP_HP_fltconst8 0xe3 /* HP */ +#define DW_OP_HP_mod_range 0xe4 /* HP */ +#define DW_OP_HP_unmod_range 0xe5 /* HP */ +#define DW_OP_HP_tls 0xe6 /* HP */ + #define DW_OP_hi_user 0xff #define DW_ATE_address 0x1 @@ -428,7 +489,20 @@ #define DW_ATE_unsigned 0x7 #define DW_ATE_unsigned_char 0x8 #define DW_ATE_imaginary_float 0x9 /* DWARF3 */ + +/* HP Floating point extensions. */ +#define DW_ATE_HP_float80 0x80 /* (80 bit). HP */ + #define DW_ATE_lo_user 0x80 + +/* HP Floating point extensions. */ +#define DW_ATE_HP_complex_float80 0x81 /* Complex (80 bit). HP */ +#define DW_ATE_HP_float128 0x82 /* (128 bit). HP */ +#define DW_ATE_HP_complex_float128 0x83 /* Complex (128 bit). HP */ +#define DW_ATE_HP_floathpintel 0x84 /* (82 bit IA64). HP */ +#define DW_ATE_HP_imaginary_float80 0x85 /* HP */ +#define DW_ATE_HP_imaginary_float128 0x86 /* HP */ + #define DW_ATE_hi_user 0xff #define DW_ACCESS_public 1 @@ -459,7 +533,7 @@ #define DW_LANG_Fortran95 0x000e /* DWARF3 */ #define DW_LANG_PLI 0x000f /* DWARF3 */ #define DW_LANG_lo_user 0x8000 -#define DW_LANG_Mips_Assembler 0x8001 +#define DW_LANG_Mips_Assembler 0x8001 /* MIPS */ #define DW_LANG_Upc 0x8765 /* UPC */ #define DW_LANG_hi_user 0xffff @@ -472,7 +546,8 @@ #define DW_CC_normal 0x1 #define DW_CC_program 0x2 #define DW_CC_nocall 0x3 -#define DW_CC_lo_user 0x40 +#define DW_CC_lo_user 0x40 + #define DW_CC_hi_user 0xff #define DW_INL_not_inlined 0 @@ -502,6 +577,19 @@ #define DW_LNE_end_sequence 1 #define DW_LNE_set_address 2 #define DW_LNE_define_file 3 + +/* HP extensions. */ +#define DW_LNE_HP_negate_is_UV_update 0x11 /* 17 HP */ +#define DW_LNE_HP_push_context 0x12 /* 18 HP */ +#define DW_LNE_HP_pop_context 0x13 /* 19 HP */ +#define DW_LNE_HP_set_file_line_column 0x14 /* 20 HP */ +#define DW_LNE_HP_set_routine_name 0x15 /* 21 HP */ +#define DW_LNE_HP_set_sequence 0x16 /* 22 HP */ +#define DW_LNE_HP_negate_post_semantics 0x17 /* 23 HP */ +#define DW_LNE_HP_negate_function_exit 0x18 /* 24 HP */ +#define DW_LNE_HP_negate_front_end_logical 0x19 /* 25 HP */ +#define DW_LNE_HP_define_proc 0x20 /* 32 HP */ + #define DW_LNE_lo_user 128 /* DWARF3 */ #define DW_LNE_hi_user 255 /* DWARF3 */ @@ -511,7 +599,7 @@ #define DW_MACINFO_end_file 4 #define DW_MACINFO_vendor_ext 255 -#define DW_CFA_advance_loc 0x40 +#define DW_CFA_advance_loc 0x40 #define DW_CFA_offset 0x80 #define DW_CFA_restore 0xc0 #define DW_CFA_extended 0 @@ -538,11 +626,14 @@ #define DW_CFA_def_cfa_offset_sf 0x13 /* DWARF3 */ #define DW_CFA_low_user 0x1c -#define DW_CFA_MIPS_advance_loc8 0x1d + +/* SGI/MIPS extension. */ +#define DW_CFA_MIPS_advance_loc8 0x1d /* MIPS */ -/* the following two from egcs-1.1.2 */ -#define DW_CFA_GNU_window_save 0x2d -#define DW_CFA_GNU_args_size 0x2e +/* GNU extensions. */ +#define DW_CFA_GNU_window_save 0x2d /* GNU */ +#define DW_CFA_GNU_args_size 0x2e /* GNU */ +#define DW_CFA_GNU_negative_offset_extended 0x2f /* GNU */ #define DW_CFA_high_user 0x3f ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_abbrev.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000,2001 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2001,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_abbrev.h#2 (text) ==== @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_addr_finder.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000, 2002 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2002,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_alloc.c#3 (text) ==== @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com @@ -41,9 +41,7 @@ #include #include -#if defined(sun) #include -#endif /* These files are included to get the sizes ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_alloc.h#2 (text) ==== @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_arange.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000, 2002 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2002,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_arange.h#2 (text) ==== @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_base_types.h#2 (text) ==== @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_die_deliv.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000,2001,2002,2003 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2001,2002,2003,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_die_deliv.h#2 (text) ==== @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_error.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000, 2002 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2002,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_error.h#2 (text) ==== @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_form.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000, 2002 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2002,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_frame.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000, 2002 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2002,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com @@ -602,9 +602,9 @@ return DW_DLV_ERROR; } - reg[DW_FRAME_CFA_COL].ru_is_off = 0; reg[DW_FRAME_CFA_COL].ru_register = reg_no; - reg[DW_FRAME_CFA_COL].ru_offset = 0; + /* Do NOT set ru_offset or ru_is_off here. + See dwarf2/3 spec. */ fp_register = reg_no; break; } @@ -618,6 +618,9 @@ *returned_error = (DW_DLE_DF_NO_CIE_AUGMENTATION); return DW_DLV_ERROR; } + /* Do set ru_is_off here, as here + factored_N_value counts. */ + reg[DW_FRAME_CFA_COL].ru_is_off = 1; reg[DW_FRAME_CFA_COL].ru_offset = factored_N_value; fp_offset = factored_N_value; ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_frame.h#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000, 2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_funcs.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000, 2002 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2002,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_funcs.h#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000, 2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_global.c#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000, 2002 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2002,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_global.h#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000, 2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_incl.h#2 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000, 2002 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000, 2002, 2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_init_finish.c#4 (text) ==== @@ -1,6 +1,6 @@ /* - Copyright (C) 2000,2002,2003 Silicon Graphics, Inc. All Rights Reserved. + Copyright (C) 2000,2002,2003,2004 Silicon Graphics, Inc. All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the terms of version 2.1 of the GNU Lesser General Public License @@ -22,7 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. - Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, + Contact information: Silicon Graphics, Inc., 1500 Crittenden Lane, Mountain View, CA 94043, or: http://www.sgi.com @@ -52,20 +52,12 @@ #endif #endif /* !defined(__SGI_FAST_LIBELF) */ -#include -#include -#if defined(sun) -#include -#endif - #include #include #include #include #include -#if defined(sun) #include -#endif #include "dwarf_incl.h" @@ -244,8 +236,6 @@ } #endif /* !defined(__SGI_FAST_LIBELF) */ - dbg->de_nelfsecs = section_count; - if (is_64bit && machine != EM_MIPS) { /* MIPS/IRIX makes pointer size and length size 8 for -64. Other platforms make length 4 always. */ @@ -686,62 +676,7 @@ return (DW_DLV_OK); } -static Dwarf_Small * -_dwarf_reloc_section(Dwarf_Debug dbg, Dwarf_Half scnidx, Elf_Data *scndata, - Dwarf_Error *error) -{ - Elf_Data *reldata; - GElf_Rela rela; - Elf_Scn *scn; - GElf_Shdr shdr; - char *newdata; - int ridx, rscnidx; - - for (rscnidx = 0; rscnidx < dbg->de_nelfsecs; rscnidx++) { - if ((scn = elf_getscn(dbg->de_elf, rscnidx)) == NULL || - gelf_getshdr(scn, &shdr) == NULL) { - _dwarf_error(dbg, error, DW_DLE_LEE); - return (NULL); - } - - if (shdr.sh_type == SHT_RELA && - shdr.sh_info == scnidx) - break; - } - - if (rscnidx == dbg->de_nelfsecs) - return (scndata->d_buf); - - if ((reldata = elf_getdata(scn, NULL)) == NULL) { - _dwarf_error(dbg, error, DW_DLE_LEE); - return (NULL); - } - if ((newdata = malloc(scndata->d_size)) == NULL) { - _dwarf_error(dbg, error, DW_DLE_MAF); - return (NULL); - } - - bcopy(scndata->d_buf, newdata, scndata->d_size); - - for (ridx = 0; ridx < shdr.sh_size / sizeof (GElf_Rela); ridx++) { - if (gelf_getrela(reldata, ridx, &rela) == NULL) - continue; - - if (GELF_R_TYPE(rela.r_info) != R_386_32 && - GELF_R_TYPE(rela.r_info) != R_386_GOTPC) { - fprintf(stderr, "achtung: tell simmonmt@eng about " - "unexpected reloc type %d\n", - GELF_R_TYPE(rela.r_info)); - continue; - } - - *(uint32_t *)(newdata + rela.r_offset) = rela.r_addend; - } - - return ((Dwarf_Small *)newdata); -} >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Jul 2 20:52:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1435916A417; Sun, 2 Jul 2006 20:52:45 +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 DF2F016A407 for ; Sun, 2 Jul 2006 20:52:44 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4FDAA43D81 for ; Sun, 2 Jul 2006 20:52:37 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k62KqbUp082440 for ; Sun, 2 Jul 2006 20:52:37 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k62KqakZ082437 for perforce@freebsd.org; Sun, 2 Jul 2006 20:52:36 GMT (envelope-from jb@freebsd.org) Date: Sun, 2 Jul 2006 20:52:36 GMT Message-Id: <200607022052.k62KqakZ082437@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100447 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 20:52:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=100447 Change 100447 by jb@jb_freebsd2 on 2006/07/02 20:51:57 Use GNU configure-style #ifdefs to avoid including malloc.h when we don't want it. Affected files ... .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_alloc.c#4 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_init_finish.c#5 edit .. //depot/projects/dtrace/src/contrib/libdwarf/dwarf_sort_line.c#4 edit Differences ... ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_alloc.c#4 (text) ==== @@ -41,7 +41,9 @@ #include #include +#ifdef HAVE_MALLOC_H #include +#endif /* These files are included to get the sizes ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_init_finish.c#5 (text) ==== @@ -57,7 +57,9 @@ #include #include #include +#ifdef HAVE_MALLOC_H #include +#endif #include "dwarf_incl.h" ==== //depot/projects/dtrace/src/contrib/libdwarf/dwarf_sort_line.c#4 (text) ==== @@ -43,7 +43,9 @@ #ifdef HAVE_ALLOCA_H #include #endif +#ifdef HAVE_MALLOC_H #include +#endif #define MINIMUM_POSSIBLE_PROLOG_LEN 10 /* 10 is based on */ /* the definition of the DWARF2/3 line table prolog. From owner-p4-projects@FreeBSD.ORG Sun Jul 2 21:30:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0C8E016A526; Sun, 2 Jul 2006 21:30:35 +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 B3B5C16A518 for ; Sun, 2 Jul 2006 21:30:34 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 157D144002 for ; Sun, 2 Jul 2006 20:58:46 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k62KwjR6082740 for ; Sun, 2 Jul 2006 20:58:45 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k62Kwjvl082737 for perforce@freebsd.org; Sun, 2 Jul 2006 20:58:45 GMT (envelope-from kmacy@freebsd.org) Date: Sun, 2 Jul 2006 20:58:45 GMT Message-Id: <200607022058.k62Kwjvl082737@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100449 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Jul 2006 21:30:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=100449 Change 100449 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/02 20:58:32 workaround apparent bug in hypervisor preventing multiple page sizes in a given TSB by staying with 4MB pages for the direct-mapped area and enforcing 4MB alignment in phys_avail base bounds in some cases nucleus memory was not being removed from phys_avail, particularly if there is only one phys_avail range - this lead the kernel to believe that the nucleus memory was available for general use and thus zero it Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/pmap.c#6 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/pmap.c#6 (text+ko) ==== @@ -424,59 +424,14 @@ { struct pmap *pm; vm_offset_t off, va; - vm_paddr_t pa, kernel_hash_pa; + vm_paddr_t pa, kernel_hash_pa, phys_avail_start, nucleus_memory_start; vm_size_t physsz, virtsz, kernel_hash_size; ihandle_t pmem, vmem; int i, sz, j; uint64_t tsb_8k_size, tsb_4m_size, error, physmem_tunable; - /* - * Find out what physical memory is available from the prom and - * initialize the phys_avail array. This must be done before - * pmap_bootstrap_alloc is called. - */ - if ((pmem = OF_finddevice("/memory")) == -1) - panic("pmap_bootstrap: finddevice /memory"); - if ((sz = OF_getproplen(pmem, "available")) == -1) - panic("pmap_bootstrap: getproplen /memory/available"); - if (sizeof(vm_paddr_t)*128 < sz) /* FIXME */ - panic("pmap_bootstrap: phys_avail too small"); - if (sizeof(mra) < sz) - panic("pmap_bootstrap: mra too small"); - bzero(mra, sz); - if (OF_getprop(pmem, "available", mra, sz) == -1) - panic("pmap_bootstrap: getprop /memory/available"); - - sz /= sizeof(*mra); - CTR0(KTR_PMAP, "pmap_bootstrap: physical memory"); - qsort(mra, sz, sizeof (*mra), mr_cmp); - physsz = 0; - if (TUNABLE_ULONG_FETCH("hw.physmem", &physmem_tunable)) - physmem = atop(physmem_tunable); - - printf("desired physmem=0x%lx\n", physmem_tunable); - for (i = 0, j = 0; i < sz; i++, j += 2) { - CTR2(KTR_PMAP, "start=%#lx size=%#lx\n", mra[i].mr_start, - mra[i].mr_size); - KDPRINTF("start=%#lx size=%#lx\n", mra[i].mr_start, - mra[i].mr_size); - if (physmem_tunable != 0 && (physsz + mra[i].mr_size) >= physmem_tunable) { - if (physsz < physmem_tunable) { - phys_avail[j] = mra[i].mr_start; - phys_avail[j + 1] = mra[i].mr_start + - (physmem_tunable - physsz); - physsz = physmem_tunable; - } - break; - } - phys_avail[j] = mra[i].mr_start; - phys_avail[j + 1] = mra[i].mr_start + mra[i].mr_size; - physsz += mra[i].mr_size; - } - physmem = btoc(physsz); - if ((vmem = OF_finddevice("/virtual-memory")) == -1) panic("pmap_bootstrap: finddevice /virtual-memory"); if ((sz = OF_getproplen(vmem, "translations")) == -1) @@ -488,10 +443,10 @@ panic("pmap_bootstrap: getprop /virtual-memory/translations"); sz /= sizeof(*translations); translations_size = sz; + nucleus_memory_start = 0; CTR0(KTR_PMAP, "pmap_bootstrap: translations"); qsort(translations, sz, sizeof (*translations), om_cmp); for (i = 0; i < sz; i++) { - int j, k; KDPRINTF("om_size=%ld om_start=%lx om_tte=%lx\n", translations[i].om_size, translations[i].om_start, translations[i].om_tte); @@ -504,40 +459,102 @@ KCONTEXT, pa | TTE_KERNEL | VTD_4M, MAP_ITLB | MAP_DTLB); if (error != H_EOK) panic("map_perm_addr returned error=%ld", error); - + + if ((nucleus_memory_start == 0) || (pa < nucleus_memory_start)) + nucleus_memory_start = pa; nucleus_mappings[permanent_mappings++] = pa; nucleus_memory += PAGE_SIZE_4M; #ifdef SMP mp_add_nucleus_mapping(translations[i].om_start, pa | TTE_KERNEL | VTD_4M); #endif - for (j = 0, k = 0; phys_avail[j + 2] != 0; j += 2, k += 2) { + } + } + + /* + * Find out what physical memory is available from the prom and + * initialize the phys_avail array. This must be done before + * pmap_bootstrap_alloc is called. + */ + if ((pmem = OF_finddevice("/memory")) == -1) + panic("pmap_bootstrap: finddevice /memory"); + if ((sz = OF_getproplen(pmem, "available")) == -1) + panic("pmap_bootstrap: getproplen /memory/available"); + if (sizeof(vm_paddr_t)*128 < sz) /* FIXME */ + panic("pmap_bootstrap: phys_avail too small"); + if (sizeof(mra) < sz) + panic("pmap_bootstrap: mra too small"); + bzero(mra, sz); + if (OF_getprop(pmem, "available", mra, sz) == -1) + panic("pmap_bootstrap: getprop /memory/available"); + + sz /= sizeof(*mra); + CTR0(KTR_PMAP, "pmap_bootstrap: physical memory"); + + qsort(mra, sz, sizeof (*mra), mr_cmp); + physsz = 0; + + if (TUNABLE_ULONG_FETCH("hw.physmem", &physmem_tunable)) + physmem = atop(physmem_tunable); + + KDPRINTF("desired physmem=0x%lx\n", physmem_tunable); + for (i = 0, j = 0; i < sz; i++) { + vm_paddr_t start = mra[i].mr_start; + uint64_t size = mra[i].mr_size; + CTR2(KTR_PMAP, "start=%#lx size=%#lx\n", mra[i].mr_start, mra[i].mr_size); + KDPRINTF("start=%#lx size=%#lx\n", mra[i].mr_start, mra[i].mr_size); + if (nucleus_memory_start == mra[i].mr_start) { + mra[i].mr_start += 2*PAGE_SIZE_4M; + mra[i].mr_size -= 2*PAGE_SIZE_4M; + } + if (nucleus_memory_start == (start + size - 2*PAGE_SIZE_4M)) + mra[i].mr_size -= 2*PAGE_SIZE_4M; - if (pa == phys_avail[j]) { - phys_avail_tmp[k] = phys_avail[j] + PAGE_SIZE_4M; - phys_avail_tmp[k + 1] = phys_avail[j + 1]; - break; - } else if (phys_avail[j] < pa && pa + PAGE_SIZE_4M == phys_avail[j + 1]) { - phys_avail_tmp[k] = phys_avail[j]; - phys_avail_tmp[k + 1] = pa; - } else if (phys_avail[j] < pa && pa + PAGE_SIZE_4M < phys_avail[j + 1]) { - phys_avail_tmp[k] = phys_avail[j]; - phys_avail_tmp[k + 1] = pa; - phys_avail_tmp[k + 2] = pa + PAGE_SIZE_4M; - phys_avail_tmp[k + 3] = phys_avail[j + 1]; - k += 2; - } else { - phys_avail_tmp[k] = phys_avail[j]; - phys_avail_tmp[k + 1] = phys_avail[j + 1]; - } + if ((nucleus_memory_start > start) && (nucleus_memory_start < (start + size))) { + uint64_t firstsize = (nucleus_memory_start - start); + phys_avail[j] = start; + if ((physmem_tunable != 0) && ((physsz + firstsize) > physmem_tunable)) { + phys_avail[j+1] = start + (physmem_tunable - physsz); + physsz = physmem_tunable; + break; } - - for (j = 0; phys_avail_tmp[j + 2] != 0; phys_avail[j] = phys_avail_tmp[j], - phys_avail[j + 1] = phys_avail_tmp[j + 1], j += 2) - ; - } + phys_avail[j+1] = nucleus_memory_start; + size = size - firstsize - 2*PAGE_SIZE_4M; + mra[i].mr_start = nucleus_memory_start + 2*PAGE_SIZE_4M; + mra[i].mr_size = size; + physsz += firstsize + 2*PAGE_SIZE_4M; + j += 2; + } + if (mra[i].mr_size < PAGE_SIZE_4M) + continue; + if ((mra[i].mr_start & PAGE_MASK_4M) && (mra[i].mr_size < 2*PAGE_SIZE_4M)) + continue; + if (mra[i].mr_start & PAGE_MASK_4M) { + uint64_t newstart, roundup; + newstart = ((mra[i].mr_start + (PAGE_SIZE_4M-1)) & ~PAGE_MASK_4M); + roundup = newstart - mra[i].mr_start; + mra[i].mr_size -= roundup; + mra[i].mr_start = newstart; + } + mra[i].mr_size &= ~PAGE_MASK_4M; + phys_avail[j] = mra[i].mr_start; + if (physmem_tunable != 0 && ((physsz + mra[i].mr_size) >= physmem_tunable)) { + size = physmem_tunable - physsz; + phys_avail[j + 1] = mra[i].mr_start + size; + physsz = physmem_tunable; + break; + } + phys_avail[j + 1] = mra[i].mr_start + mra[i].mr_size; + physsz += mra[i].mr_size; + j += 2; } + phys_avail_start = phys_avail[0]; + physmem = btoc(physsz); + + for (i = 0; phys_avail[i] != 0; i += 2) + KDPRINTF("phys_avail[%d]=0x%lx phys_avail[%d]=0x%lx\n", + i, phys_avail[i], i+1, phys_avail[i+1]); /* * Calculate the size of kernel virtual memory, and the size and mask * for the kernel tsb. @@ -609,7 +626,7 @@ * currently (not by design) used for permanent mappings */ - tsb_4m_size = (virtsz >> (PAGE_SHIFT_4M - TTE_SHIFT)); + tsb_4m_size = (virtsz >> (PAGE_SHIFT_4M - TTE_SHIFT)) << 3; pa = pmap_bootstrap_alloc(tsb_4m_size); KDPRINTF("tsb_4m_pa is 0x%lx tsb_4m_size is 0x%lx\n", pa, tsb_4m_size); @@ -684,22 +701,35 @@ } } + error = hv_set_ctx0(MAX_TSB_INFO, vtophys((vm_offset_t)&kernel_td)); + if (error != H_EOK) + panic("failed to set ctx0 TSBs error: %ld", error); +#ifdef SMP + mp_set_tsb_desc_ra(vtophys((vm_offset_t)&kernel_td)); +#endif /* * setup direct mappings * */ - pa = PAGE_SIZE_4M; - for (i = 0; phys_avail[i] != 0; i += 2) - for (; pa < phys_avail[i + 1]; pa += PAGE_SIZE_4M) + i = 0; + pa = phys_avail_start; + do { + for (; pa < phys_avail[i + 1]; pa += PAGE_SIZE_4M) { + tsb_assert_invalid(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa)); tsb_set_tte_real(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa), pa | TTE_KERNEL | VTD_4M, 0); - - for (i = 0; i < 2; i++) { + + } + i += 2; + pa = phys_avail[i]; + } while (pa != 0); + + for (i = 0; i < 2; i++) { pa = nucleus_mappings[i]; + tsb_assert_invalid(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa)); tsb_set_tte_real(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa), pa | TTE_KERNEL | VTD_4M, 0); - } /* * Get the available physical memory ranges from /memory/reg. These @@ -722,14 +752,6 @@ TAILQ_INIT(&kernel_pmap->pm_pvlist); - error = hv_set_ctx0(MAX_TSB_INFO, vtophys((vm_offset_t)&kernel_td)); - if (error != H_EOK) - panic("failed to set ctx0 TSBs error: %ld", error); - -#ifdef SMP - mp_set_tsb_desc_ra(vtophys((vm_offset_t)&kernel_td)); -#endif - /* * This could happen earlier - but I put it here to avoid * attempts to do updates until they're legal From owner-p4-projects@FreeBSD.ORG Mon Jul 3 00:17:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 021FA16A618; Mon, 3 Jul 2006 00:17:21 +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 A32F816A5ED for ; Mon, 3 Jul 2006 00:17:20 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C99A1440DA for ; Sun, 2 Jul 2006 23:49:20 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k62NnKqR093035 for ; Sun, 2 Jul 2006 23:49:20 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k62NnK7v093032 for perforce@freebsd.org; Sun, 2 Jul 2006 23:49:20 GMT (envelope-from jb@freebsd.org) Date: Sun, 2 Jul 2006 23:49:20 GMT Message-Id: <200607022349.k62NnK7v093032@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100451 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 00:17:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100451 Change 100451 by jb@jb_freebsd2 on 2006/07/02 23:49:16 Merge the pmap changes to support 32 GB on sun4v. Gosh that's a lot of memory! Merge the sun4v libdisk support. Affected files ... .. //depot/projects/dtrace/src/lib/libdisk/write_sun4v_disk.c#1 branch .. //depot/projects/dtrace/src/sys/sun4v/sun4v/pmap.c#4 integrate Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/sun4v/pmap.c#4 (text+ko) ==== @@ -428,59 +428,14 @@ { struct pmap *pm; vm_offset_t off, va; - vm_paddr_t pa, kernel_hash_pa; + vm_paddr_t pa, kernel_hash_pa, phys_avail_start, nucleus_memory_start; vm_size_t physsz, virtsz, kernel_hash_size; ihandle_t pmem, vmem; int i, sz, j; uint64_t tsb_8k_size, tsb_4m_size, error, physmem_tunable; - /* - * Find out what physical memory is available from the prom and - * initialize the phys_avail array. This must be done before - * pmap_bootstrap_alloc is called. - */ - if ((pmem = OF_finddevice("/memory")) == -1) - panic("pmap_bootstrap: finddevice /memory"); - if ((sz = OF_getproplen(pmem, "available")) == -1) - panic("pmap_bootstrap: getproplen /memory/available"); - if (sizeof(vm_paddr_t)*128 < sz) /* FIXME */ - panic("pmap_bootstrap: phys_avail too small"); - if (sizeof(mra) < sz) - panic("pmap_bootstrap: mra too small"); - bzero(mra, sz); - if (OF_getprop(pmem, "available", mra, sz) == -1) - panic("pmap_bootstrap: getprop /memory/available"); - - sz /= sizeof(*mra); - CTR0(KTR_PMAP, "pmap_bootstrap: physical memory"); - qsort(mra, sz, sizeof (*mra), mr_cmp); - physsz = 0; - if (TUNABLE_ULONG_FETCH("hw.physmem", &physmem_tunable)) - physmem = atop(physmem_tunable); - - printf("desired physmem=0x%lx\n", physmem_tunable); - for (i = 0, j = 0; i < sz; i++, j += 2) { - CTR2(KTR_PMAP, "start=%#lx size=%#lx\n", mra[i].mr_start, - mra[i].mr_size); - KDPRINTF("start=%#lx size=%#lx\n", mra[i].mr_start, - mra[i].mr_size); - if (physmem_tunable != 0 && (physsz + mra[i].mr_size) >= physmem_tunable) { - if (physsz < physmem_tunable) { - phys_avail[j] = mra[i].mr_start; - phys_avail[j + 1] = mra[i].mr_start + - (physmem_tunable - physsz); - physsz = physmem_tunable; - } - break; - } - phys_avail[j] = mra[i].mr_start; - phys_avail[j + 1] = mra[i].mr_start + mra[i].mr_size; - physsz += mra[i].mr_size; - } - physmem = btoc(physsz); - if ((vmem = OF_finddevice("/virtual-memory")) == -1) panic("pmap_bootstrap: finddevice /virtual-memory"); if ((sz = OF_getproplen(vmem, "translations")) == -1) @@ -492,10 +447,10 @@ panic("pmap_bootstrap: getprop /virtual-memory/translations"); sz /= sizeof(*translations); translations_size = sz; + nucleus_memory_start = 0; CTR0(KTR_PMAP, "pmap_bootstrap: translations"); qsort(translations, sz, sizeof (*translations), om_cmp); for (i = 0; i < sz; i++) { - int j, k; KDPRINTF("om_size=%ld om_start=%lx om_tte=%lx\n", translations[i].om_size, translations[i].om_start, translations[i].om_tte); @@ -508,40 +463,102 @@ KCONTEXT, pa | TTE_KERNEL | VTD_4M, MAP_ITLB | MAP_DTLB); if (error != H_EOK) panic("map_perm_addr returned error=%ld", error); - + + if ((nucleus_memory_start == 0) || (pa < nucleus_memory_start)) + nucleus_memory_start = pa; nucleus_mappings[permanent_mappings++] = pa; nucleus_memory += PAGE_SIZE_4M; #ifdef SMP mp_add_nucleus_mapping(translations[i].om_start, pa | TTE_KERNEL | VTD_4M); #endif - for (j = 0, k = 0; phys_avail[j + 2] != 0; j += 2, k += 2) { + } + } + + /* + * Find out what physical memory is available from the prom and + * initialize the phys_avail array. This must be done before + * pmap_bootstrap_alloc is called. + */ + if ((pmem = OF_finddevice("/memory")) == -1) + panic("pmap_bootstrap: finddevice /memory"); + if ((sz = OF_getproplen(pmem, "available")) == -1) + panic("pmap_bootstrap: getproplen /memory/available"); + if (sizeof(vm_paddr_t)*128 < sz) /* FIXME */ + panic("pmap_bootstrap: phys_avail too small"); + if (sizeof(mra) < sz) + panic("pmap_bootstrap: mra too small"); + bzero(mra, sz); + if (OF_getprop(pmem, "available", mra, sz) == -1) + panic("pmap_bootstrap: getprop /memory/available"); + + sz /= sizeof(*mra); + CTR0(KTR_PMAP, "pmap_bootstrap: physical memory"); + + qsort(mra, sz, sizeof (*mra), mr_cmp); + physsz = 0; + + if (TUNABLE_ULONG_FETCH("hw.physmem", &physmem_tunable)) + physmem = atop(physmem_tunable); + + KDPRINTF("desired physmem=0x%lx\n", physmem_tunable); + for (i = 0, j = 0; i < sz; i++) { + vm_paddr_t start = mra[i].mr_start; + uint64_t size = mra[i].mr_size; + CTR2(KTR_PMAP, "start=%#lx size=%#lx\n", mra[i].mr_start, mra[i].mr_size); + KDPRINTF("start=%#lx size=%#lx\n", mra[i].mr_start, mra[i].mr_size); + if (nucleus_memory_start == mra[i].mr_start) { + mra[i].mr_start += 2*PAGE_SIZE_4M; + mra[i].mr_size -= 2*PAGE_SIZE_4M; + } + if (nucleus_memory_start == (start + size - 2*PAGE_SIZE_4M)) + mra[i].mr_size -= 2*PAGE_SIZE_4M; - if (pa == phys_avail[j]) { - phys_avail_tmp[k] = phys_avail[j] + PAGE_SIZE_4M; - phys_avail_tmp[k + 1] = phys_avail[j + 1]; - break; - } else if (phys_avail[j] < pa && pa + PAGE_SIZE_4M == phys_avail[j + 1]) { - phys_avail_tmp[k] = phys_avail[j]; - phys_avail_tmp[k + 1] = pa; - } else if (phys_avail[j] < pa && pa + PAGE_SIZE_4M < phys_avail[j + 1]) { - phys_avail_tmp[k] = phys_avail[j]; - phys_avail_tmp[k + 1] = pa; - phys_avail_tmp[k + 2] = pa + PAGE_SIZE_4M; - phys_avail_tmp[k + 3] = phys_avail[j + 1]; - k += 2; - } else { - phys_avail_tmp[k] = phys_avail[j]; - phys_avail_tmp[k + 1] = phys_avail[j + 1]; - } + if ((nucleus_memory_start > start) && (nucleus_memory_start < (start + size))) { + uint64_t firstsize = (nucleus_memory_start - start); + phys_avail[j] = start; + if ((physmem_tunable != 0) && ((physsz + firstsize) > physmem_tunable)) { + phys_avail[j+1] = start + (physmem_tunable - physsz); + physsz = physmem_tunable; + break; } - - for (j = 0; phys_avail_tmp[j + 2] != 0; phys_avail[j] = phys_avail_tmp[j], - phys_avail[j + 1] = phys_avail_tmp[j + 1], j += 2) - ; - } + phys_avail[j+1] = nucleus_memory_start; + size = size - firstsize - 2*PAGE_SIZE_4M; + mra[i].mr_start = nucleus_memory_start + 2*PAGE_SIZE_4M; + mra[i].mr_size = size; + physsz += firstsize + 2*PAGE_SIZE_4M; + j += 2; + } + if (mra[i].mr_size < PAGE_SIZE_4M) + continue; + if ((mra[i].mr_start & PAGE_MASK_4M) && (mra[i].mr_size < 2*PAGE_SIZE_4M)) + continue; + if (mra[i].mr_start & PAGE_MASK_4M) { + uint64_t newstart, roundup; + newstart = ((mra[i].mr_start + (PAGE_SIZE_4M-1)) & ~PAGE_MASK_4M); + roundup = newstart - mra[i].mr_start; + mra[i].mr_size -= roundup; + mra[i].mr_start = newstart; + } + mra[i].mr_size &= ~PAGE_MASK_4M; + phys_avail[j] = mra[i].mr_start; + if (physmem_tunable != 0 && ((physsz + mra[i].mr_size) >= physmem_tunable)) { + size = physmem_tunable - physsz; + phys_avail[j + 1] = mra[i].mr_start + size; + physsz = physmem_tunable; + break; + } + phys_avail[j + 1] = mra[i].mr_start + mra[i].mr_size; + physsz += mra[i].mr_size; + j += 2; } + phys_avail_start = phys_avail[0]; + physmem = btoc(physsz); + + for (i = 0; phys_avail[i] != 0; i += 2) + KDPRINTF("phys_avail[%d]=0x%lx phys_avail[%d]=0x%lx\n", + i, phys_avail[i], i+1, phys_avail[i+1]); /* * Calculate the size of kernel virtual memory, and the size and mask * for the kernel tsb. @@ -613,7 +630,7 @@ * currently (not by design) used for permanent mappings */ - tsb_4m_size = (virtsz >> (PAGE_SHIFT_4M - TTE_SHIFT)); + tsb_4m_size = (virtsz >> (PAGE_SHIFT_4M - TTE_SHIFT)) << 3; pa = pmap_bootstrap_alloc(tsb_4m_size); KDPRINTF("tsb_4m_pa is 0x%lx tsb_4m_size is 0x%lx\n", pa, tsb_4m_size); @@ -688,22 +705,35 @@ } } + error = hv_set_ctx0(MAX_TSB_INFO, vtophys((vm_offset_t)&kernel_td)); + if (error != H_EOK) + panic("failed to set ctx0 TSBs error: %ld", error); +#ifdef SMP + mp_set_tsb_desc_ra(vtophys((vm_offset_t)&kernel_td)); +#endif /* * setup direct mappings * */ - pa = PAGE_SIZE_4M; - for (i = 0; phys_avail[i] != 0; i += 2) - for (; pa < phys_avail[i + 1]; pa += PAGE_SIZE_4M) + i = 0; + pa = phys_avail_start; + do { + for (; pa < phys_avail[i + 1]; pa += PAGE_SIZE_4M) { + tsb_assert_invalid(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa)); tsb_set_tte_real(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa), pa | TTE_KERNEL | VTD_4M, 0); - - for (i = 0; i < 2; i++) { + + } + i += 2; + pa = phys_avail[i]; + } while (pa != 0); + + for (i = 0; i < 2; i++) { pa = nucleus_mappings[i]; + tsb_assert_invalid(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa)); tsb_set_tte_real(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa), pa | TTE_KERNEL | VTD_4M, 0); - } /* * Get the available physical memory ranges from /memory/reg. These @@ -726,14 +756,6 @@ TAILQ_INIT(&kernel_pmap->pm_pvlist); - error = hv_set_ctx0(MAX_TSB_INFO, vtophys((vm_offset_t)&kernel_td)); - if (error != H_EOK) - panic("failed to set ctx0 TSBs error: %ld", error); - -#ifdef SMP - mp_set_tsb_desc_ra(vtophys((vm_offset_t)&kernel_td)); -#endif - /* * This could happen earlier - but I put it here to avoid * attempts to do updates until they're legal From owner-p4-projects@FreeBSD.ORG Mon Jul 3 04:05:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 93ECA16A492; Mon, 3 Jul 2006 04:05:50 +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 3672616A417 for ; Mon, 3 Jul 2006 04:05:50 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8926C43D46 for ; Mon, 3 Jul 2006 04:05:41 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6345fCU019242 for ; Mon, 3 Jul 2006 04:05:41 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6345edf019239 for perforce@freebsd.org; Mon, 3 Jul 2006 04:05:40 GMT (envelope-from imp@freebsd.org) Date: Mon, 3 Jul 2006 04:05:40 GMT Message-Id: <200607030405.k6345edf019239@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100454 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 04:05:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=100454 Change 100454 by imp@imp_plunger on 2006/07/03 04:05:39 Merge from the other location into a more public location now that we've seen a lot of interest in the project and we have it to an interesting (but not yet useful) point. Affected files ... .. //depot/projects/mips2/src/NOTES#1 branch .. //depot/projects/mips2/src/TODO#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/coff-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/config.bfd#2 integrate .. //depot/projects/mips2/src/contrib/binutils/bfd/cpu-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/elf32-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/elf64-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/elfn32-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/elfxx-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/elfxx-mips.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/hosts/mipsbsd.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/hosts/mipsmach3.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/hosts/news-mips.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/mipsbsd.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/pe-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/bfd/pei-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/gas/config/e-mipsecoff.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/gas/config/e-mipself.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/gas/config/itbl-mips.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/gas/config/tc-mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/gas/config/tc-mips.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/gas/config/te-tmips.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/gas/doc/c-mips.texi#1 branch .. //depot/projects/mips2/src/contrib/binutils/gprof/mips.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/include/coff/mips.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/include/coff/mipspe.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/include/opcode/mips.h#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/elf32bmip_fbsd.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/elf32mipswindiss.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/mipsbig.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/mipsbsd.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/mipsidt.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/mipsidtl.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/mipslit.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/mipslnews.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emulparams/mipspe.sh#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emultempl/mipsecoff.em#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/emultempl/mipself.em#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/scripttempl/mips.sc#1 branch .. //depot/projects/mips2/src/contrib/binutils/ld/scripttempl/mipsbsd.sc#1 branch .. //depot/projects/mips2/src/contrib/binutils/opcodes/mips-dis.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/opcodes/mips-opc.c#1 branch .. //depot/projects/mips2/src/contrib/binutils/opcodes/mips16-opc.c#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/5400.md#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/5500.md#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/7000.md#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/9000.md#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/_tilib.c#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/cross64.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/crti.asm#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/crtn.asm#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/dbxmdebug.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/elf.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/elf64.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/elforion.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/freebsd.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/iris5.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/iris5gas.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/iris5gld.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/iris6.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/iris6gas.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/iris6gld.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/irix-crti.asm#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/irix-crtn.asm#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/linux.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/linux64.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/mips-modes.def#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/mips-protos.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/mips.c#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/mips.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/mips.md#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/mips16.S#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/netbsd.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/openbsd.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/r3900.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/rtems.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/sdb.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/sr71k.md#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-cross64#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-elf#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-gofast#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-iris#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-iris5-6#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-iris5-as#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-iris5-gas#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-iris6#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-irix-gld#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-isa3264#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-linux64#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-mips#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-r3900#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-rtems#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-sr71k#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-vr#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/t-vxworks#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/vr.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/vxworks.h#1 branch .. //depot/projects/mips2/src/contrib/gcc/config/mips/windiss.h#1 branch .. //depot/projects/mips2/src/gnu/usr.bin/Makefile#2 integrate .. //depot/projects/mips2/src/gnu/usr.bin/binutils/as/Makefile#2 integrate .. //depot/projects/mips2/src/gnu/usr.bin/binutils/as/mips-freebsd/itbl-cpu.h#1 branch .. //depot/projects/mips2/src/gnu/usr.bin/binutils/as/mips-freebsd/targ-cpu.h#1 branch .. //depot/projects/mips2/src/gnu/usr.bin/binutils/ld/Makefile.mips#1 branch .. //depot/projects/mips2/src/gnu/usr.bin/binutils/libbfd/Makefile.mips#1 branch .. //depot/projects/mips2/src/gnu/usr.bin/binutils/libopcodes/Makefile.mips#1 branch .. //depot/projects/mips2/src/gnu/usr.bin/cc/Makefile.tgt#2 integrate .. //depot/projects/mips2/src/gnu/usr.bin/cc/cc_tools/Makefile#2 integrate .. //depot/projects/mips2/src/gnu/usr.bin/cc/cc_tools/auto-host.h#2 integrate .. //depot/projects/mips2/src/lib/libc/mips/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/libc/mips/SYS.h#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gdtoa/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gdtoa/arith.h#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gdtoa/gd_qnan.h#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/_lwp.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/_resumecontext.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/_setjmp.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/cacheflush.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/fabs.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/flt_rounds.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/fpgetmask.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/fpgetround.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/fpgetsticky.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/fpsetmask.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/fpsetround.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/fpsetsticky.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/ldexp.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/longjmp.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/makecontext.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/modf.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/nanf.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/resumecontext.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/setjmp.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/sigsetjmp.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/gen/swapcontext.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/net/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/libc/mips/stdlib/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/libc/mips/string/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/libc/mips/string/bcmp.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/string/bzero.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/string/index.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/string/rindex.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/__clone.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/__sigaction14_sigtramp.c#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/__sigtramp2.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/__syscall.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/__vfork14.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/brk.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/cerror.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/exect.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/fork.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/getcontext.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/pipe.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/ptrace.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/sbrk.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/shmat.S#1 branch .. //depot/projects/mips2/src/lib/libc/mips/sys/syscall.S#1 branch .. //depot/projects/mips2/src/lib/libpthread/arch/mips/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/libpthread/arch/mips/include/atomic_ops.h#1 branch .. //depot/projects/mips2/src/lib/libpthread/arch/mips/include/pthread_md.h#1 branch .. //depot/projects/mips2/src/lib/libpthread/arch/mips/mips/context.S#1 branch .. //depot/projects/mips2/src/lib/libpthread/arch/mips/mips/pthread_md.c#1 branch .. //depot/projects/mips2/src/lib/libthr/arch/mips/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/libthr/arch/mips/include/pthread_md.h#1 branch .. //depot/projects/mips2/src/lib/libthr/arch/mips/mips/pthread_md.c#1 branch .. //depot/projects/mips2/src/lib/msun/mips/Makefile.inc#1 branch .. //depot/projects/mips2/src/lib/msun/mips/Symbol.map#1 branch .. //depot/projects/mips2/src/lib/msun/mips/fenv.c#1 branch .. //depot/projects/mips2/src/lib/msun/mips/fenv.h#1 branch .. //depot/projects/mips2/src/secure/lib/libcrypto/opensslconf-mips.h#1 branch .. //depot/projects/mips2/src/share/mk/bsd.endian.mk#2 integrate .. //depot/projects/mips2/src/sys/Makefile#2 integrate .. //depot/projects/mips2/src/sys/conf/Makefile.mips#1 branch .. //depot/projects/mips2/src/sys/conf/files.mips#1 branch .. //depot/projects/mips2/src/sys/conf/kern.mk#2 integrate .. //depot/projects/mips2/src/sys/conf/options.mips#1 branch .. //depot/projects/mips2/src/sys/mips/adm5120/files.adm5120#1 branch .. //depot/projects/mips2/src/sys/mips/adm5120/std.adm5120#1 branch .. //depot/projects/mips2/src/sys/mips/compile/KEEP_ME#1 branch .. //depot/projects/mips2/src/sys/mips/conf/QEMU#1 branch .. //depot/projects/mips2/src/sys/mips/include/_bus.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/_inttypes.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/_limits.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/_stdint.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/_types.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/asm.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/asmacros.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/atomic.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/bus.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/bus_dma.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/clock.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/cpu.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/cputypes.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/db_machdep.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/elf.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/endian.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/exec.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/float.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/floatingpoint.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/fpu.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/frame.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/gdb_machdep.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/ieeefp.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/in_cksum.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/intr_machdep.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/iodev.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/kdb.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/limits.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/md_var.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/memdev.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/metadata.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/minidump.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/mp_watchdog.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/mutex.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/param.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/pcb.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/pcb_ext.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/pci_cfgreg.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/pcpu.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/pmap.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/pmc_mdep.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/ppireg.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/proc.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/profile.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/psl.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/ptrace.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/reg.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/reloc.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/resource.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/runq.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/segments.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/setjmp.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/sf_buf.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/sigframe.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/signal.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/smp.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/specialreg.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/stdarg.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/sysarch.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/timerreg.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/trap.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/ucontext.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/varargs.h#1 branch .. //depot/projects/mips2/src/sys/mips/include/vmparam.h#1 branch .. //depot/projects/mips2/src/sys/mips/mips/autoconf.c#1 branch .. //depot/projects/mips2/src/sys/mips/mips/genassym.c#1 branch Differences ... ==== //depot/projects/mips2/src/contrib/binutils/bfd/config.bfd#2 (text+ko) ==== @@ -768,6 +768,10 @@ targ_defvec=bfd_elf32_littlemips_vec targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_little_vec ecoff_big_vec" ;; + mips*-*-freebsd*) + targ_defvec=bfd_elf32_bigmips_vec + targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_big_vec ecoff_little_vec" + ;; mips*-*-netbsd*) targ_defvec=bfd_elf32_bigmips_vec targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_big_vec ecoff_little_vec" ==== //depot/projects/mips2/src/gnu/usr.bin/Makefile#2 (text+ko) ==== @@ -24,7 +24,8 @@ sort \ ${_texinfo} -.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "powerpc" +.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "powerpc" || \ + ${MACHINE_ARCH} == "mips" MK_GDB= no # not yet .endif ==== //depot/projects/mips2/src/gnu/usr.bin/binutils/as/Makefile#2 (text+ko) ==== @@ -20,6 +20,10 @@ # DEO: why not used? #SRCS+= itbl-ops.c +.if ${TARGET_ARCH} == "mips" +SRCS+= itbl-ops.c itbl-parse.y itbl-lex.l +.endif + .if ${TARGET_ARCH} == "amd64" SRCS+= tc-i386.c .elif ${TARGET_ARCH} == "powerpc" ==== //depot/projects/mips2/src/gnu/usr.bin/cc/Makefile.tgt#2 (text+ko) ==== @@ -11,6 +11,8 @@ .elif ${TARGET_ARCH} == "ia64" TARGET_CPU_DEFAULT= MASK_GNU_AS|MASK_GNU_LD GCC_CPU= ia64 +.elif ${TARGET_ARCH} == "mips" +GCC_CPU= mips .elif ${TARGET_ARCH} == "powerpc" GCC_CPU= rs6000 .elif ${TARGET_ARCH} == "sparc64" ==== //depot/projects/mips2/src/gnu/usr.bin/cc/cc_tools/Makefile#2 (text+ko) ==== @@ -246,7 +246,9 @@ TARGET_INC+= altivec-defs.h .endif TARGET_INC+= defaults.h - +.if ${TARGET_ARCH} == "mips" +TARGET_CPU_DEFAULT= 16 +.endif # # Use TARGET_INC as a template and build a list of target specific # include files for gengtype to scan ==== //depot/projects/mips2/src/gnu/usr.bin/cc/cc_tools/auto-host.h#2 (text+ko) ==== @@ -523,7 +523,7 @@ /* The number of bytes in type int */ #define SIZEOF_INT 4 -#if defined(__i386__) || defined(__powerpc__) || defined(__strongarm__) +#if defined(__i386__) || defined(__powerpc__) || defined(__arm__) || defined(__mips__) /* The number of bytes in type long */ # define SIZEOF_LONG SIZEOF_INT #elif defined(__alpha__) || defined(__sparc64__) || defined(__ia64__) || defined(__amd64__) ==== //depot/projects/mips2/src/share/mk/bsd.endian.mk#2 (text+ko) ==== @@ -4,10 +4,12 @@ ${MACHINE_ARCH} == "amd64" || \ ${MACHINE_ARCH} == "i386" || \ ${MACHINE_ARCH} == "ia64" || \ - (${MACHINE_ARCH} == "arm" && !defined(ARM_BIG_ENDIAN)) + (${MACHINE_ARCH} == "arm" && !defined(ARM_BIG_ENDIAN)) || \ + (${MACHINE_ARCH} == "mips" && !defined(MIPS_BIG_ENDIAN)) TARGET_ENDIANNESS= 1234 .elif ${MACHINE_ARCH} == "powerpc" || \ ${MACHINE_ARCH} == "sparc64" || \ - ${MACHINE_ARCH} == "arm" + ${MACHINE_ARCH} == "arm" || \ + ${MACHINE_ARCH} == "mips" TARGET_ENDIANNESS= 4321 .endif ==== //depot/projects/mips2/src/sys/Makefile#2 (text+ko) ==== @@ -4,7 +4,7 @@ # The boot loader .if ${MK_BOOT} != "no" -.if ${MACHINE_ARCH} != "arm" +.if ${MACHINE_ARCH} != "arm" && ${MACHINE_ARCH} != "mips" SUBDIR= boot .endif .endif ==== //depot/projects/mips2/src/sys/conf/kern.mk#2 (text+ko) ==== @@ -82,6 +82,15 @@ .endif # +# For PowerPC we tell gcc to use floating point emulation. This avoids using +# floating point registers for integer operations which it has a tendency to do. +# +.if ${MACHINE_ARCH} == "mips" +CFLAGS+= -msoft-float +INLINE_LIMIT?= 15000 +.endif + +# # GCC 3.0 and above like to do certain optimizations based on the # assumption that the program is linked against libc. Stop this. # From owner-p4-projects@FreeBSD.ORG Mon Jul 3 05:02:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3441116A528; Mon, 3 Jul 2006 05:02:52 +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 DAE3B16A4B3 for ; Mon, 3 Jul 2006 05:02:51 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A680F43D46 for ; Mon, 3 Jul 2006 05:02:51 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6352p9g029490 for ; Mon, 3 Jul 2006 05:02:51 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6352pmd029487 for perforce@freebsd.org; Mon, 3 Jul 2006 05:02:51 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 3 Jul 2006 05:02:51 GMT Message-Id: <200607030502.k6352pmd029487@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100455 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 05:02:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=100455 Change 100455 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/03 05:01:54 remove debugging Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/vm/vm_init.c#3 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/vm/vm_init.c#3 (text+ko) ==== @@ -114,24 +114,16 @@ * Initializes resident memory structures. From here on, all physical * memory is accounted for, and we use only virtual addresses. */ - printf("set page size\n"); vm_set_page_size(); - printf("virtual_avail=0x%lx\n", virtual_avail); virtual_avail = vm_page_startup(virtual_avail); - printf("post-vm_page_startup: virtual_avail=0x%lx\n", virtual_avail); /* * Initialize other VM packages */ vm_object_init(); - printf("vm_object_inited\n"); vm_map_startup(); - printf("vm_map_startup\n"); kmem_init(virtual_avail, virtual_end); - printf("kmem_inited\n"); pmap_init(); - printf("pmap_init\n"); vm_pager_init(); - printf("vm_pager_init\n"); } void From owner-p4-projects@FreeBSD.ORG Mon Jul 3 05:09:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3736716A47B; Mon, 3 Jul 2006 05:09:01 +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 1006516A416 for ; Mon, 3 Jul 2006 05:09:01 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 803D543D4C for ; Mon, 3 Jul 2006 05:09:00 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63590cK031034 for ; Mon, 3 Jul 2006 05:09:00 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6358xWP031031 for perforce@freebsd.org; Mon, 3 Jul 2006 05:08:59 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 3 Jul 2006 05:08:59 GMT Message-Id: <200607030508.k6358xWP031031@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100457 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 05:09:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=100457 Change 100457 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/03 05:08:02 integrate @100359 in preparation for integrating latest bike_sched Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/share/man/man4/ng_tag.4#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/share/man/man4/sched_core.4#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mfi/mfi.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/sio/sio.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/usb/if_ural.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/pmap.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_thread.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/sched_4bsd.c#4 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/modules/streams/Makefile#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/modules/svr4/Makefile#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/netinet6/in6_cksum.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/tools/tools/net80211/wlanwatch/wlanwatch.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/usr.bin/tail/tail.1#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/usr.bin/tail/tail.c#3 integrate Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/share/man/man4/ng_tag.4#2 (text+ko) ==== @@ -22,9 +22,10 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ng_tag.4,v 1.1 2006/06/27 12:45:27 glebius Exp $ +.\" $FreeBSD: src/share/man/man4/ng_tag.4,v 1.2 2006/06/30 11:35:35 ru Exp $ .\" .Dd June 10, 2006 +.Dt NG_TAG 4 .Os .Sh NAME .Nm ng_tag @@ -217,13 +218,13 @@ tags in conjunction with .Xr ng_bpf 4 traffic analyzer. -Let us suppose we need to filter DirectConnect P2P network data traffic, +Example below explains how to filter DirectConnect P2P network data traffic, which cannot be done by usual means as it uses random ports. It is known that such data connection always contains a TCP packet with 6-byte payload string "$Send|". -So we will use ipfw's +So ipfw's .Cm netgraph -action to divert all TCP packets to an +action will be used to divert all TCP packets to an .Xr ng_bpf 4 node which will check for the specified string and return non-matching packets to @@ -234,17 +235,17 @@ .Xr ng_bpf 4 node on a hook programmed to accept all packets and pass them back to .Xr ipfw 8 . -We will use a script provided in +A script provided in .Xr ng_bpf 4 -manual page for programming node. +manual page will be used for programming node. Note that packets diverted from .Xr ipfw 8 to Netgraph have no link-level header, so offsets in .Xr tcpdump 1 expressions must be altered accordingly. -Thus, we will have expression +Thus, there will be expression .Dq Li "ether[40:2]=0x244c && ether[42:4]=0x6f636b20" -on incoming from hook and empty expression to match all packets from +on incoming hook and empty expression to match all packets from .Xr ng_tag 4 . .Pp So, this is @@ -298,15 +299,15 @@ .Pp After finishing with .Xr netgraph 4 -nodes, add +nodes, .Xr ipfw 8 -rules to enable packet flow: +rules must be added to enable packet flow: .Bd -literal -offset 4n ipfw add 100 netgraph 41 tcp from any to any iplen 46 ipfw add 110 reset tcp from any to any tagged 412 .Ed .Pp -Note: you should ensure that packets are returned to ipfw after processing +Note: one should ensure that packets are returned to ipfw after processing inside .Xr netgraph 4 , by setting appropriate ==== //depot/projects/kmacy_sun4v_stable/src/share/man/man4/sched_core.4#2 (text+ko) ==== @@ -22,9 +22,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/sched_core.4,v 1.2 2006/06/14 08:32:25 joel Exp $ +.\" $FreeBSD: src/share/man/man4/sched_core.4,v 1.3 2006/06/30 07:45:38 delphij Exp $ .\" -.Dd June 14, 2006 +.Dd June 30, 2006 .Os .Dt SCHED_CORE 4 .Sh NAME @@ -46,14 +46,16 @@ .Bl -bullet -compact -offset indent .It Nice value of timesharing processes is respected. Allocation of -timeslice and interaction detection algorithm are based on +time slice and interaction detection algorithm are based on nice value. .It -Per-cpu scheduling queue and load balancing. +Per-CPU scheduling queue and load balancing. .It O(1) scheduling. .It -Some cpu affinity code in wakeup path. +Some CPU affinity code in wakeup path. +.It +Some preliminary support for Hyper Threading Technology. .It Support for POSIX SCHED_FIFO and SCHED_RR. .El @@ -63,12 +65,22 @@ .Bl -tag -width indent .It Va kern.sched.name This read-only sysctl reports the name of the active scheduler. -.It Va kern.sched.imbalance_pct -(SMP specific) Lower watermark that triggers thread migration -if the difference is above this percentage. -.It Va kern.sched.imbalance_pct2 -(SMP specific) Higher watermark where the current CPU is not -considered the preferred one for migration. +.It Va kern.sched.ipiwakeup.enabled +(SMP specific) Whether to allow forwarding of wakeup to idle CPUs. +.It Va kern.sched.ipiwakeup.requested +(SMP specific) Requests for forwarding of wakeup to idle CPUs. +(read-only). +.It Va kern.sched.ipiwakeup.requested +(SMP specific) Completed forwarding of wakeup to idle CPUs. +(read-only). +.It Va kern.sched.ipiwakeup.usemask +(SMP specific) Whether to use the mask of idle CPUs. +.It Va kern.sched.ipiwakeup.useloop +(SMP specific) Whether to use loop to find idle CPUs. +.It Va kern.sched.ipiwakeup.onecpu +(SMP specific) Whether to only signal one CPU when doing wakeup. +.It Va kern.sched.ipiwakeup.htt +(SMP specific) Whether to take Hyper-Threading into account. .El .Pp The ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mfi/mfi.c#3 (text) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.12 2006/06/20 23:08:35 ps Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mfi/mfi.c,v 1.13 2006/06/30 18:59:08 ambrisko Exp $"); #include "opt_mfi.h" @@ -1296,13 +1296,16 @@ return (error); } cm->cm_flags = MFI_CMD_DATAIN; - cm->cm_complete = mfi_add_ld_complete; dcmd = &cm->cm_frame->dcmd; dcmd->mbox[0] = id; + if (mfi_wait_command(sc, cm) != 0) { + device_printf(sc->mfi_dev, + "Failed to get logical drive: %d\n", id); + free(ld_info, M_MFIBUF); + return (0); + } - mfi_enqueue_ready(cm); - mfi_startio(sc); - + mfi_add_ld_complete(cm); return (0); } ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/tlphy.c#2 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/tlphy.c,v 1.19 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/tlphy.c,v 1.20 2006/07/03 02:53:40 yongari Exp $"); /* * Driver for Texas Instruments's ThunderLAN PHYs @@ -140,7 +140,7 @@ device_set_desc(dev, MII_STR_xxTI_TLAN10T); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/ukphy.c#2 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/ukphy.c,v 1.18 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/ukphy.c,v 1.19 2006/07/03 02:53:40 yongari Exp $"); /* * driver for generic unknown PHYs @@ -121,7 +121,7 @@ * We know something is here, so always match at a low priority. */ device_set_desc(dev, "Generic IEEE 802.3u media interface"); - return (-100); + return (BUS_PROBE_GENERIC); } static int ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/xmphy.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/xmphy.c,v 1.18 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/xmphy.c,v 1.19 2006/07/03 02:53:40 yongari Exp $"); /* * driver for the XaQti XMAC II's internal PHY. This is sort of @@ -93,13 +93,13 @@ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxXAQTI && MII_MODEL(ma->mii_id2) == MII_MODEL_XAQTI_XMACII) { device_set_desc(dev, MII_STR_XAQTI_XMACII); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_JATO && MII_MODEL(ma->mii_id2) == MII_MODEL_JATO_BASEX) { device_set_desc(dev, MII_STR_JATO_BASEX); - return(0); + return(BUS_PROBE_DEFAULT); } return(ENXIO); ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/sio/sio.c#3 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/sio/sio.c,v 1.467 2006/05/26 11:54:32 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/sio/sio.c,v 1.468 2006/06/30 06:27:24 imp Exp $"); #include "opt_comconsole.h" #include "opt_compat.h" @@ -700,7 +700,7 @@ device_set_softc(dev, NULL); free(com, M_DEVBUF); } - return (result); + return (result == 0 ? BUS_PROBE_DEFAULT : result); } /* @@ -777,7 +777,7 @@ device_set_softc(dev, NULL); free(com, M_DEVBUF); } - return (result); + return (result == 0 ? BUS_PROBE_DEFAULT : result); } #ifdef COM_ESP ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/usb/if_ural.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/usb/if_ural.c,v 1.40 2006/06/02 23:14:40 sam Exp $ */ +/* $FreeBSD: src/sys/dev/usb/if_ural.c,v 1.41 2006/07/01 13:39:04 maxim Exp $ */ /*- * Copyright (c) 2005, 2006 @@ -18,7 +18,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/if_ural.c,v 1.40 2006/06/02 23:14:40 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/if_ural.c,v 1.41 2006/07/01 13:39:04 maxim Exp $"); /*- * Ralink Technology RT2500USB chipset driver @@ -1746,7 +1746,7 @@ /* dual-band RF */ case RAL_RF_5222: - for (i = 0; i < ural_rf5222[i].chan != chan; i++); + for (i = 0; ural_rf5222[i].chan != chan; i++); ural_rf_write(sc, RAL_RF1, ural_rf5222[i].r1); ural_rf_write(sc, RAL_RF2, ural_rf5222[i].r2); ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/pmap.c#3 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/pmap.c,v 1.564 2006/06/27 04:28:23 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/pmap.c,v 1.565 2006/07/02 18:22:47 alc Exp $"); /* * Manages physical address maps. @@ -1686,9 +1686,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } sched_unpin(); ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_thread.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_thread.c,v 1.233 2006/03/21 10:05:15 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_thread.c,v 1.234 2006/06/30 08:10:55 maxim Exp $"); #include #include @@ -723,7 +723,7 @@ * There are no threads in user mode. Threads in the kernel must be * allowed to continue until they get to the user boundary. They may even * copy out their return values and data before suspending. They may however be - * accellerated in reaching the user boundary as we will wake up + * accelerated in reaching the user boundary as we will wake up * any sleeping threads that are interruptable. (PCATCH). */ int ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/sched_4bsd.c#4 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sched_4bsd.c,v 1.84 2006/06/29 19:37:31 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sched_4bsd.c,v 1.86 2006/07/02 20:53:52 maxim Exp $"); #include "opt_hwpmc_hooks.h" @@ -77,7 +77,7 @@ /* * The schedulable entity that can be given a context to run. * A process may have several of these. Probably one per processor - * but posibly a few more. In this universe they are grouped + * but possibly a few more. In this universe they are grouped * with a KSEG that contains the priority and niceness * for the group. */ @@ -126,9 +126,9 @@ do { \ kg->kg_avail_opennings++; \ CTR3(KTR_RUNQ, "kg %p(%d) Slot released (->%d)", \ - kg, \ - kg->kg_concurrency, \ - kg->kg_avail_opennings); \ + kg, \ + kg->kg_concurrency, \ + kg->kg_avail_opennings); \ /* KASSERT((kg->kg_avail_opennings <= kg->kg_concurrency), \ ("slots out of whack"));*/ \ } while (0) @@ -137,9 +137,9 @@ do { \ kg->kg_avail_opennings--; \ CTR3(KTR_RUNQ, "kg %p(%d) Slot used (->%d)", \ - kg, \ - kg->kg_concurrency, \ - kg->kg_avail_opennings); \ + kg, \ + kg->kg_concurrency, \ + kg->kg_avail_opennings); \ /* KASSERT((kg->kg_avail_opennings >= 0), \ ("slots out of whack"));*/ \ } while (0) @@ -1399,8 +1399,6 @@ ke = td->td_kse; return (ke->ke_pctcpu); - - return (0); } void ==== //depot/projects/kmacy_sun4v_stable/src/sys/modules/bktr/bktr_mem/Makefile#2 (text+ko) ==== @@ -1,6 +1,4 @@ -# $FreeBSD: src/sys/modules/bktr/bktr_mem/Makefile,v 1.3 2002/01/11 01:15:58 msmith Exp $ - -MAINTAINER= roger@freebsd.org +# $FreeBSD: src/sys/modules/bktr/bktr_mem/Makefile,v 1.4 2006/07/01 10:51:54 markm Exp $ .PATH: ${.CURDIR}/../../../dev/bktr ==== //depot/projects/kmacy_sun4v_stable/src/sys/modules/streams/Makefile#2 (text+ko) ==== @@ -1,5 +1,4 @@ -# $FreeBSD: src/sys/modules/streams/Makefile,v 1.11 2003/11/19 05:08:27 imp Exp $ -MAINTAINER= newton@atdot.dotat.org +# $FreeBSD: src/sys/modules/streams/Makefile,v 1.12 2006/07/01 10:51:55 markm Exp $ .PATH: ${.CURDIR}/../../dev/streams ==== //depot/projects/kmacy_sun4v_stable/src/sys/modules/svr4/Makefile#2 (text+ko) ==== @@ -1,6 +1,4 @@ -# $FreeBSD: src/sys/modules/svr4/Makefile,v 1.29 2006/01/26 19:21:27 alc Exp $ - -MAINTAINER= newton@FreeBSD.org +# $FreeBSD: src/sys/modules/svr4/Makefile,v 1.30 2006/07/01 10:51:55 markm Exp $ .PATH: ${.CURDIR}/../../${MACHINE_ARCH}/svr4 ${.CURDIR}/../../compat/svr4 KMOD= svr4 ==== //depot/projects/kmacy_sun4v_stable/src/sys/netinet6/in6_cksum.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/netinet6/in6_cksum.c,v 1.12 2006/01/22 01:17:57 rwatson Exp $ */ +/* $FreeBSD: src/sys/netinet6/in6_cksum.c,v 1.13 2006/06/30 18:25:07 yar Exp $ */ /* $KAME: in6_cksum.c,v 1.10 2000/12/03 00:53:59 itojun Exp $ */ /*- @@ -153,7 +153,7 @@ /* * Secondly calculate a summary of the first mbuf excluding offset. */ - while (m != NULL && off > 0) { + while (off > 0) { if (m->m_len <= off) off -= m->m_len; else ==== //depot/projects/kmacy_sun4v_stable/src/sys/powerpc/powerpc/mmu_oea.c#3 (text+ko) ==== @@ -91,7 +91,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/mmu_oea.c,v 1.108 2006/06/25 19:07:01 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/mmu_oea.c,v 1.109 2006/07/01 23:24:32 alc Exp $"); /* * Manages physical address maps. @@ -1226,7 +1226,6 @@ vm_page_t m; m = NULL; - mtx_lock(&Giant); vm_page_lock_queues(); PMAP_LOCK(pmap); pvo = moea_pvo_find_va(pmap, va & ~ADDR_POFF, NULL); @@ -1238,7 +1237,6 @@ } vm_page_unlock_queues(); PMAP_UNLOCK(pmap); - mtx_unlock(&Giant); return (m); } @@ -1598,13 +1596,10 @@ ("moea_protect: non current pmap")); if ((prot & VM_PROT_READ) == VM_PROT_NONE) { - mtx_lock(&Giant); moea_remove(mmu, pm, sva, eva); - mtx_unlock(&Giant); return; } - mtx_lock(&Giant); vm_page_lock_queues(); PMAP_LOCK(pm); for (; sva < eva; sva += PAGE_SIZE) { @@ -1636,7 +1631,6 @@ } vm_page_unlock_queues(); PMAP_UNLOCK(pm); - mtx_unlock(&Giant); } /* ==== //depot/projects/kmacy_sun4v_stable/src/tools/tools/net80211/wlanwatch/wlanwatch.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/tools/tools/net80211/wlanwatch/wlanwatch.c,v 1.1 2005/12/11 23:13:54 sam Exp $ + * $FreeBSD: src/tools/tools/net80211/wlanwatch/wlanwatch.c,v 1.2 2006/06/30 19:06:18 sam Exp $ */ /* @@ -53,7 +53,13 @@ #include #include #include +#ifdef __NetBSD__ +#include +#elif __FreeBSD__ #include +#else +#error "No support for your operating system!" +#endif #include #include @@ -235,6 +241,19 @@ return (line); } +#ifndef SA_SIZE +/* + * This macro returns the size of a struct sockaddr when passed + * through a routing socket. Basically we round up sa_len to + * a multiple of sizeof(long), with a minimum of sizeof(long). + * The check for a NULL pointer is just a convenience, probably never used. + * The case sa_len == 0 should only apply to empty structures. + */ +#define SA_SIZE(sa) \ + ( (!(sa) || ((struct sockaddr *)(sa))->sa_len == 0) ? \ + sizeof(long) : \ + 1 + ( (((struct sockaddr *)(sa))->sa_len - 1) | (sizeof(long) - 1) ) ) +#endif static void pmsg_addrs(char *cp, int addrs) @@ -339,8 +358,9 @@ case RTM_IEEE80211_JOIN: case RTM_IEEE80211_REJOIN: printf("%s station %sjoin", - ifan->ifan_what == RTM_IEEE80211_REJOIN ? "re" : "", - ether_sprintf(V(ieee80211_join_event)->iev_addr)); + ether_sprintf(V(ieee80211_join_event)->iev_addr), + ifan->ifan_what == RTM_IEEE80211_REJOIN ? "re" : "" + ); break; case RTM_IEEE80211_LEAVE: printf("%s station leave", ==== //depot/projects/kmacy_sun4v_stable/src/usr.bin/tail/tail.1#3 (text+ko) ==== @@ -33,7 +33,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)tail.1 8.1 (Berkeley) 6/6/93 -.\" $FreeBSD: src/usr.bin/tail/tail.1,v 1.13 2006/06/29 22:07:49 flz Exp $ +.\" $FreeBSD: src/usr.bin/tail/tail.1,v 1.14 2006/06/30 08:19:26 ru Exp $ .\" .Dd June 29, 2006 .Dt TAIL 1 @@ -48,9 +48,7 @@ .Fl f | .Fl r .Oc -.Oo -.Fl q -.Oc +.Op Fl q .Oo .Fl b Ar number | .Fl c Ar number | ==== //depot/projects/kmacy_sun4v_stable/src/usr.bin/tail/tail.c#3 (text+ko) ==== @@ -36,7 +36,7 @@ #include -__FBSDID("$FreeBSD: src/usr.bin/tail/tail.c,v 1.22 2006/06/29 22:07:49 flz Exp $"); +__FBSDID("$FreeBSD: src/usr.bin/tail/tail.c,v 1.23 2006/06/30 08:19:26 ru Exp $"); #ifndef lint static const char copyright[] = @@ -332,6 +332,7 @@ usage(void) { (void)fprintf(stderr, - "usage: tail [-F | -f | -r] [-b # | -c # | -n #] [file ...]\n"); + "usage: tail [-F | -f | -r] [-q] [-b # | -c # | -n #]" + " [file ...]\n"); exit(1); } From owner-p4-projects@FreeBSD.ORG Mon Jul 3 05:34:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5BD3716A407; Mon, 3 Jul 2006 05:34:35 +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 1EA4816A416 for ; Mon, 3 Jul 2006 05:34:35 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BA86843D48 for ; Mon, 3 Jul 2006 05:34:34 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k635YYBw034704 for ; Mon, 3 Jul 2006 05:34:34 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k635YW4r034701 for perforce@freebsd.org; Mon, 3 Jul 2006 05:34:32 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 3 Jul 2006 05:34:32 GMT Message-Id: <200607030534.k635YW4r034701@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100459 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 05:34:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=100459 Change 100459 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/03 05:33:59 integrate bike_sched branch - Initially bike_sched was interesting to sun4v in that it simplifies scheduling - facilitating the fine-grained locking we'll need to scale past 4 cpus - A much bigger benefit is in fact that signals now appear to work reliably - without bike_sched thread processes almost uniformly become unkillable when sent a signal Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/amd64/amd64/machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/amd64/amd64/trap.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/amd64/amd64/vm_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/arm/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/arm/vm_machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/at91/kb920x_machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/sa11x0/assabet_machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/xscale/i80321/iq31244_machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/boot/sparc64/loader/main.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/conf/files#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/conf/options#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/ddb/db_ps.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/ata/ata-all.h#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/em/if_em.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/isp/isp_pci.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_pci.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/ofw/openfirm.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/pci/pci_pci.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/pci/pcireg.h#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/usb/ohci_pci.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/intr_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/local_apic.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/sys_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/trap.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/vm_machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/include/apicvar.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/include/intr_machdep.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/i386/isa/atpic.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/ia64/ia64/machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/ia64/ia64/trap.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/init_main.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/init_sysent.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_clock.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_fork.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_idle.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_intr.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_kse.c#2 delete .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_mutex.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_poll.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_proc.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_resource.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_sig.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_subr.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_switch.c#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_synch.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_thr.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_thread.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/sched_4bsd.c#5 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/sched_core.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/sched_ule.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/subr_bus.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/subr_rman.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/subr_trap.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/sys_process.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/syscalls.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/syscalls.master#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/kern/tty.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/pc98/pc98/machdep.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/posix4/ksched.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/powerpc/powerpc/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/powerpc/powerpc/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sparc64/sparc64/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sparc64/sparc64/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/machdep.c#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/trap.c#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/bus.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/lock.h#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/mutex.h#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/proc.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/rtprio.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/sched.h#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/syscall.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/syscall.mk#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/sys/sysproto.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/ufs/ffs/ffs_vfsops.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/vm/swap_pager.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/vm/vm_glue.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/vm/vm_meter.c#4 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/vm/vm_pageq.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/vm/vm_zeroidle.c#2 integrate Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/amd64/amd64/machdep.c#3 (text+ko) ==== @@ -1137,7 +1137,7 @@ * This may be done better later if it gets more high level * components in it. If so just link td->td_proc here. */ - proc_linkup(&proc0, &ksegrp0, &thread0); + proc_linkup(&proc0, &thread0); preload_metadata = (caddr_t)(uintptr_t)(modulep + KERNBASE); preload_bootstrap_relocate(KERNBASE); ==== //depot/projects/kmacy_sun4v_stable/src/sys/amd64/amd64/trap.c#3 (text+ko) ==== @@ -301,8 +301,6 @@ case T_PAGEFLT: /* page fault */ addr = frame.tf_addr; - if (td->td_pflags & TDP_SA) - thread_user_enter(td); i = trap_pfault(&frame, TRUE); if (i == -1) goto userout; @@ -753,8 +751,6 @@ td->td_frame = &frame; if (td->td_ucred != p->p_ucred) cred_update_thread(td); - if (p->p_flag & P_SA) - thread_user_enter(td); params = (caddr_t)frame.tf_rsp + sizeof(register_t); code = frame.tf_rax; orig_tf_rflags = frame.tf_rflags; ==== //depot/projects/kmacy_sun4v_stable/src/sys/amd64/amd64/vm_machdep.c#2 (text+ko) ==== @@ -244,8 +244,7 @@ * Initialize machine state (pcb and trap frame) for a new thread about to * upcall. Put enough state in the new thread's PCB to get it to go back * userret(), where we can intercept it again to set the return (upcall) - * Address and stack, along with those from upcals that are from other sources - * such as those generated in thread_userret() itself. + * Address and stack, along with those from upcals that are from other sources. */ void cpu_set_upcall(struct thread *td, struct thread *td0) @@ -302,24 +301,14 @@ } /* - * Set that machine state for performing an upcall that has to - * be done in thread_userret() so that those upcalls generated - * in thread_userret() itself can be done as well. + * Modify the machine state created by cpu_set_upcall() to arrange + * for the new thread to make a specific call as its first act. */ void cpu_set_upcall_kse(struct thread *td, void (*entry)(void *), void *arg, stack_t *stack) { - /* - * Do any extra cleaning that needs to be done. - * The thread may have optional components - * that are not present in a fresh thread. - * This may be a recycled thread so make it look - * as though it's newly allocated. - */ - cpu_thread_clean(td); - /* * Set the trap frame to point at the beginning of the uts * function. ==== //depot/projects/kmacy_sun4v_stable/src/sys/arm/arm/trap.c#2 (text+ko) ==== @@ -264,8 +264,6 @@ td->td_frame = tf; if (td->td_ucred != td->td_proc->p_ucred) cred_update_thread(td); - if (td->td_pflags & TDP_SA) - thread_user_enter(td); } /* Grab the current pcb */ @@ -731,8 +729,6 @@ td->td_frame = tf; if (td->td_ucred != td->td_proc->p_ucred) cred_update_thread(td); - if (td->td_proc->p_flag & P_SA) - thread_user_enter(td); } fault_pc = tf->tf_pc; if (td->td_md.md_spinlock_count == 0) { @@ -1004,8 +1000,6 @@ td->td_frame = frame; td->td_pticks = 0; - if (td->td_proc->p_flag & P_SA) - thread_user_enter(td); /* * Make sure the program counter is correctly aligned so we * don't take an alignment fault trying to read the opcode. ==== //depot/projects/kmacy_sun4v_stable/src/sys/arm/arm/vm_machdep.c#3 (text+ko) ==== @@ -256,8 +256,7 @@ * Initialize machine state (pcb and trap frame) for a new thread about to * upcall. Put enough state in the new thread's PCB to get it to go back * userret(), where we can intercept it again to set the return (upcall) - * Address and stack, along with those from upcals that are from other sources - * such as those generated in thread_userret() itself. + * Address and stack, along with those from upcals that are from other sources. */ void cpu_set_upcall(struct thread *td, struct thread *td0) @@ -283,9 +282,8 @@ } /* - * Set that machine state for performing an upcall that has to - * be done in thread_userret() so that those upcalls generated - * in thread_userret() itself can be done as well. + * Modify the machine state created by cpu_set_upcall() to arrange + * for the new thread to make a specific call as its first act. */ void cpu_set_upcall_kse(struct thread *td, void (*entry)(void *), void *arg, ==== //depot/projects/kmacy_sun4v_stable/src/sys/arm/at91/kb920x_machdep.c#3 (text+ko) ==== @@ -398,7 +398,7 @@ undefined_handler_address = (u_int)undefinedinstruction_bounce; undefined_init(); - proc_linkup(&proc0, &ksegrp0, &thread0); + proc_linkup(&proc0, &thread0); thread0.td_kstack = kernelstack.pv_va; thread0.td_pcb = (struct pcb *) (thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE) - 1; ==== //depot/projects/kmacy_sun4v_stable/src/sys/arm/sa11x0/assabet_machdep.c#3 (text+ko) ==== @@ -423,7 +423,7 @@ /* Set stack for exception handlers */ - proc_linkup(&proc0, &ksegrp0, &thread0); + proc_linkup(&proc0, &thread0); thread0.td_kstack = kernelstack.pv_va; thread0.td_pcb = (struct pcb *) (thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE) - 1; ==== //depot/projects/kmacy_sun4v_stable/src/sys/arm/xscale/i80321/iq31244_machdep.c#3 (text+ko) ==== @@ -427,7 +427,7 @@ undefined_handler_address = (u_int)undefinedinstruction_bounce; undefined_init(); - proc_linkup(&proc0, &ksegrp0, &thread0); + proc_linkup(&proc0, &thread0); thread0.td_kstack = kernelstack.pv_va; thread0.td_pcb = (struct pcb *) (thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE) - 1; ==== //depot/projects/kmacy_sun4v_stable/src/sys/boot/sparc64/loader/main.c#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/conf/files#3 (text+ko) ==== @@ -1283,7 +1283,6 @@ kern/kern_idle.c standard kern/kern_intr.c standard kern/kern_jail.c standard -kern/kern_kse.c standard kern/kern_kthread.c standard kern/kern_ktr.c optional ktr kern/kern_ktrace.c standard ==== //depot/projects/kmacy_sun4v_stable/src/sys/conf/options#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/ddb/db_ps.c#2 (text+ko) ==== @@ -295,7 +295,6 @@ db_printf("Thread %d at %p:\n", td->td_tid, td); db_printf(" proc (pid %d): %p ", td->td_proc->p_pid, td->td_proc); - db_printf(" ksegrp: %p\n", td->td_ksegrp); if (td->td_name[0] != '\0') db_printf(" name: %s\n", td->td_name); db_printf(" flags: %#x ", td->td_flags); ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/ata/ata-all.h#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/em/if_em.c#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/isp/isp_pci.c#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_pci.c#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/ofw/openfirm.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/pci/pci_pci.c#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/pci/pcireg.h#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/usb/ohci_pci.c#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/intr_machdep.c#2 (text+ko) ==== @@ -60,9 +60,10 @@ typedef void (*mask_fn)(void *); static int intrcnt_index; -static struct intsrc *interrupt_sources[NUM_IO_INTS]; static struct mtx intr_table_lock; +struct intsrc *interrupt_sources[NUM_IO_INTS]; + #ifdef SMP static int assign_cpu; @@ -166,12 +167,12 @@ } void -intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) +intr_execute_handlers(struct intsrc *isrc, u_int vector, struct trapframe *frame) { struct thread *td; struct intr_event *ie; struct intr_handler *ih; - int error, vector, thread; + int error, thread; td = curthread; @@ -190,7 +191,6 @@ * XXX: We assume that IRQ 0 is only used for the ISA timer * device (clk). */ - vector = isrc->is_pic->pic_vector(isrc); if (vector == 0) clkintr_pending = 1; ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/local_apic.c#2 (text+ko) ==== @@ -601,10 +601,11 @@ { struct intsrc *isrc; - if (vector == -1) - panic("Couldn't get vector from ISR!"); - isrc = intr_lookup_source(apic_idt_to_irq(vector)); - intr_execute_handlers(isrc, &frame); + KASSERT(vector >= APIC_IO_INTS && vector != IDT_SYSCALL && + vector <= APIC_IO_INTS + APIC_NUM_IOINTS, + ("Vector %u does not map to an IRQ line", vector)); + isrc = interrupt_sources[ioint_irqs[vector - APIC_IO_INTS]]; + intr_execute_handlers(isrc, vector, &frame); } void @@ -740,17 +741,6 @@ mtx_unlock_spin(&icu_lock); } -/* Map an IDT vector (APIC) to an IRQ (interrupt source). */ -u_int -apic_idt_to_irq(u_int vector) -{ - - KASSERT(vector >= APIC_IO_INTS && vector != IDT_SYSCALL && - vector <= APIC_IO_INTS + APIC_NUM_IOINTS, - ("Vector %u does not map to an IRQ line", vector)); - return (ioint_irqs[vector - APIC_IO_INTS]); -} - #ifdef DDB /* * Dump data about APIC IDT vector mappings. ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/machdep.c#3 (text+ko) ==== @@ -2071,7 +2071,7 @@ * This may be done better later if it gets more high level * components in it. If so just link td->td_proc here. */ - proc_linkup(&proc0, &ksegrp0, &thread0); + proc_linkup(&proc0, &thread0); metadata_missing = 0; if (bootinfo.bi_modulep) { ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/sys_machdep.c#2 (text+ko) ==== @@ -233,9 +233,6 @@ 0 /* granularity */ }; - if (td->td_proc->p_flag & P_SA) - return (EINVAL); /* XXXKSE */ -/* XXXKSE All the code below only works in 1:1 needs changing */ ext = (struct pcb_ext *)kmem_alloc(kernel_map, ctob(IOPAGES+1)); if (ext == 0) return (ENOMEM); ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/trap.c#3 (text+ko) ==== @@ -348,9 +348,6 @@ break; case T_PAGEFLT: /* page fault */ - if (td->td_pflags & TDP_SA) - thread_user_enter(td); - i = trap_pfault(&frame, TRUE, eva); #if defined(I586_CPU) && !defined(NO_F00F_HACK) if (i == -2) { @@ -937,8 +934,6 @@ td->td_frame = &frame; if (td->td_ucred != p->p_ucred) cred_update_thread(td); - if (p->p_flag & P_SA) - thread_user_enter(td); params = (caddr_t)frame.tf_esp + sizeof(int); code = frame.tf_eax; orig_tf_eflags = frame.tf_eflags; ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/i386/vm_machdep.c#3 (text+ko) ==== @@ -370,8 +370,7 @@ * Initialize machine state (pcb and trap frame) for a new thread about to * upcall. Put enough state in the new thread's PCB to get it to go back * userret(), where we can intercept it again to set the return (upcall) - * Address and stack, along with those from upcals that are from other sources - * such as those generated in thread_userret() itself. + * Address and stack, along with those from upcals that are from other sources. */ void cpu_set_upcall(struct thread *td, struct thread *td0) @@ -439,9 +438,8 @@ } /* - * Set that machine state for performing an upcall that has to - * be done in thread_userret() so that those upcalls generated - * in thread_userret() itself can be done as well. + * Modify the machine state created by cpu_set_upcall() to arrange + * for the new thread to make a specific call as its first act. */ void cpu_set_upcall_kse(struct thread *td, void (*entry)(void *), void *arg, ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/include/apicvar.h#2 (text+ko) ==== @@ -176,7 +176,6 @@ u_int apic_alloc_vector(u_int irq); void apic_enable_vector(u_int vector); void apic_free_vector(u_int vector, u_int irq); -u_int apic_idt_to_irq(u_int vector); void apic_register_enumerator(struct apic_enumerator *enumerator); void *ioapic_create(uintptr_t addr, int32_t id, int intbase); int ioapic_disable_pin(void *cookie, u_int pin); ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/include/intr_machdep.h#2 (text+ko) ==== @@ -109,6 +109,8 @@ u_int is_enabled:1; }; +extern struct intsrc *interrupt_sources[NUM_IO_INTS]; + struct trapframe; extern struct mtx icu_lock; @@ -128,7 +130,8 @@ void *arg, enum intr_type flags, void **cookiep); int intr_config_intr(int vector, enum intr_trigger trig, enum intr_polarity pol); -void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame); +void intr_execute_handlers(struct intsrc *isrc, u_int vector, + struct trapframe *frame); struct intsrc *intr_lookup_source(int vector); int intr_register_source(struct intsrc *isrc); int intr_remove_handler(void *cookie); ==== //depot/projects/kmacy_sun4v_stable/src/sys/i386/isa/atpic.c#2 (text+ko) ==== @@ -580,7 +580,7 @@ if ((isr & IRQ_MASK(7)) == 0) return; } - intr_execute_handlers(isrc, &frame); + intr_execute_handlers(isrc, vector, &frame); } #ifdef DEV_ISA ==== //depot/projects/kmacy_sun4v_stable/src/sys/ia64/ia64/machdep.c#3 (text+ko) ==== @@ -775,7 +775,7 @@ msgbufp = (struct msgbuf *)pmap_steal_memory(MSGBUF_SIZE); msgbufinit(msgbufp, MSGBUF_SIZE); - proc_linkup(&proc0, &ksegrp0, &thread0); + proc_linkup(&proc0, &thread0); /* * Init mapping for kernel stack for proc 0 */ ==== //depot/projects/kmacy_sun4v_stable/src/sys/ia64/ia64/trap.c#3 (text+ko) ==== @@ -975,8 +975,6 @@ td->td_pticks = 0; if (td->td_ucred != p->p_ucred) cred_update_thread(td); - if (p->p_flag & P_SA) - thread_user_enter(td); if (p->p_sysent->sv_prepsyscall) { /* (*p->p_sysent->sv_prepsyscall)(tf, args, &code, ¶ms); */ ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/init_main.c#2 (text+ko) ==== @@ -95,7 +95,6 @@ static struct pgrp pgrp0; struct proc proc0; struct thread thread0 __aligned(8); -struct ksegrp ksegrp0; struct vmspace vmspace0; struct proc *initproc; @@ -249,6 +248,30 @@ } #endif +#if defined(VERBOSE_SYSINIT) + if ((*sipp)->subsystem > last) { + verbose = 1; + last = (*sipp)->subsystem; + printf("subsystem %x\n", last); + } + if (verbose) { +#if defined(DDB) + const char *name; + c_db_sym_t sym; + db_expr_t offset; + + sym = db_search_symbol((vm_offset_t)(*sipp)->func, + DB_STGY_PROC, &offset); + db_symbol_values(sym, &name, NULL); + if (name != NULL) + printf(" %s(%p)... ", name, (*sipp)->udata); + else +#endif + printf(" %p(%p)... ", (*sipp)->func, + (*sipp)->udata); + } +#endif + /* Call function */ (*((*sipp)->func))((*sipp)->udata); #if 0 @@ -261,6 +284,11 @@ printf("done.\n"); #endif +#if defined(VERBOSE_SYSINIT) + if (verbose) + printf("done.\n"); +#endif + /* Check off the one we're just done */ (*sipp)->subsystem = SI_SUB_DONE; @@ -369,12 +397,10 @@ struct proc *p; unsigned i; struct thread *td; - struct ksegrp *kg; GIANT_REQUIRED; p = &proc0; td = &thread0; - kg = &ksegrp0; /* * Initialize magic number. @@ -382,14 +408,14 @@ p->p_magic = P_MAGIC; /* - * Initialize thread, process and ksegrp structures. + * Initialize thread and process structures. */ procinit(); /* set up proc zone */ - threadinit(); /* set up thead, upcall and KSEGRP zones */ + threadinit(); /* set up UMA zones */ /* * Initialise scheduler resources. - * Add scheduler specific parts to proc, ksegrp, thread as needed. + * Add scheduler specific parts to proc, thread as needed. */ schedinit(); /* scheduler gets its house in order */ /* @@ -426,8 +452,8 @@ STAILQ_INIT(&p->p_ktr); p->p_nice = NZERO; td->td_state = TDS_RUNNING; - kg->kg_pri_class = PRI_TIMESHARE; - kg->kg_user_pri = PUSER; + td->td_pri_class = PRI_TIMESHARE; + td->td_user_pri = PUSER; td->td_priority = PVM; td->td_base_pri = PUSER; td->td_oncpu = 0; ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/init_sysent.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/init_sysent.c,v 1.211 2006/03/23 08:48:37 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.213 2006/03/23 08:46:41 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp */ #include "opt_compat.h" @@ -408,11 +408,11 @@ { SYF_MPSAFE | AS(eaccess_args), (sy_call_t *)eaccess, AUE_EACCESS }, /* 376 = eaccess */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 377 = afs_syscall */ { AS(nmount_args), (sy_call_t *)nmount, AUE_NMOUNT }, /* 378 = nmount */ - { SYF_MPSAFE | 0, (sy_call_t *)kse_exit, AUE_NULL }, /* 379 = kse_exit */ - { SYF_MPSAFE | AS(kse_wakeup_args), (sy_call_t *)kse_wakeup, AUE_NULL }, /* 380 = kse_wakeup */ - { SYF_MPSAFE | AS(kse_create_args), (sy_call_t *)kse_create, AUE_NULL }, /* 381 = kse_create */ - { SYF_MPSAFE | AS(kse_thr_interrupt_args), (sy_call_t *)kse_thr_interrupt, AUE_NULL }, /* 382 = kse_thr_interrupt */ - { SYF_MPSAFE | AS(kse_release_args), (sy_call_t *)kse_release, AUE_NULL }, /* 383 = kse_release */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 379 = kse_exit */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 380 = kse_wakeup */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 381 = kse_create */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 382 = kse_thr_interrupt */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 383 = kse_release */ { SYF_MPSAFE | AS(__mac_get_proc_args), (sy_call_t *)__mac_get_proc, AUE_NULL }, /* 384 = __mac_get_proc */ { SYF_MPSAFE | AS(__mac_set_proc_args), (sy_call_t *)__mac_set_proc, AUE_NULL }, /* 385 = __mac_set_proc */ { SYF_MPSAFE | AS(__mac_get_fd_args), (sy_call_t *)__mac_get_fd, AUE_NULL }, /* 386 = __mac_get_fd */ @@ -469,7 +469,7 @@ { SYF_MPSAFE | AS(extattr_list_fd_args), (sy_call_t *)extattr_list_fd, AUE_NULL }, /* 437 = extattr_list_fd */ { SYF_MPSAFE | AS(extattr_list_file_args), (sy_call_t *)extattr_list_file, AUE_NULL }, /* 438 = extattr_list_file */ { SYF_MPSAFE | AS(extattr_list_link_args), (sy_call_t *)extattr_list_link, AUE_NULL }, /* 439 = extattr_list_link */ - { SYF_MPSAFE | AS(kse_switchin_args), (sy_call_t *)kse_switchin, AUE_NULL }, /* 440 = kse_switchin */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 440 = kse_switchin */ { SYF_MPSAFE | AS(ksem_timedwait_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 441 = ksem_timedwait */ { SYF_MPSAFE | AS(thr_suspend_args), (sy_call_t *)thr_suspend, AUE_NULL }, /* 442 = thr_suspend */ { SYF_MPSAFE | AS(thr_wake_args), (sy_call_t *)thr_wake, AUE_NULL }, /* 443 = thr_wake */ ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_clock.c#3 (text+ko) ==== @@ -202,21 +202,17 @@ */ mtx_lock_spin_flags(&sched_lock, MTX_QUIET); sched_tick(); - if (p->p_flag & P_SA) { - /* XXXKSE What to do? */ - } else { - pstats = p->p_stats; - if (usermode && - timevalisset(&pstats->p_timer[ITIMER_VIRTUAL].it_value) && - itimerdecr(&pstats->p_timer[ITIMER_VIRTUAL], tick) == 0) { - p->p_sflag |= PS_ALRMPEND; - td->td_flags |= TDF_ASTPENDING; - } - if (timevalisset(&pstats->p_timer[ITIMER_PROF].it_value) && - itimerdecr(&pstats->p_timer[ITIMER_PROF], tick) == 0) { - p->p_sflag |= PS_PROFPEND; - td->td_flags |= TDF_ASTPENDING; - } + pstats = p->p_stats; + if (usermode && + timevalisset(&pstats->p_timer[ITIMER_VIRTUAL].it_value) && + itimerdecr(&pstats->p_timer[ITIMER_VIRTUAL], tick) == 0) { + p->p_sflag |= PS_ALRMPEND; + td->td_flags |= TDF_ASTPENDING; + } + if (timevalisset(&pstats->p_timer[ITIMER_PROF].it_value) && + itimerdecr(&pstats->p_timer[ITIMER_PROF], tick) == 0) { + p->p_sflag |= PS_PROFPEND; + td->td_flags |= TDF_ASTPENDING; } mtx_unlock_spin_flags(&sched_lock, MTX_QUIET); @@ -414,8 +410,6 @@ /* * Charge the time as appropriate. */ - if (p->p_flag & P_SA) - thread_statclock(1); td->td_uticks++; if (p->p_nice > NZERO) cp_time[CP_NICE]++; @@ -439,8 +433,6 @@ td->td_iticks++; cp_time[CP_INTR]++; } else { - if (p->p_flag & P_SA) - thread_statclock(0); td->td_pticks++; td->td_sticks++; if (td != PCPU_GET(idlethread)) ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_fork.c#3 (text+ko) ==== @@ -204,7 +204,6 @@ struct filedesc *fd; struct filedesc_to_leader *fdtol; struct thread *td2; - struct ksegrp *kg2; struct sigacts *newsigacts; int error; @@ -475,7 +474,6 @@ * then copy the section that is copied directly from the parent. */ td2 = FIRST_THREAD_IN_PROC(p2); - kg2 = FIRST_KSEGRP_IN_PROC(p2); /* Allocate and switch to an alternate kstack if specified. */ if (pages != 0) @@ -488,15 +486,11 @@ __rangeof(struct proc, p_startzero, p_endzero)); bzero(&td2->td_startzero, __rangeof(struct thread, td_startzero, td_endzero)); - bzero(&kg2->kg_startzero, - __rangeof(struct ksegrp, kg_startzero, kg_endzero)); bcopy(&p1->p_startcopy, &p2->p_startcopy, __rangeof(struct proc, p_startcopy, p_endcopy)); bcopy(&td->td_startcopy, &td2->td_startcopy, __rangeof(struct thread, td_startcopy, td_endcopy)); - bcopy(&td->td_ksegrp->kg_startcopy, &kg2->kg_startcopy, - __rangeof(struct ksegrp, kg_startcopy, kg_endcopy)); td2->td_sigstk = td->td_sigstk; td2->td_sigmask = td->td_sigmask; ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_idle.c#3 (text+ko) ==== @@ -79,7 +79,7 @@ td = FIRST_THREAD_IN_PROC(p); TD_SET_CAN_RUN(td); atomic_set_int(&td->td_flags, TDF_IDLETD); - sched_class(td->td_ksegrp, PRI_IDLE); + sched_class(td, PRI_IDLE); sched_prio(td, PRI_MAX_IDLE); mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_intr.c#2 (text+ko) ==== @@ -296,7 +296,7 @@ panic("kthread_create() failed with %d", error); td = FIRST_THREAD_IN_PROC(p); /* XXXKSE */ mtx_lock_spin(&sched_lock); - td->td_ksegrp->kg_pri_class = PRI_ITHD; + td->td_pri_class = PRI_ITHD; TD_SET_IWAIT(td); mtx_unlock_spin(&sched_lock); td->td_pflags |= TDP_ITHREAD; @@ -531,7 +531,7 @@ CTR3(KTR_INTR, "%s: schedule pid %d (%s)", __func__, p->p_pid, p->p_comm); TD_CLR_IWAIT(td); - setrunqueue(td, SRQ_INTR); + sched_run_ithread(td); } else { CTR5(KTR_INTR, "%s: pid %d (%s): it_need %d, state %d", __func__, p->p_pid, p->p_comm, it->it_need, td->td_state); ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_mutex.c#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_poll.c#2 (text+ko) ==== @@ -581,7 +581,7 @@ rtp.prio = RTP_PRIO_MAX; /* lowest priority */ rtp.type = RTP_PRIO_IDLE; mtx_lock_spin(&sched_lock); - rtp_to_pri(&rtp, td->td_ksegrp); + rtp_to_pri(&rtp, td); mtx_unlock_spin(&sched_lock); for (;;) { ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_proc.c#3 (text+ko) ==== @@ -142,9 +142,6 @@ { struct proc *p; struct thread *td; -#ifdef INVARIANTS - struct ksegrp *kg; -#endif /* INVARIANTS checks go here */ p = (struct proc *)mem; @@ -152,10 +149,7 @@ #ifdef INVARIANTS KASSERT((p->p_numthreads == 1), ("bad number of threads in exiting process")); - KASSERT((p->p_numksegrps == 1), ("free proc with > 1 ksegrp")); KASSERT((td != NULL), ("proc_dtor: bad thread pointer")); - kg = FIRST_KSEGRP_IN_PROC(p); - KASSERT((kg != NULL), ("proc_dtor: bad kg pointer")); KASSERT(STAILQ_EMPTY(&p->p_ktr), ("proc_dtor: non-empty p_ktr")); #endif @@ -178,17 +172,14 @@ { struct proc *p; struct thread *td; - struct ksegrp *kg; p = (struct proc *)mem; p->p_sched = (struct p_sched *)&p[1]; td = thread_alloc(); - kg = ksegrp_alloc(); bzero(&p->p_mtx, sizeof(struct mtx)); mtx_init(&p->p_mtx, "process lock", NULL, MTX_DEF | MTX_DUPOK); p->p_stats = pstats_alloc(); - proc_linkup(p, kg, td); - sched_newproc(p, kg, td); + proc_linkup(p, td); return (0); } @@ -204,7 +195,6 @@ p = (struct proc *)mem; pstats_free(p->p_stats); - ksegrp_free(FIRST_KSEGRP_IN_PROC(p)); thread_free(FIRST_THREAD_IN_PROC(p)); mtx_destroy(&p->p_mtx); if (p->p_ksi != NULL) @@ -760,7 +750,6 @@ static void fill_kinfo_thread(struct thread *td, struct kinfo_proc *kp) { - struct ksegrp *kg; struct proc *p; p = td->td_proc; @@ -800,14 +789,6 @@ kp->ki_stat = SIDL; } - kg = td->td_ksegrp; - - /* things in the KSE GROUP */ - kp->ki_estcpu = kg->kg_estcpu; - kp->ki_slptime = kg->kg_slptime; - kp->ki_pri.pri_user = kg->kg_user_pri; - kp->ki_pri.pri_class = kg->kg_pri_class; - /* Things in the thread */ kp->ki_wchan = td->td_wchan; kp->ki_pri.pri_level = td->td_priority; @@ -820,6 +801,10 @@ kp->ki_pcb = td->td_pcb; kp->ki_kstack = (void *)td->td_kstack; kp->ki_pctcpu = sched_pctcpu(td); + kp->ki_estcpu = td->td_estcpu; + kp->ki_slptime = td->td_slptime; + kp->ki_pri.pri_class = td->td_pri_class; + kp->ki_pri.pri_user = td->td_user_pri; /* We can't get this anymore but ps etc never used it anyway. */ kp->ki_rqindex = 0; ==== //depot/projects/kmacy_sun4v_stable/src/sys/kern/kern_resource.c#2 (text+ko) ==== @@ -292,7 +292,7 @@ { struct proc *curp; struct proc *p; - struct ksegrp *kg; + struct thread *tdp; struct rtprio rtp; int cierror, error; @@ -328,14 +328,14 @@ * as leaving it zero. */ if (uap->pid == 0) { - pri_to_rtp(td->td_ksegrp, &rtp); + pri_to_rtp(td, &rtp); } else { struct rtprio rtp2; rtp.type = RTP_PRIO_IDLE; rtp.prio = RTP_PRIO_MAX; - FOREACH_KSEGRP_IN_PROC(p, kg) { - pri_to_rtp(kg, &rtp2); + FOREACH_THREAD_IN_PROC(p, tdp) { + pri_to_rtp(tdp, &rtp2); if (rtp2.type < rtp.type || (rtp2.type == rtp.type && rtp2.prio < rtp.prio)) { @@ -378,18 +378,17 @@ /* * If we are setting our own priority, set just our - * KSEGRP but if we are doing another process, - * do all the groups on that process. If we + * thread but if we are doing another process, + * do all the threads on that process. If we * specify our own pid we do the latter. */ mtx_lock_spin(&sched_lock); if (uap->pid == 0) { - error = rtp_to_pri(&rtp, td->td_ksegrp); + error = rtp_to_pri(&rtp, td); } else { - FOREACH_KSEGRP_IN_PROC(p, kg) { - if ((error = rtp_to_pri(&rtp, kg)) != 0) { + FOREACH_THREAD_IN_PROC(p, td) { + if ((error = rtp_to_pri(&rtp, td)) != 0) break; - } } } mtx_unlock_spin(&sched_lock); @@ -403,7 +402,7 @@ } int -rtp_to_pri(struct rtprio *rtp, struct ksegrp *kg) +rtp_to_pri(struct rtprio *rtp, struct thread *td) { mtx_assert(&sched_lock, MA_OWNED); @@ -411,43 +410,42 @@ return (EINVAL); switch (RTP_PRIO_BASE(rtp->type)) { case RTP_PRIO_REALTIME: - kg->kg_user_pri = PRI_MIN_REALTIME + rtp->prio; + td->td_user_pri = PRI_MIN_REALTIME + rtp->prio; break; case RTP_PRIO_NORMAL: - kg->kg_user_pri = PRI_MIN_TIMESHARE + rtp->prio; + td->td_user_pri = PRI_MIN_TIMESHARE + rtp->prio; break; case RTP_PRIO_IDLE: - kg->kg_user_pri = PRI_MIN_IDLE + rtp->prio; + td->td_user_pri = PRI_MIN_IDLE + rtp->prio; break; default: return (EINVAL); } - sched_class(kg, rtp->type); - if (curthread->td_ksegrp == kg) { - sched_prio(curthread, kg->kg_user_pri); /* XXX dubious */ - } + sched_class(td, rtp->type); /* XXX fix */ + if (curthread == td) + sched_prio(curthread, td->td_user_pri); /* XXX dubious */ return (0); } void -pri_to_rtp(struct ksegrp *kg, struct rtprio *rtp) +pri_to_rtp(struct thread *td, struct rtprio *rtp) { mtx_assert(&sched_lock, MA_OWNED); - switch (PRI_BASE(kg->kg_pri_class)) { + switch (PRI_BASE(td->td_pri_class)) { case PRI_REALTIME: - rtp->prio = kg->kg_user_pri - PRI_MIN_REALTIME; + rtp->prio = td->td_user_pri - PRI_MIN_REALTIME; break; case PRI_TIMESHARE: - rtp->prio = kg->kg_user_pri - PRI_MIN_TIMESHARE; + rtp->prio = td->td_user_pri - PRI_MIN_TIMESHARE; break; case PRI_IDLE: - rtp->prio = kg->kg_user_pri - PRI_MIN_IDLE; + rtp->prio = td->td_user_pri - PRI_MIN_IDLE; break; default: break; } - rtp->type = kg->kg_pri_class; + rtp->type = td->td_pri_class; } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 3 05:40:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6461016A412; Mon, 3 Jul 2006 05:40:01 +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 D127516A40F for ; Mon, 3 Jul 2006 05:40:00 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6AA5143D48 for ; Mon, 3 Jul 2006 05:40:00 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k635e0Cs036341 for ; Mon, 3 Jul 2006 05:40:00 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k635df73036213 for perforce@freebsd.org; Mon, 3 Jul 2006 05:39:41 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 05:39:41 GMT Message-Id: <200607030539.k635df73036213@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100460 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 05:40:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=100460 Change 100460 by jb@jb_freebsd2 on 2006/07/03 05:39:01 IFC This breaks the DTrace linker functions which I need to update to reflect jhb's changes (which I knew were coming). Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/committers-guide/article.sgml#5 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#13 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#11 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.develalumni.sgml#8 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/portbuild/article.sgml#2 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/arch-handbook/boot/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/developers-handbook/kerneldebug/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/eresources/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/install/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/kernelconfig/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/mirrors/chapter.sgml#6 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/network-servers/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/ports/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/security/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#10 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/authors.ent#8 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/mailing-lists.ent#2 integrate .. //depot/projects/dtrace/doc/es_ES.ISO8859-1/articles/Makefile#2 integrate .. //depot/projects/dtrace/doc/es_ES.ISO8859-1/articles/casestudy-argentina.com/Makefile#1 branch .. //depot/projects/dtrace/doc/es_ES.ISO8859-1/articles/casestudy-argentina.com/article.sgml#1 branch .. //depot/projects/dtrace/doc/es_ES.ISO8859-1/articles/p4-primer/Makefile#1 branch .. //depot/projects/dtrace/doc/es_ES.ISO8859-1/articles/p4-primer/article.sgml#1 branch .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/articles/committers-guide/article.sgml#3 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/articles/portbuild/article.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/advanced-networking/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/basics/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/bibliography/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/boot/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/config/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/cutting-edge/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/eresources/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/firewalls/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/install/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/kernelconfig/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/l10n/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/linuxemu/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/mirrors/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/multimedia/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/network-servers/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/printing/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/security/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/serialcomms/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/users/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/vinum/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/books/handbook/x11/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/ru_RU.KOI8-R/share/sgml/mailing-lists.ent#2 integrate .. //depot/projects/dtrace/doc/share/mk/doc.docbook.mk#3 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/aaron.key#2 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/arved.key#2 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/bsam.key#1 branch .. //depot/projects/dtrace/doc/share/pgpkeys/marck.key#2 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys-developers.sgml#7 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys.ent#7 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/rafan.key#1 branch .. //depot/projects/dtrace/doc/share/pgpkeys/remko.key#2 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/shaun.key#1 branch .. //depot/projects/dtrace/doc/share/sgml/man-refs.ent#9 integrate .. //depot/projects/dtrace/doc/share/sgml/mirrors.xml#3 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/install/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/Makefile#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/hubs/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/hubs/article.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/mailing-list-faq/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/mailing-list-faq/article.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/pr-guidelines/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/pr-guidelines/article.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/problem-reports/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/problem-reports/article.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/Makefile#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/book.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/chapters.ent#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/dma/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/introduction/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/ipv6/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/kerneldebug/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/kerneldebug/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/l10n/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/policies/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/policies/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/secure/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/sockets/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/testing/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/tools/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/developers-handbook/x86/chapter.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/faq/book.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/fdp-primer/see-also/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/fdp-primer/translations/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/Makefile#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/audit/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/basics/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/book.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/chapters.ent#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/desktop/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/disks/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/firewalls/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/install/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/introduction/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/kernelconfig/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/l10n/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/mirrors/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/multimedia/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/ports/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/porters-handbook/book.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/compose.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/fonts.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/stepbystep.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/freebsd.dsl#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/share/mk/doc.local.mk#2 integrate .. //depot/projects/dtrace/ports/.cvsignore#1 branch .. //depot/projects/dtrace/ports/CHANGES#1 branch .. //depot/projects/dtrace/ports/COPYRIGHT#1 branch .. //depot/projects/dtrace/ports/KNOBS#1 branch .. //depot/projects/dtrace/ports/LEGAL#1 branch .. //depot/projects/dtrace/ports/MOVED#1 branch .. //depot/projects/dtrace/ports/Makefile#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.apache.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.autotools.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.database.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.emacs.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.gcc.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.gnome.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.gnustep.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.gstreamer.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.java.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.kde.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.linux-rpm.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.local.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.mail.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.openssl.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.php.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.port.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.port.post.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.port.pre.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.port.subdir.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.python.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.ruby.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.sdl.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.sites.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.tcl.mk#1 branch .. //depot/projects/dtrace/ports/README#1 branch .. //depot/projects/dtrace/ports/Templates/README.category#1 branch .. //depot/projects/dtrace/ports/Templates/README.port#1 branch .. //depot/projects/dtrace/ports/Templates/README.top#1 branch .. //depot/projects/dtrace/ports/Templates/config.guess#1 branch .. //depot/projects/dtrace/ports/Templates/config.sub#1 branch .. //depot/projects/dtrace/ports/Tools/make_index#1 branch .. //depot/projects/dtrace/ports/Tools/make_readmes#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/4/bindist/README#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/4/bindist/delete#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/4/bindist/dirlist#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/4/bindist/files/usr/bin/uname#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/4/mkbindist.conf#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/5/bindist/files/usr/bin/uname#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/5/mkbindist.conf#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/README#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/mlist#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/portbuild.conf#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/allgohans#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/bothlogs#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/buildenv#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/buildfailure#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/buildscript#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/buildsuccess#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/checkmachines#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/checkmachines.sh#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/chopindex#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/claim-chroot#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/clean-chroot#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/cleanup-chroots#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/comparelogs#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/cpdistfiles#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/cppackages#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/docppackages#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dodistfiles#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dologs#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackages#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackages.wrapper#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackages2#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackagestats#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dosetupnode#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/flushsquid#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/getmachine#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/keeprestr#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/makeduds#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/makeindex#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/makeparallel#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/makerestr#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/makeworld#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/mkbindist#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/pdispatch#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/pnohang.c#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/pollmachine#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/portbuild#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/processfail#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/processlogs#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/processlogs2#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/processonelog#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/prunebad#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/prunefailure#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/prunepkgs#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/ptimeout.c#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/releasemachine#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/reportload#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/reportload.sh#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/setupnode#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/stats#1 branch .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/updatefailure#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/MOVEDlint.awk#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/README#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/README.patchtool#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/README.portsearch#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/addport#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/bad-pkgdescrs.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/bump_revision.pl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/check-latest-link#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/checkcats.py#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/checknewver.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/checksize.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/checksum.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/chkdepschain.py#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/chkmodules.pl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/chkorigin.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/chkversion.pl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/close-pr#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/consistency-check#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/distclean.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/distinfochecker#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/domakedescribe#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/doportlint#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/getpr#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/gnomedepends.py#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/mkptools/mkpbuild#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/mkptools/mkpclean#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/mkptools/mkpextr#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/mkptools/mkpinstall#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/mkptools/mkpmerge#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/mkptools/mkppackage#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/mkptools/mkpskel#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/modulesupdate#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/parse-kdump.tcl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/patchtool.py#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/pkg-stash/pkg-list.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/pkg-stash/pkg-stash.pl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/plist#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/portsearch#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/portsvar.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/prdone#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/prpatch#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/release/Makefile#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/release/README#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/release/checkdeps.pl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/release/config#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/release/doit.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/release/oneshot.pl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/release/scrubindex.pl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/release/setup.sh#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/rmport#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/security-check.awk#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/splitpatch.pl#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/sunshar.rb#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/sunshar/Makefile#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/sunshar/sunshar.1#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/tindex#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/update-patches#1 branch .. //depot/projects/dtrace/ports/UPDATING#1 branch .. //depot/projects/dtrace/src/MAINTAINERS#7 integrate .. //depot/projects/dtrace/src/Makefile#6 integrate .. //depot/projects/dtrace/src/UPDATING#3 integrate .. //depot/projects/dtrace/src/bin/setfacl/setfacl.1#2 integrate .. //depot/projects/dtrace/src/bin/setfacl/setfacl.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/cd.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/eval.c#3 integrate .. //depot/projects/dtrace/src/bin/sh/sh.1#2 integrate .. //depot/projects/dtrace/src/bin/sh/var.c#3 integrate .. //depot/projects/dtrace/src/bin/sh/var.h#2 integrate .. //depot/projects/dtrace/src/contrib/file/ChangeLog#2 integrate .. //depot/projects/dtrace/src/contrib/file/FREEBSD-upgrade#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/adventure#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/amigaos#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/animation#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/apple#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/archive#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/audio#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/basis#1 branch .. //depot/projects/dtrace/src/contrib/file/Magdir/bflt#1 branch .. //depot/projects/dtrace/src/contrib/file/Magdir/bout#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/btsnoop#1 branch .. //depot/projects/dtrace/src/contrib/file/Magdir/c64#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/cad#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/commands#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/compress#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/console#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/cracklib#1 branch .. //depot/projects/dtrace/src/contrib/file/Magdir/ctags#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/database#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/diff#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/digital#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/dump#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/elf#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/filesystems#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/flash#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/fsav#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/gnu#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/iff#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/images#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/java#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/linux#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/lisp#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/mach#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/macintosh#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/mail.news#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/maple#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/misctools#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/msdos#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/mup#1 branch .. //depot/projects/dtrace/src/contrib/file/Magdir/ncr#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/perl#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/printer#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/psion#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/python#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/riff#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/scientific#1 branch .. //depot/projects/dtrace/src/contrib/file/Magdir/sgi#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/sharc#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/sql#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/varied.out#2 integrate .. //depot/projects/dtrace/src/contrib/file/Magdir/wordprocessors#2 integrate .. //depot/projects/dtrace/src/contrib/file/Makefile.am#2 integrate .. //depot/projects/dtrace/src/contrib/file/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/file/aclocal.m4#2 integrate .. //depot/projects/dtrace/src/contrib/file/apprentice.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/ascmagic.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/compress.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/config.h.in#2 integrate .. //depot/projects/dtrace/src/contrib/file/configure#2 integrate .. //depot/projects/dtrace/src/contrib/file/configure.in#2 integrate .. //depot/projects/dtrace/src/contrib/file/file.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/file.h#2 integrate .. //depot/projects/dtrace/src/contrib/file/file.man#2 integrate .. //depot/projects/dtrace/src/contrib/file/fsmagic.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/funcs.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/libmagic.man#2 integrate .. //depot/projects/dtrace/src/contrib/file/magic.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/magic.man#2 integrate .. //depot/projects/dtrace/src/contrib/file/magic.mime#2 integrate .. //depot/projects/dtrace/src/contrib/file/magic2mime#2 integrate .. //depot/projects/dtrace/src/contrib/file/patchlevel.h#2 integrate .. //depot/projects/dtrace/src/contrib/file/print.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/readelf.c#2 integrate .. //depot/projects/dtrace/src/contrib/file/readelf.h#2 integrate .. //depot/projects/dtrace/src/contrib/file/softmagic.c#2 integrate .. //depot/projects/dtrace/src/contrib/openbsm/FREEBSD-upgrade#2 integrate .. //depot/projects/dtrace/src/contrib/openbsm/HISTORY#3 integrate .. //depot/projects/dtrace/src/contrib/openbsm/VERSION#3 integrate .. //depot/projects/dtrace/src/contrib/openbsm/bsm/audit_kevents.h#2 integrate .. //depot/projects/dtrace/src/contrib/openbsm/bsm/audit_record.h#3 integrate .. //depot/projects/dtrace/src/contrib/openbsm/bsm/libbsm.h#3 integrate .. //depot/projects/dtrace/src/contrib/openbsm/config/ltmain.sh#2 integrate .. //depot/projects/dtrace/src/contrib/openbsm/configure#3 integrate .. //depot/projects/dtrace/src/contrib/openbsm/configure.ac#3 integrate .. //depot/projects/dtrace/src/contrib/openbsm/etc/audit_event#2 integrate .. //depot/projects/dtrace/src/contrib/openbsm/libbsm/bsm_notify.c#2 integrate .. //depot/projects/dtrace/src/contrib/openbsm/libbsm/bsm_token.c#3 integrate .. //depot/projects/dtrace/src/contrib/openbsm/man/audit.log.5#2 integrate .. //depot/projects/dtrace/src/contrib/openbsm/test/bsm/generate.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/FREEBSD-upgrade#3 integrate .. //depot/projects/dtrace/src/contrib/sendmail/PGPKEYS#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/RELEASE_NOTES#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/README#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/cf/submit.cf#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/cf/submit.mc#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/feature/dnsbl.m4#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/feature/enhdnsbl.m4#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/m4/proto.m4#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/cf/m4/version.m4#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/include/libmilter/mfapi.h#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/libmilter/docs/xxfi_header.html#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/libmilter/engine.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/libsm/t-memstat.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/README#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/bf.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/collect.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/conf.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/daemon.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/deliver.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/domain.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/envelope.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/headers.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/helpfile#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/main.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/map.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/mci.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/mime.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/parseaddr.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/queue.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/savemail.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/sendmail.h#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/sfsasl.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/sfsasl.h#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/srvrsmtp.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/tls.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/util.c#2 integrate .. //depot/projects/dtrace/src/contrib/sendmail/src/version.c#2 integrate .. //depot/projects/dtrace/src/contrib/tcpdump/tcpdump.1#2 integrate .. //depot/projects/dtrace/src/contrib/traceroute/traceroute.8#4 integrate .. //depot/projects/dtrace/src/contrib/traceroute/traceroute.c#3 integrate .. //depot/projects/dtrace/src/crypto/openssh/config.h#2 integrate .. //depot/projects/dtrace/src/crypto/openssh/loginrec.c#3 integrate .. //depot/projects/dtrace/src/etc/periodic/daily/470.status-named#2 integrate .. //depot/projects/dtrace/src/etc/rc.d/abi#2 integrate .. //depot/projects/dtrace/src/etc/rc.d/ldconfig#2 integrate .. //depot/projects/dtrace/src/etc/rc.subr#6 integrate .. //depot/projects/dtrace/src/etc/sendmail/freebsd.mc#3 integrate .. //depot/projects/dtrace/src/etc/sendmail/freebsd.submit.mc#3 integrate .. //depot/projects/dtrace/src/games/fortune/datfiles/fortunes#7 integrate .. //depot/projects/dtrace/src/include/malloc_np.h#2 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/malloc.c#4 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/tsearch.3#2 integrate .. //depot/projects/dtrace/src/lib/libc/string/strlcpy.c#2 integrate .. //depot/projects/dtrace/src/lib/libc/sys/mincore.2#2 integrate .. //depot/projects/dtrace/src/lib/libc/sys/stat.2#2 integrate .. //depot/projects/dtrace/src/lib/libfetch/ftp.c#2 integrate .. //depot/projects/dtrace/src/lib/libmagic/Makefile#2 integrate .. //depot/projects/dtrace/src/lib/libmagic/config.h#2 integrate .. //depot/projects/dtrace/src/lib/libpthread/thread/thr_private.h#2 integrate .. //depot/projects/dtrace/src/lib/libpthread/thread/thr_sig.c#2 integrate .. //depot/projects/dtrace/src/lib/libpthread/thread/thr_sigaction.c#2 integrate .. //depot/projects/dtrace/src/lib/libutil/Makefile#3 integrate .. //depot/projects/dtrace/src/lib/libutil/login_class.3#2 integrate .. //depot/projects/dtrace/src/lib/libutil/pidfile.c#3 integrate .. //depot/projects/dtrace/src/release/Makefile#4 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#5 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#2 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#12 integrate .. //depot/projects/dtrace/src/release/doc/share/misc/dev.archlist.txt#5 integrate .. //depot/projects/dtrace/src/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#4 integrate .. //depot/projects/dtrace/src/sbin/devfs/devfs.c#2 integrate .. //depot/projects/dtrace/src/sbin/fdisk/fdisk.c#2 integrate .. //depot/projects/dtrace/src/sbin/ffsinfo/ffsinfo.8#2 integrate .. //depot/projects/dtrace/src/sbin/ggate/ggatec/ggatec.8#2 integrate .. //depot/projects/dtrace/src/sbin/gpt/add.c#2 integrate .. //depot/projects/dtrace/src/sbin/gpt/gpt.8#2 integrate .. //depot/projects/dtrace/src/sbin/gpt/gpt.c#2 integrate .. //depot/projects/dtrace/src/sbin/gpt/gpt.h#2 integrate .. //depot/projects/dtrace/src/sbin/gpt/label.c#2 integrate .. //depot/projects/dtrace/src/sbin/gpt/remove.c#2 integrate .. //depot/projects/dtrace/src/sbin/gpt/show.c#2 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/Makefile#2 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifconfig.8#2 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifgroup.c#1 branch .. //depot/projects/dtrace/src/sbin/ifconfig/ifieee80211.c#2 integrate .. //depot/projects/dtrace/src/sbin/ipfw/ipfw.8#4 integrate .. //depot/projects/dtrace/src/sbin/ipfw/ipfw2.c#5 integrate .. //depot/projects/dtrace/src/sbin/mount/mount.c#4 integrate .. //depot/projects/dtrace/src/share/man/man4/Makefile#9 integrate .. //depot/projects/dtrace/src/share/man/man4/aac.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/acpi.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/adv.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/adw.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/altq.4#5 integrate .. //depot/projects/dtrace/src/share/man/man4/amd.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/amr.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/bge.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/bt.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/cpufreq.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/dpt.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/enc.4#1 branch .. //depot/projects/dtrace/src/share/man/man4/esp.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/fast_ipsec.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/geom_fox.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/if_bridge.4#4 integrate .. //depot/projects/dtrace/src/share/man/man4/iir.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/ips.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/man4.alpha/Makefile#2 delete .. //depot/projects/dtrace/src/share/man/man4/man4.alpha/linux.4#2 delete .. //depot/projects/dtrace/src/share/man/man4/man4.alpha/osf1.4#2 delete .. //depot/projects/dtrace/src/share/man/man4/man4.i386/linux.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/mxge.4#1 branch .. //depot/projects/dtrace/src/share/man/man4/myri10ge.4#2 delete .. //depot/projects/dtrace/src/share/man/man4/ncr.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/ncv.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/nfe.4#1 branch .. //depot/projects/dtrace/src/share/man/man4/ng_netflow.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/ng_tag.4#1 branch .. //depot/projects/dtrace/src/share/man/man4/nsp.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/re.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/sched_4bsd.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/sched_core.4#1 branch .. //depot/projects/dtrace/src/share/man/man4/sched_ule.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/snd_csa.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/snd_envy24.4#1 branch .. //depot/projects/dtrace/src/share/man/man4/snd_gusc.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/snd_ich.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/snd_sbc.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/stg.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/sym.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/umodem.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/uplcom.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/uscanner.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/uvisor.4#2 integrate .. //depot/projects/dtrace/src/share/man/man4/vinum.4#2 integrate .. //depot/projects/dtrace/src/share/man/man7/build.7#4 integrate .. //depot/projects/dtrace/src/share/man/man8/rc.subr.8#3 integrate .. //depot/projects/dtrace/src/share/man/man9/lock.9#2 integrate .. //depot/projects/dtrace/src/share/mk/bsd.README#2 integrate .. //depot/projects/dtrace/src/share/monetdef/pt_PT.ISO8859-1.src#2 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/fpu.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/pmap.c#8 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/trap.c#2 integrate .. //depot/projects/dtrace/src/sys/amd64/conf/DEFAULTS#3 integrate .. //depot/projects/dtrace/src/sys/amd64/conf/GENERIC#8 integrate .. //depot/projects/dtrace/src/sys/amd64/conf/NOTES#4 integrate .. //depot/projects/dtrace/src/sys/amd64/include/md_var.h#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_syscall.h#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_sysent.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/dtrace/src/sys/arm/arm/elf_trampoline.c#3 integrate .. //depot/projects/dtrace/src/sys/arm/arm/inckern.S#2 integrate .. //depot/projects/dtrace/src/sys/arm/arm/locore.S#2 integrate .. //depot/projects/dtrace/src/sys/arm/arm/pmap.c#7 integrate .. //depot/projects/dtrace/src/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/dtrace/src/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/dtrace/src/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/dtrace/src/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/dtrace/src/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/dtrace/src/sys/arm/at91/files.at91#2 integrate .. //depot/projects/dtrace/src/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/dtrace/src/sys/arm/at91/kb920x_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/arm/at91/uart_dev_at91usart.c#3 integrate .. //depot/projects/dtrace/src/sys/arm/conf/IQ31244#3 integrate .. //depot/projects/dtrace/src/sys/arm/conf/KB920X#4 integrate .. //depot/projects/dtrace/src/sys/arm/conf/SIMICS#3 integrate .. //depot/projects/dtrace/src/sys/arm/conf/SKYEYE#4 integrate .. //depot/projects/dtrace/src/sys/arm/sa11x0/uart_cpu_sa1110.c#4 integrate .. //depot/projects/dtrace/src/sys/boot/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/cam/cam_xpt.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/dtrace/src/sys/compat/linprocfs/linprocfs.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_misc.c#3 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_util.h#3 integrate .. //depot/projects/dtrace/src/sys/compat/ndis/kern_ndis.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/ndis/subr_ndis.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/ndis/winx32_wrap.S#2 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_ipc.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_misc.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_proto.h#2 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_syscall.h#2 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_syscallnames.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_sysent.c#2 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/syscalls.master#2 integrate .. //depot/projects/dtrace/src/sys/conf/Makefile.arm#3 integrate .. //depot/projects/dtrace/src/sys/conf/NOTES#9 integrate .. //depot/projects/dtrace/src/sys/conf/files#18 integrate .. //depot/projects/dtrace/src/sys/conf/files.amd64#6 integrate .. //depot/projects/dtrace/src/sys/conf/files.i386#8 integrate .. //depot/projects/dtrace/src/sys/conf/files.ia64#3 integrate .. //depot/projects/dtrace/src/sys/conf/kern.mk#4 integrate .. //depot/projects/dtrace/src/sys/conf/kern.post.mk#4 integrate .. //depot/projects/dtrace/src/sys/conf/kern.pre.mk#4 integrate .. //depot/projects/dtrace/src/sys/conf/kmod.mk#4 integrate .. //depot/projects/dtrace/src/sys/conf/options#11 integrate .. //depot/projects/dtrace/src/sys/contrib/pf/net/if_pfsync.c#2 integrate .. //depot/projects/dtrace/src/sys/ddb/db_sym.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/aac/aac_pci.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/acpica/acpi.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/acpica/acpi_battery.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/acpica/acpivar.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/ath/if_ath.c#7 integrate .. //depot/projects/dtrace/src/sys/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/ath/if_athvar.h#4 integrate .. //depot/projects/dtrace/src/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/bge/if_bge.c#7 integrate .. //depot/projects/dtrace/src/sys/dev/bge/if_bgereg.h#4 integrate .. //depot/projects/dtrace/src/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/dtrace/src/sys/dev/cardbus/cardbus.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/cm/smc90cx6var.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/digi/digi.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/ed/if_ed.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/ed/if_ed_novell.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/ed/if_edvar.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/ipw/if_ipw.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/ipw/if_ipwvar.h#2 integrate .. //depot/projects/dtrace/src/sys/dev/mfi/mfi.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/mfi/mfi_disk.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mfi/mfireg.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mfi/mfivar.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/brgphy.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/mii/ciphy.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mii/e1000phy.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/nsgphy.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/rgephy.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/tdkphy.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt.c#7 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt.h#9 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_cam.c#9 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_pci.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/dtrace/src/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/dtrace/src/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/dtrace/src/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/dtrace/src/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/dtrace/src/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/dtrace/src/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/dtrace/src/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/dtrace/src/sys/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/dtrace/src/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/dtrace/src/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/dtrace/src/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/dtrace/src/sys/dev/nfe/if_nfe.c#1 branch .. //depot/projects/dtrace/src/sys/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/dtrace/src/sys/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/dtrace/src/sys/dev/puc/puc.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/puc/puc_pccard.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/puc/puc_pci.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/puc/pucdata.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/re/if_re.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/sio/sio.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/sound/driver.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/sound/midi/midi.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/sound/midi/sequencer.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/dtrace/src/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/dtrace/src/sys/dev/sound/pci/cmi.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/dtrace/src/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/dtrace/src/sys/dev/sound/pci/es137x.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pci/ich.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pci/via8233.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pcm/feeder_rate.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pcm/sound.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/usb/if_ural.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/usb/uhid.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/usb/umodem.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/usb/uplcom.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/usb/usbdevs#4 integrate .. //depot/projects/dtrace/src/sys/dev/usb/uscanner.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/usb/uvisor.c#2 integrate .. //depot/projects/dtrace/src/sys/dev/wl/if_wl.c#2 integrate .. //depot/projects/dtrace/src/sys/fs/pseudofs/pseudofs_vnops.c#2 integrate .. //depot/projects/dtrace/src/sys/fs/udf/udf_vfsops.c#3 integrate .. //depot/projects/dtrace/src/sys/geom/geom_dev.c#2 integrate .. //depot/projects/dtrace/src/sys/geom/geom_gpt.c#4 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_frw.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_iget.c#3 delete .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#4 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_super.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_attr.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_bit.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dfrag.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_trace.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_inode.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_iomap.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_macros.c#2 delete .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_macros.h#2 delete .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_vfsops.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfs_vnodeops.c#3 integrate .. //depot/projects/dtrace/src/sys/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/dtrace/src/sys/i386/acpica/acpi_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/acpica/acpi_wakecode.S#3 integrate .. //depot/projects/dtrace/src/sys/i386/acpica/acpi_wakeup.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/conf/DEFAULTS#3 integrate .. //depot/projects/dtrace/src/sys/i386/conf/GENERIC#9 integrate .. //depot/projects/dtrace/src/sys/i386/conf/NOTES#6 integrate .. //depot/projects/dtrace/src/sys/i386/conf/XBOX#2 integrate .. //depot/projects/dtrace/src/sys/i386/i386/db_trace.c#2 integrate .. //depot/projects/dtrace/src/sys/i386/i386/identcpu.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/i386/pmap.c#6 integrate .. //depot/projects/dtrace/src/sys/i386/i386/trap.c#7 integrate .. //depot/projects/dtrace/src/sys/i386/include/specialreg.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_dummy.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_proto.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_syscall.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_sysent.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/syscalls.master#3 integrate .. //depot/projects/dtrace/src/sys/ia64/conf/DEFAULTS#3 integrate .. //depot/projects/dtrace/src/sys/ia64/conf/GENERIC#3 integrate .. //depot/projects/dtrace/src/sys/ia64/conf/SKI#2 integrate .. //depot/projects/dtrace/src/sys/ia64/disasm/disasm.h#2 integrate .. //depot/projects/dtrace/src/sys/ia64/disasm/disasm_decode.c#2 integrate .. //depot/projects/dtrace/src/sys/ia64/disasm/disasm_extract.c#2 integrate .. //depot/projects/dtrace/src/sys/ia64/disasm/disasm_format.c#2 integrate .. //depot/projects/dtrace/src/sys/ia64/disasm/disasm_int.h#2 integrate .. //depot/projects/dtrace/src/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/dtrace/src/sys/ia64/ia64/machdep.c#2 integrate .. //depot/projects/dtrace/src/sys/ia64/ia64/pmap.c#4 integrate .. //depot/projects/dtrace/src/sys/ia64/ia64/trap.c#3 integrate .. //depot/projects/dtrace/src/sys/ia64/include/md_var.h#2 integrate .. //depot/projects/dtrace/src/sys/isa/isa_common.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/kern_clock.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/kern_descrip.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/kern_event.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/kern_fork.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/kern_ktrace.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/kern_linker.c#11 integrate .. //depot/projects/dtrace/src/sys/kern/kern_mbuf.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/kern_module.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/kern_switch.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/kern_synch.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/kern_sysctl.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/kern_tc.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/kern_thread.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/link_elf.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/link_elf_obj.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/sched_4bsd.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/sched_core.c#1 branch .. //depot/projects/dtrace/src/sys/kern/sched_ule.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/subr_bus.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/subr_firmware.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/subr_kdb.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/subr_rman.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/sys_pipe.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.master#2 integrate .. //depot/projects/dtrace/src/sys/kern/sysv_msg.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/sysv_sem.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/sysv_shm.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_mbuf.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_socket.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_socket2.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_syscalls.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_usrreq.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_cache.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_init.c#2 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_mount.c#6 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_subr.c#6 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_vnops.c#4 integrate .. //depot/projects/dtrace/src/sys/modules/Makefile#10 integrate .. //depot/projects/dtrace/src/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/mxge/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/mxge/mxge/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/mxge/mxge_eth_z8e/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/mxge/mxge_ethp_z8e/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/myri10ge/Makefile#2 delete .. //depot/projects/dtrace/src/sys/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/dtrace/src/sys/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/dtrace/src/sys/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/dtrace/src/sys/modules/netgraph/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/nfe/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ppc/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/sound/driver/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/streams/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/svr4/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/xfs/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/net/bpf.c#5 integrate .. //depot/projects/dtrace/src/sys/net/bpf.h#4 integrate .. //depot/projects/dtrace/src/sys/net/if.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if.h#3 integrate .. //depot/projects/dtrace/src/sys/net/if_atmsubr.c#2 integrate .. //depot/projects/dtrace/src/sys/net/if_bridge.c#6 integrate .. //depot/projects/dtrace/src/sys/net/if_clone.c#2 integrate .. //depot/projects/dtrace/src/sys/net/if_enc.c#1 branch .. //depot/projects/dtrace/src/sys/net/if_gif.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_stf.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_tun.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_types.h#2 integrate .. //depot/projects/dtrace/src/sys/net/if_var.h#2 integrate .. //depot/projects/dtrace/src/sys/net/if_vlan.c#2 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_freebsd.c#2 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_socket.c#3 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_tag.c#1 branch .. //depot/projects/dtrace/src/sys/netgraph/ng_tag.h#1 branch .. //depot/projects/dtrace/src/sys/netinet/if_ether.c#2 integrate .. //depot/projects/dtrace/src/sys/netinet/in_pcb.c#5 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_divert.c#3 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_fw2.c#5 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_output.c#4 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_input.c#4 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_seq.h#2 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_syncache.c#2 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_usrreq.c#4 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_var.h#2 integrate .. //depot/projects/dtrace/src/sys/netinet6/in6.c#3 integrate .. //depot/projects/dtrace/src/sys/netinet6/in6_cksum.c#2 integrate .. //depot/projects/dtrace/src/sys/netinet6/in6_pcb.c#6 integrate .. //depot/projects/dtrace/src/sys/netinet6/in6_var.h#2 integrate .. //depot/projects/dtrace/src/sys/netinet6/ipsec.c#2 integrate .. //depot/projects/dtrace/src/sys/netinet6/raw_ip6.c#3 integrate .. //depot/projects/dtrace/src/sys/netipsec/ipsec.h#3 integrate .. //depot/projects/dtrace/src/sys/netipsec/ipsec_input.c#3 integrate .. //depot/projects/dtrace/src/sys/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/dtrace/src/sys/netipsec/ipsec_output.c#2 integrate .. //depot/projects/dtrace/src/sys/netipsec/xform_ipip.c#2 integrate .. //depot/projects/dtrace/src/sys/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_diskless.c#2 integrate .. //depot/projects/dtrace/src/sys/nfsserver/nfs_srvcache.c#2 integrate .. //depot/projects/dtrace/src/sys/nfsserver/nfsrvcache.h#3 integrate .. //depot/projects/dtrace/src/sys/pc98/conf/DEFAULTS#3 integrate .. //depot/projects/dtrace/src/sys/pc98/conf/GENERIC#4 integrate .. //depot/projects/dtrace/src/sys/pc98/conf/NOTES#4 integrate .. //depot/projects/dtrace/src/sys/pci/agp_i810.c#3 integrate .. //depot/projects/dtrace/src/sys/pci/if_rlreg.h#3 integrate .. //depot/projects/dtrace/src/sys/posix4/ksched.c#4 integrate .. //depot/projects/dtrace/src/sys/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/dtrace/src/sys/powerpc/conf/GENERIC#2 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/mmu_if.m#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/pmap_dispatch.c#3 integrate .. //depot/projects/dtrace/src/sys/security/audit/audit_bsm_token.c#3 integrate .. //depot/projects/dtrace/src/sys/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/dtrace/src/sys/sparc64/conf/GENERIC#5 integrate .. //depot/projects/dtrace/src/sys/sparc64/include/_bus.h#2 integrate .. //depot/projects/dtrace/src/sys/sparc64/include/bus.h#2 integrate .. //depot/projects/dtrace/src/sys/sparc64/sparc64/pmap.c#4 integrate .. //depot/projects/dtrace/src/sys/sys/firmware.h#2 integrate .. //depot/projects/dtrace/src/sys/sys/gpt.h#2 integrate .. //depot/projects/dtrace/src/sys/sys/linker.h#8 integrate .. //depot/projects/dtrace/src/sys/sys/protosw.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/rman.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/rwlock.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/sched.h#2 integrate .. //depot/projects/dtrace/src/sys/sys/socketvar.h#2 integrate .. //depot/projects/dtrace/src/sys/sys/sockio.h#2 integrate .. //depot/projects/dtrace/src/sys/sys/sx.h#2 integrate .. //depot/projects/dtrace/src/sys/sys/syscallsubr.h#2 integrate .. //depot/projects/dtrace/src/sys/sys/sysctl.h#2 integrate .. //depot/projects/dtrace/src/sys/tools/fw_stub.awk#2 integrate .. //depot/projects/dtrace/src/sys/vm/pmap.h#3 integrate .. //depot/projects/dtrace/src/sys/vm/vm_fault.c#3 integrate .. //depot/projects/dtrace/src/sys/vm/vm_map.c#4 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 3 05:43:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 474BE16A415; Mon, 3 Jul 2006 05:43:07 +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 BB71916A407 for ; Mon, 3 Jul 2006 05:43:06 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6978E43D46 for ; Mon, 3 Jul 2006 05:43:06 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k635h6NT038880 for ; Mon, 3 Jul 2006 05:43:06 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k635h5tJ038849 for perforce@freebsd.org; Mon, 3 Jul 2006 05:43:05 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 3 Jul 2006 05:43:05 GMT Message-Id: <200607030543.k635h5tJ038849@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100461 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 05:43:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100461 Change 100461 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/03 05:42:13 IFC@100453 Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/MAINTAINERS#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/include/malloc_np.h#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/lib/libc/stdlib/malloc.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/share/man/man4/ng_netflow.4#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/amd64/amd64/pmap.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/kmacy_sun4v_stable/src/sys/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/conf/kmod.mk#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/ciphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/nsgphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/rgephy.c#3 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mii/tdkphy.c#2 integrate Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/MAINTAINERS#3 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.135 2006/06/03 01:52:11 scottl Exp $ +$FreeBSD: src/MAINTAINERS,v 1.136 2006/07/01 10:51:54 markm Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -35,10 +35,6 @@ NEWCARD imp Pre-commit review requested. OLDCARD imp Pre-commit review requested. pci bus imp,jhb Pre-commit review requested. -telnet markm Heads-up appreciated. Try not to break it. -secure/* markm Heads-up appreciated. Try not to break it. -kerberos5 nectar Pre-commit review requested. -heimdal nectar Pre-commit review requested. cdboot jhb Pre-commit review requested. pxeboot jhb Pre-commit review requested. witness jhb Pre-commit review requested. @@ -91,8 +87,6 @@ libufs jmallett Willing to handle problems, help with work. fdc(4) joerg Just keep me informed of changes, try not to break it. sppp(4) joerg Just keep me informed of changes, try not to break it. -libc nectar Opportuntity for pre-commit review appreciated for - nsdispatch(3) and its consumers. unifdef(1) fanf Pre-commit review requested. ntp roberto Pre-commit review requested. inetd dwmalone Recommends pre-commit review. @@ -147,12 +141,7 @@ games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch sbin/dhclient/Makefile.inc:MAINTAINER= mbr -sys/compat/svr4/Makefile:MAINTAINER= newton@freebsd.org -sys/dev/bktr/CHANGELOG.TXT: * MAINTAINER = Roger Hardiman sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org -sys/modules/bktr/bktr_mem/Makefile:MAINTAINER= roger@freebsd.org -sys/modules/streams/Makefile:MAINTAINER= newton@atdot.dotat.org -sys/modules/svr4/Makefile:MAINTAINER= newton@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org usr.bin/locate/Makefile:MAINTAINER= wosch ==== //depot/projects/kmacy_sun4v_stable/src/include/malloc_np.h#2 (text) ==== @@ -26,12 +26,16 @@ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/include/malloc_np.h,v 1.1 2006/03/28 22:16:03 jasone Exp $ + * $FreeBSD: src/include/malloc_np.h,v 1.2 2006/06/30 20:57:41 jasone Exp $ */ #ifndef _MALLOC_NP_H_ #define _MALLOC_NP_H_ +#include +#include +__BEGIN_DECLS size_t malloc_usable_size(const void *ptr); +__END_DECLS #endif /* _MALLOC_NP_H_ */ ==== //depot/projects/kmacy_sun4v_stable/src/lib/libc/stdlib/malloc.c#3 (text+ko) ==== @@ -185,7 +185,7 @@ #endif #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.127 2006/06/20 20:38:25 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.129 2006/07/01 16:51:10 jasone Exp $"); #include "libc_private.h" #ifdef MALLOC_DEBUG @@ -659,9 +659,6 @@ * Data. */ -/* Used as a special "nil" return value for malloc(0). */ -static const int nil; - /* Number of CPUs. */ static unsigned ncpus; @@ -1565,82 +1562,82 @@ static inline void arena_run_reg_dalloc(arena_run_t *run, arena_bin_t *bin, void *ptr, size_t size) { + /* + * To divide by a number D that is not a power of two we multiply + * by (2^21 / D) and then right shift by 21 positions. + * + * X / D + * + * becomes + * + * (size_invs[(D >> QUANTUM_2POW_MIN) - 3] * D) >> SIZE_INV_SHIFT + */ +#define SIZE_INV_SHIFT 21 +#define SIZE_INV(s) (((1 << SIZE_INV_SHIFT) / (s << QUANTUM_2POW_MIN)) + 1) + static const unsigned size_invs[] = { + SIZE_INV(3), + SIZE_INV(4), SIZE_INV(5), SIZE_INV(6), SIZE_INV(7), + SIZE_INV(8), SIZE_INV(9), SIZE_INV(10), SIZE_INV(11), + SIZE_INV(12),SIZE_INV(13), SIZE_INV(14), SIZE_INV(15), + SIZE_INV(16),SIZE_INV(17), SIZE_INV(18), SIZE_INV(19), + SIZE_INV(20),SIZE_INV(21), SIZE_INV(22), SIZE_INV(23), + SIZE_INV(24),SIZE_INV(25), SIZE_INV(26), SIZE_INV(27), + SIZE_INV(28),SIZE_INV(29), SIZE_INV(30), SIZE_INV(31) + }; unsigned diff, regind, elm, bit; assert(run->magic == ARENA_RUN_MAGIC); + assert(((sizeof(size_invs)) / sizeof(unsigned)) + 3 + >= (SMALL_MAX_DEFAULT >> QUANTUM_2POW_MIN)); /* - * Avoid doing division with a variable divisor if possible. This - * single operation can reduce allocator throughput by around 20%! + * Avoid doing division with a variable divisor if possible. Using + * actual division here can reduce allocator throughput by over 20%! */ -#define POW2_CASE(p) \ - case (1 << (p)): \ - regind = diff >> (p); \ - break; -#define QUANTUM_CASE(n) \ - case ((n) << QUANTUM_2POW_MIN): \ - regind = diff / ((n) << QUANTUM_2POW_MIN); \ - break; - - /* - * These assertions make sure that the switch statement matches - * compile-time configuration. - */ - assert(tiny_min_2pow >= 1); - assert(QUANTUM_2POW_MIN >= 3 && QUANTUM_2POW_MIN <= 4); - assert(SMALL_MAX_2POW_DEFAULT == 9); - diff = (unsigned)((uintptr_t)ptr - (uintptr_t)run - bin->reg0_offset); - switch (size) { - POW2_CASE(1) - POW2_CASE(2) -#if (QUANTUM_2POW_MIN > 3) - POW2_CASE(3) -#endif - QUANTUM_CASE(1) - QUANTUM_CASE(2) - QUANTUM_CASE(3) - QUANTUM_CASE(4) - QUANTUM_CASE(5) - QUANTUM_CASE(6) - QUANTUM_CASE(7) - QUANTUM_CASE(8) - QUANTUM_CASE(9) - QUANTUM_CASE(10) - QUANTUM_CASE(11) - QUANTUM_CASE(12) - QUANTUM_CASE(13) - QUANTUM_CASE(14) - QUANTUM_CASE(15) - QUANTUM_CASE(16) - QUANTUM_CASE(17) - QUANTUM_CASE(18) - QUANTUM_CASE(19) - QUANTUM_CASE(20) - QUANTUM_CASE(21) - QUANTUM_CASE(22) - QUANTUM_CASE(23) - QUANTUM_CASE(24) - QUANTUM_CASE(25) - QUANTUM_CASE(26) - QUANTUM_CASE(27) - QUANTUM_CASE(28) - QUANTUM_CASE(29) - QUANTUM_CASE(30) - QUANTUM_CASE(31) - QUANTUM_CASE(32) + if ((size & (size - 1)) == 0) { + /* + * log2_table allows fast division of a power of two in the + * [1..128] range. + * + * (x / divisor) becomes (x >> log2_table[divisor - 1]). + */ + static const unsigned char log2_table[] = { + 0, 1, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7 + }; -#if (QUANTUM_2POW_MIN <= 3) - POW2_CASE(9) -#endif - POW2_CASE(10) - POW2_CASE(11) - POW2_CASE(12) /* Handle up to 8 kB pages. */ - default: + if (size <= 128) + regind = (diff >> log2_table[size - 1]); + else if (size <= 32768) + regind = diff >> (8 + log2_table[(size >> 8) - 1]); + else { + /* + * The page size is too large for us to use the lookup + * table. Use real division. + */ regind = diff / size; - } -#undef POW2_CASE -#undef QUANTUM_CASE + } + } else if (size <= ((sizeof(size_invs) / sizeof(unsigned)) + << QUANTUM_2POW_MIN) + 2) { + regind = size_invs[(size >> QUANTUM_2POW_MIN) - 3] * diff; + regind >>= SIZE_INV_SHIFT; + } else { + /* + * size_invs isn't large enough to handle this size class, so + * calculate regind using actual division. This only happens + * if the user increases small_max via the 'S' runtime + * configuration option. + */ + regind = diff / size; + }; + assert(regind == diff / size); assert(regind < bin->nregs); elm = regind >> (SIZEOF_INT_2POW + 3); @@ -1649,6 +1646,8 @@ bit = regind - (elm << (SIZEOF_INT_2POW + 3)); assert((run->regs_mask[elm] & (1 << bit)) == 0); run->regs_mask[elm] |= (1 << bit); +#undef SIZE_INV +#undef SIZE_INV_SHIFT } static void @@ -2239,7 +2238,6 @@ arena_chunk_map_t mapelm; assert(ptr != NULL); - assert(ptr != &nil); assert(CHUNK_ADDR2BASE(ptr) != ptr); /* @@ -2281,8 +2279,7 @@ == (QUANTUM_CEILING(oldsize) >> opt_quantum_2pow)) goto IN_PLACE; } else { - if (oldsize > small_max && - pow2_ceil(size) == pow2_ceil(oldsize)) + if (oldsize > small_max && pow2_ceil(size) == oldsize) goto IN_PLACE; } @@ -2320,7 +2317,6 @@ assert(arena->magic == ARENA_MAGIC); assert(chunk->arena == arena); assert(ptr != NULL); - assert(ptr != &nil); assert(CHUNK_ADDR2BASE(ptr) != ptr); pageind = (((uintptr_t)ptr - (uintptr_t)chunk) >> pagesize_2pow); @@ -2353,6 +2349,7 @@ /* Medium allocation. */ size = mapelm.npages << pagesize_2pow; + assert((((uintptr_t)ptr) & (size - 1)) == 0); if (opt_junk) memset(ptr, 0x5a, size); @@ -2666,29 +2663,36 @@ ipalloc(size_t alignment, size_t size) { void *ret; - size_t pow2_size; + size_t alloc_size; /* - * Round up to the nearest power of two that is >= alignment and - * >= size. + * Take advantage of the fact that for each size class, every object is + * aligned at the smallest power of two that is non-zero in the base + * two representation of the size. For example: + * + * Size | Base 2 | Minimum alignment + * -----+----------+------------------ + * 96 | 1100000 | 32 + * 144 | 10100000 | 32 + * 192 | 11000000 | 64 + * + * Depending on runtime settings, it is possible that arena_malloc() + * will further round up to a power of two, but that never causes + * correctness issues. */ - if (size > alignment) - pow2_size = pow2_ceil(size); - else - pow2_size = alignment; - pow2_size = QUANTUM_CEILING(pow2_size); - if (pow2_size < size) { + alloc_size = (size + (alignment - 1)) & (-alignment); + if (alloc_size < size) { /* size_t overflow. */ return (NULL); } - if (pow2_size <= arena_maxclass) - ret = arena_malloc(choose_arena(), pow2_size); + if (alloc_size <= arena_maxclass) + ret = arena_malloc(choose_arena(), alloc_size); else { if (alignment <= chunk_size) ret = huge_malloc(size); else { - size_t chunksize, alloc_size, offset; + size_t chunksize, offset; chunk_node_t *node; /* @@ -2815,7 +2819,6 @@ arena_chunk_t *chunk; assert(ptr != NULL); - assert(ptr != &nil); chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(ptr); if (chunk != ptr) { @@ -2850,7 +2853,6 @@ size_t oldsize; assert(ptr != NULL); - assert(ptr != &nil); assert(size != 0); oldsize = isalloc(ptr); @@ -2869,7 +2871,6 @@ arena_chunk_t *chunk; assert(ptr != NULL); - assert(ptr != &nil); chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(ptr); if (chunk != ptr) { @@ -3404,10 +3405,11 @@ if (size == 0) { if (opt_sysv == false) - ret = (void *)&nil; - else + size = 1; + else { ret = NULL; - goto RETURN; + goto RETURN; + } } ret = imalloc(size); @@ -3486,10 +3488,11 @@ num_size = num * size; if (num_size == 0) { if (opt_sysv == false) - ret = (void *)&nil; - else + num_size = 1; + else { ret = NULL; - goto RETURN; + goto RETURN; + } /* * Try to avoid division here. We know that it isn't possible to * overflow during multiplication if neither operand uses any of the @@ -3524,44 +3527,49 @@ { void *ret; - if (size != 0) { - if (ptr != &nil && ptr != NULL) { - assert(malloc_initialized); + if (size == 0) { + if (opt_sysv == false) + size = 1; + else { + if (ptr != NULL) + idalloc(ptr); + ret = NULL; + goto RETURN; + } + } - ret = iralloc(ptr, size); + if (ptr != NULL) { + assert(malloc_initialized); - if (ret == NULL) { - if (opt_xmalloc) { - malloc_printf("%s: (malloc) Error in" - " ralloc(%p, %zu): out of memory\n", - _getprogname(), ptr, size); - abort(); - } - errno = ENOMEM; - } - } else { - if (malloc_init()) - ret = NULL; - else - ret = imalloc(size); + ret = iralloc(ptr, size); - if (ret == NULL) { - if (opt_xmalloc) { - malloc_printf("%s: (malloc) Error in" - " ralloc(%p, %zu): out of memory\n", - _getprogname(), ptr, size); - abort(); - } - errno = ENOMEM; + if (ret == NULL) { + if (opt_xmalloc) { + malloc_printf("%s: (malloc) Error in" + " realloc(%p, %zu): out of memory\n", + _getprogname(), ptr, size); + abort(); } + errno = ENOMEM; } } else { - if (ptr != &nil && ptr != NULL) - idalloc(ptr); + if (malloc_init()) + ret = NULL; + else + ret = imalloc(size); - ret = (void *)&nil; + if (ret == NULL) { + if (opt_xmalloc) { + malloc_printf("%s: (malloc) Error in" + " realloc(%p, %zu): out of memory\n", + _getprogname(), ptr, size); + abort(); + } + errno = ENOMEM; + } } +RETURN: UTRACE(ptr, size, ret); return (ret); } @@ -3571,7 +3579,7 @@ { UTRACE(ptr, 0, 0); - if (ptr != &nil && ptr != NULL) { + if (ptr != NULL) { assert(malloc_initialized); idalloc(ptr); @@ -3592,10 +3600,7 @@ assert(ptr != NULL); - if (ptr == &nil) - return (0); - else - return (isalloc(ptr)); + return (isalloc(ptr)); } /* ==== //depot/projects/kmacy_sun4v_stable/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#3 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.951 2006/06/26 12:12:09 keramida Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.953 2006/07/02 01:58:33 bmah Exp $ 2000 @@ -366,11 +366,11 @@ A new loader tunable comconsole_speed to change the serial console speed has been added. - If the previous stage boot loader requested a serial console + If the previous stage boot loader requested a serial console, then the default speed is determined from the current serial port - speed, and otherwise it is set to 9600 or the value of - the kernel option BOOT_COMCONSOLE_SPEED - at compile time. &merged; + speed. Otherwise it is set to 9600 or the value of + the BOOT_COMCONSOLE_SPEED kernel option. + &merged; @@ -391,7 +391,7 @@ &man.pccbb.4;, and &man.exca.4; drivers are now buildable as kernel modules. - A &man.acpi.dock.4; driver has been added to provide + An &man.acpi.dock.4; driver has been added to provide support for controlling laptop docking station functions via ACPI. @@ -416,9 +416,11 @@ Support for the PadLock Security Co-processor in VIA C3 processors has been added to the &man.crypto.9; subsystem. + More information can be found in the &man.padlock.4; manual + page. &merged; - A bug which prevents the &man.ichsmb.4; kernel module + A bug which prevented the &man.ichsmb.4; kernel module from unloading has been fixed. Dual-core processors (such as the Intel @@ -440,7 +442,7 @@ or at runtime via &man.kldload.8; and releasing the active keyboard. &merged; - The &man.kbdmux.4; driver has been included in the + The &man.kbdmux.4; driver is now included in the GENERIC kernel by default. Also, the Boot FreeBSD with USB keyboard menu item in the boot loader menu has been removed @@ -461,22 +463,22 @@ The smbios(4) driver support for amd64 has been added. - The tnt4882(4) driver which supports National Instruments - PCI-GPIB card has been added. + The tnt4882(4) driver, which supports the National Instruments + PCI-GPIB card, has been added. The &man.uart.4; driver has been included in the GENERIC kernel by default. - When both &man.sio.4; and &man.uart.4; can handle a serial port, + When both &man.sio.4; and &man.uart.4; can handle a given serial port, &man.sio.4; will claim it. The &man.uart.4; driver now supports LOM (Lights Out Management) - and RSC (Remote System Control) devices as console. + and RSC (Remote System Control) devices as consoles. A new loader tunable hw.apic.enable_extint has been added. - This tunable can be used not to mask the ExtINT pin on the first - I/O APIC. At least one chipset for Intel Pentium III seems - to need this even though all of the pins in the 8259A's are masked. + This tunable can be used to disable masking of the ExtINT pin on the first + I/O APIC. At least one chipset for the Intel Pentium III seems + to need this, even though all of the pins in the 8259As are masked. The default is still to mask the ExtINT pin. Support has been improved for @@ -487,7 +489,7 @@ Multimedia Support - The &man.agp.4; driver now supports ATI IGP chipsets. + The &man.agp.4; driver now supports ATI AGP chipsets. &merged; The new midi(4) driver which is based on NetBSD's one @@ -561,7 +563,7 @@ The &man.ed.4; driver is now MPSAFE. - The &man.el.4; driver has been removed. + The &man.el.4; driver has been removed due to lack of use. The &man.em.4; driver now supports big-endian architectures such as sparc64. &merged; @@ -583,11 +585,12 @@ architectures such as sparc64. The &man.le.4; driver, which supports AMD Am7900 LANCE - and Am79C9xx PCnet NICs and is based on NetBSD's implementation, + and Am79C9xx PCnet NICs, has been added. While the &man.lnc.4; driver also supports these NICs, this driver has several advantages over it such as MPSAFE, ALTQ, VLAN_MTU, ifmedia, and 32-bit DMA for PCI - variants. &merged; + variants. This driver is based on NetBSD's implementation. + &merged; The &man.lge.4; driver is now MPSAFE. &merged; @@ -597,7 +600,7 @@ The &man.my.4; driver is now MPSAFE. &merged; - The &man.my.4; driver now supports &man.altq.4; + The &man.my.4; driver now supports &man.altq.4;. The &man.mxge.4; driver, which supports Myricom Myri10GE 10 Gigabit Ethernet @@ -647,14 +650,14 @@ Network Protocols - The &man.arp.8; retransmission algorithm has been - rewritten as that ARP requests are retransmitted without + The &man.arp.4; retransmission algorithm has been + rewritten so that ARP requests are retransmitted without suppression, while there is demand for such ARP entry. Due to this change, a sysctl variable net.link.ether.inet.host_down_time has been removed. &merged; - The &man.arp.8; now supports a sysctl variable + The &man.arp.4; protocol now supports a sysctl variable net.link.ether.inet.log_arp_permanent_modify to suppress logging of attempts to modify permanent ARP entries. &merged; @@ -674,7 +677,7 @@ found in RFC 1701 and RFC 1702, now supports IPv6 over GRE. The &man.if.bridge.4; driver now supports - creating span ports, which transmit a copy of every frame + creating SPAN ports, which transmit a copy of every frame received by the bridge. This feature can be enabled by using &man.ifconfig.8;. &merged; @@ -689,15 +692,15 @@ memberships (formerly 20) has been removed. The path MTU discovery for multicast packets in the &os; - &man.ip6.4; stack has been disabled by default because - notifying path MTU by a lot of routers in multicast + IPv6 stack has been disabled by default. + Path MTU notification from a large number of multicast routers can be a kind of distributed Denial-of-Service attack to a router. This feature can be re-enabled by using a new sysctl variable net.inet6.ip6.mcast_pmtu. &merged; The &man.ipfw.4; IP packet filter now supports IPv6. &merged; - The &man.ipfw.4; now supports substitution of the action + The &man.ipfw.4; firewall system now supports substitution of the action argument with the value obtained from table lookup, which allows some optimization of rulesets. This is now applicable only to pipe, @@ -776,25 +779,25 @@ A new socket option IP_MINTTL has been added. This may be used to set the minimum acceptable TTL a packet must have when received on a socket. - All packets with a lower TTL are silently dropped, - and this works on already connected/connecting and + All packets with a lower TTL are silently dropped. + This works on already connected/connecting and listening sockets for RAW, UDP, and TCP. This option - is only really useful when set to 255 preventing packets + is only really useful when set to 255, preventing packets from outside the directly connected networks reaching local listeners on sockets. Also, this option allows userland implementation of The Generalized TTL Security Mechanism (GTSM) found in RFC 3682. - The stealth forwarding now supports IPv6 as well as IPv4. + Stealth forwarding now supports IPv6 as well as IPv4. This behavior can be controlled by using a new sysctl variable net.inet6.ip6.stealth. - A bug that IPV6_V6ONLY socket option - does not work for UDP has been fixed. + The IPV6_V6ONLY socket option + now works for UDP. The TCP bandwidth-delay product limiting feature has been disabled when the RTT is below a certain threshold. - This optimization does not make sense on a LAN as it has + This optimization does not make sense on a LAN, as it has trouble figuring out the maximal bandwidth due to the coarse tick granularity. A new sysctl variable net.inet.tcp.inflight.rttthresh specifies @@ -831,16 +834,16 @@ Fasttrak TX4300. &merged; - The &man.ata.4; driver now supports DMA for kernel crash dumps - and crash dumping to an &man.ataraid.4; device. + The &man.ata.4; driver now supports DMA for kernel crash dumps, + as well as crash dumping to an &man.ataraid.4; device. &merged; The &man.ata.4; driver now supports USB mass storage class devices. To enable it, a line device atausb in the kernel configuration file or loading the atausb kernel module is needed. - Note that this conflicts with &man.umass.4; and cannot coexist with - each other. + Note that this functionality cannot coexist with the + &man.umass.4; driver. The &man.ataraid.4; driver now supports JMicron ATA RAID metadata. &merged; @@ -870,12 +873,12 @@ &merged; The GEOM_MIRROR and GEOM_RAID3 - classes now use parallel I/O request for synchronization + classes now use parallel I/O requests for synchronization to improve the performance. New sysctl variables kern.geom.mirror.sync_requests and kern.geom.raid3.sync_requests define how many parallel I/O requests should be used. - Also, sysctl variables + Also, the sysctl variables kern.geom.mirror.reqs_per_sync, kern.geom.mirror.syncs_per_sec, kern.geom.raid3.reqs_per_sync, and @@ -920,7 +923,7 @@ and supports different cryptographic algorithms. See &man.geli.8; for more information. &merged; - The &man.geli.8; now supports loading keyfiles before the root + The &man.geli.8; disk encryption system now supports loading keyfiles before the root file system is mounted. &merged; For example, the following entries can be used in /boot/loader.conf to enable @@ -981,8 +984,8 @@ in struct addrinfo has been removed, which was originally for the ABI compatibility. For example, this change breaks the ABI compatibility of the - &man.getaddrinfo.3; function on 64-bit architecture including - &os;/alpha, &os;/amd64, &os;/ia64, and &os;/sparc64. + &man.getaddrinfo.3; function on 64-bit architectures, including + &os;/amd64, &os;/ia64, and &os;/sparc64. The &man.arp.8; utility now allows the option together with the and options @@ -1016,7 +1019,7 @@ kernel configuration file if it exists in the current directory before the specified configuration file. &merged; - The &man.csh.1; utility now supports NLS catalog. + The &man.csh.1; utility now supports NLS catalogs. Note that this requires installing the shells/tcsh_nls port. &merged; @@ -1070,7 +1073,7 @@ to rename objects and to move a subdisk from one drive to another. &merged; - The &man.gvinum.8; utility now supports + The &man.gvinum.8; utility now supports the resetconfig sub-command. An implementation of Generic Security Service API (GSS-API) @@ -1097,8 +1100,8 @@ The parameter to &man.ifconfig.8; no longer requires a network interface as its argument. The - argument still is supported for backward compatibility, but now - it is deprecated and its use is discouraged. + argument still is supported for backward compatibility, but + is now deprecated and its use is discouraged. The &man.iostat.8; utility now supports a flag (inspired by Solaris) to print @@ -1160,8 +1163,8 @@ for the allocators. &merged; The &man.ln.1; utility now supports - an flag which allows to delete existing - empty directories, when creating symbolic links. + an flag, which deletes existing + empty directories when creating symbolic links. &merged; The &man.locate.1; utility now supports @@ -1187,10 +1190,10 @@ userland code, although most of the &os; base system and common ports have been tested and/or fixed. - The &man.mdconfig.8; utility now supports XML - output of the device listing. Currently + The &man.mdconfig.8; utility now supports producing + device listings formatted as XML. Currently, the list and query - sub-command support this feature. + sub-commands support this feature. The &man.mdconfig.8; utility's option now supports specifying multiple devices separated @@ -1224,7 +1227,7 @@ has been fixed. The &man.moused.8; daemon now supports an flag - to enable horizontal virtual scrolling similar to a + to enable horizontal virtual scrolling similar to the flag for vertical virtual scrolling. &merged; @@ -1273,7 +1276,7 @@ each matching process. The &man.powerd.8; program now supports a - option which allows to specify pidfile. + option, which specifies a pidfile to use. The DNS resolver library in &os;'s libc has been updated to BIND9's one. @@ -1284,7 +1287,7 @@ LAN (LAN Access Using PPP), and SP (Serial Port). &merged; The &man.rpcgen.1; utility now generates headers and stub files - which can be used with ANSI C compilers by default. + that can be used with ANSI C compilers by default. The &man.rtld.1; runtime linker now supports ELF symbol versioning using GNU semantics. This implementation aims to be compatible @@ -1298,7 +1301,7 @@ incorrect calculation of pattern space length in some cases has been fixed. - The &man.sh.1; utility now supports times + The &man.sh.1; utility now supports a times built-in command. &merged; The &man.snapinfo.8; utility, which shows snapshot locations @@ -1338,7 +1341,7 @@ The shared library version number of all libraries has been updated due to some possible ABI changes. The libraries - include: snmp_*, libdialog, libg2c, libobjc, + include: snmp_*, libdialog, libg2c, libobjc, libreadline, libregex, libstdc++, libkrb5, libalias, libarchive, libbegemot, libbluetooth, libbsnmp, libbz2, libc_r, libcrypt, libdevstat, libedit, libexpat, libfetch, libftpio, libgpib, @@ -1414,8 +1417,9 @@ mdconfig_md1="-t vnode -f /var/foo.img" The netif script now supports - ipv4_addrs_ifn, - which adds one or more IPv4 address from a ranged list in + ipv4_addrs_ifn + variables, + which add one or more IPv4 address from a ranged list in CIDR notation. &merged; For example: ipv4_addrs_ed0="192.168.0.1/24 192.168.1.1-5/28" @@ -1427,7 +1431,8 @@ The rc.initdiskless script now uses &man.tar.1; instead of &man.pax.1; because &man.pax.1; needs a writable - temporary directory. + temporary directory that may not be available when this script + runs. The pccard script has been removed since OLDCARD is deprecated. @@ -1539,7 +1544,7 @@ The &man.pkg.version.1; utility now supports an flag to show the origin recorded on package generation instead of the package name, and an flag - to list packages whose registered origin is origin only. + to list packages with a specific registered origin. &merged; The &man.portsnap.8; utility (sysutils/portsnap) @@ -1644,9 +1649,9 @@ - A new &man.make.1; target make showconfig - has been added in src/Makefile - to show build configuration of the &os; source tree. + A new showconfig + target has been added in src/Makefile + to show the build configuration of the &os; source tree. A /media directory has been added to contain mount points for removable media ==== //depot/projects/kmacy_sun4v_stable/src/share/man/man4/ng_netflow.4#2 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ng_netflow.4,v 1.13 2006/03/02 15:11:05 glebius Exp $ +.\" $FreeBSD: src/share/man/man4/ng_netflow.4,v 1.14 2006/07/01 17:59:13 ru Exp $ .\" .Dd March 2, 2006 .Os @@ -108,7 +108,7 @@ .Va iface Ns Ar N hook. Currently, supported types are raw IP datagrams and Ethernet. -This messsage type uses +This message type uses .Vt "struct ng_netflow_setdlt" as an argument: .Bd -literal -offset 4n ==== //depot/projects/kmacy_sun4v_stable/src/sys/amd64/amd64/pmap.c#3 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.560 2006/06/27 04:28:22 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); /* * Manages physical address maps. @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 3 06:34:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5257C16A505; Mon, 3 Jul 2006 06:34:23 +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 DB65616A412 for ; Mon, 3 Jul 2006 06:34:22 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5F10743D7F for ; Mon, 3 Jul 2006 06:34:13 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k636YDGk042548 for ; Mon, 3 Jul 2006 06:34:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k636YCm5042545 for perforce@freebsd.org; Mon, 3 Jul 2006 06:34:12 GMT (envelope-from imp@freebsd.org) Date: Mon, 3 Jul 2006 06:34:12 GMT Message-Id: <200607030634.k636YCm5042545@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100465 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 06:34:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=100465 Change 100465 by imp@imp_plunger on 2006/07/03 06:34:02 IFC @100463 (mostly to test to see if I got this setup right) Affected files ... .. //depot/projects/mips2/src/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/ciphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/nsgphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/rgephy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/mips2/src/sys/i386/i386/pmap.c#2 integrate .. //depot/projects/mips2/src/sys/kern/sched_4bsd.c#2 integrate Differences ... ==== //depot/projects/mips2/src/sys/amd64/amd64/pmap.c#2 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.562 2006/07/01 23:43:54 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); /* * Manages physical address maps. @@ -1608,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } ==== //depot/projects/mips2/src/sys/dev/mii/acphy.c#2 (text+ko) ==== @@ -65,7 +65,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/acphy.c,v 1.17 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/acphy.c,v 1.18 2006/07/03 02:53:39 yongari Exp $"); /* * Driver for Altima AC101 10/100 PHY @@ -132,7 +132,7 @@ } else return (ENXIO); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/amphy.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/amphy.c,v 1.18 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/amphy.c,v 1.19 2006/07/03 02:53:39 yongari Exp $"); /* * driver for AMD AM79c873 PHYs @@ -100,7 +100,7 @@ else if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxDAVICOM) device_set_desc(dev, MII_STR_xxDAVICOM_DM9101); - return(0); + return(BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/bmtphy.c#2 (text+ko) ==== @@ -68,7 +68,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/bmtphy.c,v 1.9 2005/01/06 01:42:55 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/bmtphy.c,v 1.10 2006/07/03 02:53:39 yongari Exp $"); /* * Driver for the Broadcom BCM5201/BCM5202 "Mini-Theta" PHYs. This also @@ -127,7 +127,7 @@ int rval; ma = device_get_ivars(dev); - rval = 0; + rval = BUS_PROBE_DEFAULT; if (MII_OUI(ma->mii_id1, ma->mii_id2) != MII_OUI_BROADCOM) return (ENXIO); @@ -135,11 +135,11 @@ switch (MII_MODEL(ma->mii_id2)) { case MII_MODEL_BROADCOM_3C905B: device_set_desc(dev, MII_STR_BROADCOM_3C905B); - rval = -10; /* Let exphy take precedence. */ + rval = BUS_PROBE_LOW_PRIORITY; /* Let exphy take precedence. */ break; case MII_MODEL_BROADCOM_3C905C: device_set_desc(dev, MII_STR_BROADCOM_3C905C); - rval = -10; /* Let exphy take precedence. */ + rval = BUS_PROBE_LOW_PRIORITY; /* Let exphy take precedence. */ break; case MII_MODEL_BROADCOM_BCM5201: device_set_desc(dev, MII_STR_BROADCOM_BCM5201); ==== //depot/projects/mips2/src/sys/dev/mii/brgphy.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/brgphy.c,v 1.42 2006/05/16 14:36:28 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/brgphy.c,v 1.43 2006/07/03 02:53:39 yongari Exp $"); /* * Driver for the Broadcom BCR5400 1000baseTX PHY. Speed is always @@ -108,73 +108,73 @@ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5400) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5400); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5401) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5401); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5411) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5411); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5701) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5701); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5703) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5703); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5704) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5704); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5705) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5705); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5750) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5750); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5714) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5714); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5780) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5780); - return (0); + return (BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5706C) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5706C); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxBROADCOM && MII_MODEL(ma->mii_id2) == MII_MODEL_xxBROADCOM_BCM5708C) { device_set_desc(dev, MII_STR_xxBROADCOM_BCM5708C); - return(0); + return(BUS_PROBE_DEFAULT); } return(ENXIO); ==== //depot/projects/mips2/src/sys/dev/mii/ciphy.c#2 (text+ko) ==== @@ -29,11 +29,11 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/mii/ciphy.c,v 1.4 2006/05/16 14:36:28 phk Exp $ + * $FreeBSD: src/sys/dev/mii/ciphy.c,v 1.5 2006/07/03 02:53:39 yongari Exp $ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/ciphy.c,v 1.4 2006/05/16 14:36:28 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/ciphy.c,v 1.5 2006/07/03 02:53:39 yongari Exp $"); /* * Driver for the Cicada CS8201 10/100/1000 copper PHY. @@ -100,19 +100,19 @@ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_CICADA && MII_MODEL(ma->mii_id2) == MII_MODEL_CICADA_CS8201) { device_set_desc(dev, MII_STR_CICADA_CS8201); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_CICADA && MII_MODEL(ma->mii_id2) == MII_MODEL_CICADA_CS8201A) { device_set_desc(dev, MII_STR_CICADA_CS8201A); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_CICADA && MII_MODEL(ma->mii_id2) == MII_MODEL_CICADA_CS8201B) { device_set_desc(dev, MII_STR_CICADA_CS8201B); - return(0); + return(BUS_PROBE_DEFAULT); } return(ENXIO); ==== //depot/projects/mips2/src/sys/dev/mii/e1000phy.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/e1000phy.c,v 1.15 2006/05/16 14:36:28 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/e1000phy.c,v 1.16 2006/07/03 02:53:39 yongari Exp $"); /* * driver for the Marvell 88E1000 series external 1000/100/10-BT PHY. @@ -102,7 +102,7 @@ } device_set_desc(dev, MII_STR_MARVELL_E1000); - return 0; + return BUS_PROBE_DEFAULT; } static int ==== //depot/projects/mips2/src/sys/dev/mii/exphy.c#2 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/exphy.c,v 1.20 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/exphy.c,v 1.21 2006/07/03 02:53:39 yongari Exp $"); /* * driver for 3Com internal PHYs @@ -143,7 +143,7 @@ else device_set_desc(dev, MII_STR_BROADCOM_3C905C); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/inphy.c#2 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/inphy.c,v 1.14 2004/05/30 17:57:40 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/inphy.c,v 1.15 2006/07/03 02:53:39 yongari Exp $"); /* * driver for Intel 82553 and 82555 PHYs @@ -89,23 +89,23 @@ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxINTEL && MII_MODEL(ma->mii_id2) == MII_MODEL_xxINTEL_I82553AB) { device_set_desc(dev, MII_STR_xxINTEL_I82553AB); - return (0); + return (BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_INTEL) { switch (MII_MODEL(ma->mii_id2)) { case MII_MODEL_INTEL_I82555: device_set_desc(dev, MII_STR_INTEL_I82555); - return (0); + return (BUS_PROBE_DEFAULT); case MII_MODEL_INTEL_I82553C: device_set_desc(dev, MII_STR_INTEL_I82553C); - return (0); + return (BUS_PROBE_DEFAULT); case MII_MODEL_INTEL_I82562EM: device_set_desc(dev, MII_STR_INTEL_I82562EM); - return (0); + return (BUS_PROBE_DEFAULT); case MII_MODEL_INTEL_I82562ET: device_set_desc(dev, MII_STR_INTEL_I82562ET); - return (0); + return (BUS_PROBE_DEFAULT); } } ==== //depot/projects/mips2/src/sys/dev/mii/lxtphy.c#2 (text+ko) ==== @@ -68,7 +68,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/lxtphy.c,v 1.15 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/lxtphy.c,v 1.16 2006/07/03 02:53:39 yongari Exp $"); /* * driver for Level One's LXT-970 ethernet 10/100 PHY @@ -134,7 +134,7 @@ } else return (ENXIO); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/mlphy.c#2 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/mlphy.c,v 1.20 2005/01/06 01:42:56 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/mlphy.c,v 1.21 2006/07/03 02:53:39 yongari Exp $"); /* * driver for Micro Linear 6692 PHYs @@ -127,7 +127,7 @@ device_set_desc(dev, "Micro Linear 6692 media interface"); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/nsgphy.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/nsgphy.c,v 1.21 2006/05/16 14:36:28 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/nsgphy.c,v 1.22 2006/07/03 02:53:39 yongari Exp $"); /* * Driver for the National Semiconductor DP83891 and DP83861 @@ -115,7 +115,7 @@ mpd = mii_phy_match(ma, gphyters); if (mpd != NULL) { device_set_desc(dev, mpd->mpd_name); - return(0); + return(BUS_PROBE_DEFAULT); } return(ENXIO); ==== //depot/projects/mips2/src/sys/dev/mii/nsphy.c#2 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/nsphy.c,v 1.24 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/nsphy.c,v 1.25 2006/07/03 02:53:39 yongari Exp $"); /* * driver for National Semiconductor's DP83840A ethernet 10/100 PHY @@ -131,7 +131,7 @@ } else return (ENXIO); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/pnaphy.c#2 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/pnaphy.c,v 1.16 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/pnaphy.c,v 1.17 2006/07/03 02:53:40 yongari Exp $"); /* * driver for homePNA PHYs @@ -96,7 +96,7 @@ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_AMD && MII_MODEL(ma->mii_id2) == MII_MODEL_AMD_79c978) { device_set_desc(dev, MII_STR_AMD_79c978); - return(0); + return(BUS_PROBE_DEFAULT); } return(ENXIO); ==== //depot/projects/mips2/src/sys/dev/mii/qsphy.c#2 (text+ko) ==== @@ -68,7 +68,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/qsphy.c,v 1.15 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/qsphy.c,v 1.16 2006/07/03 02:53:39 yongari Exp $"); /* * driver for Quality Semiconductor's QS6612 ethernet 10/100 PHY @@ -133,7 +133,7 @@ } else return (ENXIO); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/rgephy.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/rgephy.c,v 1.9 2006/06/26 20:31:31 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/rgephy.c,v 1.10 2006/07/03 02:53:39 yongari Exp $"); /* * Driver for the RealTek 8169S/8110S internal 10/100/1000 PHY. @@ -100,7 +100,7 @@ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxREALTEK && MII_MODEL(ma->mii_id2) == MII_MODEL_xxREALTEK_RTL8169S) { device_set_desc(dev, MII_STR_xxREALTEK_RTL8169S); - return(0); + return(BUS_PROBE_DEFAULT); } return(ENXIO); ==== //depot/projects/mips2/src/sys/dev/mii/rlphy.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/rlphy.c,v 1.22 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/rlphy.c,v 1.23 2006/07/03 02:53:40 yongari Exp $"); /* * driver for RealTek 8139 internal PHYs @@ -95,7 +95,7 @@ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_REALTEK && MII_MODEL(ma->mii_id2) == MII_MODEL_REALTEK_RTL8201L) { device_set_desc(dev, MII_STR_REALTEK_RTL8201L); - return(0); + return(BUS_PROBE_DEFAULT); } /* @@ -115,7 +115,7 @@ device_set_desc(dev, "RealTek internal media interface"); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/ruephy.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/ruephy.c,v 1.4 2004/05/30 17:57:40 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/ruephy.c,v 1.5 2006/07/03 02:53:40 yongari Exp $"); /* * driver for RealTek RTL8150 internal PHY @@ -104,7 +104,7 @@ device_set_desc(dev, "RealTek RTL8150 internal media interface"); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/tdkphy.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/tdkphy.c,v 1.18 2006/05/16 14:36:28 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/tdkphy.c,v 1.19 2006/07/03 02:53:40 yongari Exp $"); /* * Driver for the TDK 78Q2120 MII @@ -66,7 +66,7 @@ #if 0 #if !defined(lint) static const char rcsid[] = - "$Id: tdkphy.c,v 1.3 2000/10/14 06:20:56 jon Exp $"; + "$Id: tdkphy.c,v 1.18 2006/05/16 14:36:28 phk Exp $"; #endif #endif @@ -105,7 +105,7 @@ return (ENXIO); device_set_desc(dev, MII_STR_TDK_78Q2120); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/tlphy.c#2 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/tlphy.c,v 1.19 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/tlphy.c,v 1.20 2006/07/03 02:53:40 yongari Exp $"); /* * Driver for Texas Instruments's ThunderLAN PHYs @@ -140,7 +140,7 @@ device_set_desc(dev, MII_STR_xxTI_TLAN10T); - return (0); + return (BUS_PROBE_DEFAULT); } static int ==== //depot/projects/mips2/src/sys/dev/mii/ukphy.c#2 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/ukphy.c,v 1.18 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/ukphy.c,v 1.19 2006/07/03 02:53:40 yongari Exp $"); /* * driver for generic unknown PHYs @@ -121,7 +121,7 @@ * We know something is here, so always match at a low priority. */ device_set_desc(dev, "Generic IEEE 802.3u media interface"); - return (-100); + return (BUS_PROBE_GENERIC); } static int ==== //depot/projects/mips2/src/sys/dev/mii/xmphy.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/mii/xmphy.c,v 1.18 2005/09/30 19:39:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/mii/xmphy.c,v 1.19 2006/07/03 02:53:40 yongari Exp $"); /* * driver for the XaQti XMAC II's internal PHY. This is sort of @@ -93,13 +93,13 @@ if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_xxXAQTI && MII_MODEL(ma->mii_id2) == MII_MODEL_XAQTI_XMACII) { device_set_desc(dev, MII_STR_XAQTI_XMACII); - return(0); + return(BUS_PROBE_DEFAULT); } if (MII_OUI(ma->mii_id1, ma->mii_id2) == MII_OUI_JATO && MII_MODEL(ma->mii_id2) == MII_MODEL_JATO_BASEX) { device_set_desc(dev, MII_STR_JATO_BASEX); - return(0); + return(BUS_PROBE_DEFAULT); } return(ENXIO); ==== //depot/projects/mips2/src/sys/i386/i386/pmap.c#2 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/pmap.c,v 1.564 2006/06/27 04:28:23 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/pmap.c,v 1.565 2006/07/02 18:22:47 alc Exp $"); /* * Manages physical address maps. @@ -1686,9 +1686,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } sched_unpin(); ==== //depot/projects/mips2/src/sys/kern/sched_4bsd.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sched_4bsd.c,v 1.84 2006/06/29 19:37:31 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sched_4bsd.c,v 1.86 2006/07/02 20:53:52 maxim Exp $"); #include "opt_hwpmc_hooks.h" @@ -77,7 +77,7 @@ /* * The schedulable entity that can be given a context to run. * A process may have several of these. Probably one per processor - * but posibly a few more. In this universe they are grouped + * but possibly a few more. In this universe they are grouped * with a KSEG that contains the priority and niceness * for the group. */ @@ -126,9 +126,9 @@ do { \ kg->kg_avail_opennings++; \ CTR3(KTR_RUNQ, "kg %p(%d) Slot released (->%d)", \ - kg, \ - kg->kg_concurrency, \ - kg->kg_avail_opennings); \ + kg, \ + kg->kg_concurrency, \ + kg->kg_avail_opennings); \ /* KASSERT((kg->kg_avail_opennings <= kg->kg_concurrency), \ ("slots out of whack"));*/ \ } while (0) @@ -137,9 +137,9 @@ do { \ kg->kg_avail_opennings--; \ CTR3(KTR_RUNQ, "kg %p(%d) Slot used (->%d)", \ - kg, \ - kg->kg_concurrency, \ - kg->kg_avail_opennings); \ + kg, \ + kg->kg_concurrency, \ + kg->kg_avail_opennings); \ /* KASSERT((kg->kg_avail_opennings >= 0), \ ("slots out of whack"));*/ \ } while (0) @@ -1399,8 +1399,6 @@ ke = td->td_kse; return (ke->ke_pctcpu); - - return (0); } void From owner-p4-projects@FreeBSD.ORG Mon Jul 3 06:45:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AE65916A61B; Mon, 3 Jul 2006 06:45:30 +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 6CA7016A5A2 for ; Mon, 3 Jul 2006 06:45:30 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C698443D48 for ; Mon, 3 Jul 2006 06:45:29 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k636jTmN043289 for ; Mon, 3 Jul 2006 06:45:29 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k636jRXa043277 for perforce@freebsd.org; Mon, 3 Jul 2006 06:45:27 GMT (envelope-from imp@freebsd.org) Date: Mon, 3 Jul 2006 06:45:27 GMT Message-Id: <200607030645.k636jRXa043277@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100466 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 06:45:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=100466 Change 100466 by imp@imp_plunger on 2006/07/03 06:44:59 IFC @100462 Affected files ... .. //depot/projects/arm/src/sys/amd64/amd64/pmap.c#17 integrate .. //depot/projects/arm/src/sys/amd64/conf/NOTES#9 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#9 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#9 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#9 integrate .. //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#9 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_pio.c#13 integrate .. //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#33 integrate .. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_proto.h#11 integrate .. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscall.h#11 integrate .. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscalls.c#11 integrate .. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_sysent.c#11 integrate .. //depot/projects/arm/src/sys/compat/freebsd32/syscalls.master#11 integrate .. //depot/projects/arm/src/sys/compat/linprocfs/linprocfs.c#8 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_ipc.c#4 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_util.h#5 integrate .. //depot/projects/arm/src/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_ipc.c#3 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_proto.h#4 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_syscall.h#4 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_syscallnames.c#4 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_sysent.c#4 integrate .. //depot/projects/arm/src/sys/compat/svr4/syscalls.master#4 integrate .. //depot/projects/arm/src/sys/conf/NOTES#25 integrate .. //depot/projects/arm/src/sys/conf/files#32 integrate .. //depot/projects/arm/src/sys/conf/files.amd64#12 integrate .. //depot/projects/arm/src/sys/conf/files.i386#14 integrate .. //depot/projects/arm/src/sys/conf/files.ia64#6 integrate .. //depot/projects/arm/src/sys/conf/kern.mk#6 integrate .. //depot/projects/arm/src/sys/conf/kern.pre.mk#4 integrate .. //depot/projects/arm/src/sys/conf/kmod.mk#11 integrate .. //depot/projects/arm/src/sys/conf/options#23 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-all.h#13 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-chipset.c#18 integrate .. //depot/projects/arm/src/sys/dev/ata/atapi-cd.c#6 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bge.c#17 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bgereg.h#12 integrate .. //depot/projects/arm/src/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/arm/src/sys/dev/mfi/mfi.c#6 integrate .. //depot/projects/arm/src/sys/dev/mii/acphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/amphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/arm/src/sys/dev/mii/brgphy.c#7 integrate .. //depot/projects/arm/src/sys/dev/mii/ciphy.c#4 integrate .. //depot/projects/arm/src/sys/dev/mii/e1000phy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/exphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/arm/src/sys/dev/mii/lxtphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/arm/src/sys/dev/mii/nsgphy.c#4 integrate .. //depot/projects/arm/src/sys/dev/mii/nsphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/pnaphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/qsphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/rgephy.c#5 integrate .. //depot/projects/arm/src/sys/dev/mii/rlphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/arm/src/sys/dev/mii/tdkphy.c#4 integrate .. //depot/projects/arm/src/sys/dev/mii/tlphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/ukphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/xmphy.c#3 integrate .. //depot/projects/arm/src/sys/dev/nfe/if_nfe.c#2 integrate .. //depot/projects/arm/src/sys/dev/nfe/if_nfereg.h#2 integrate .. //depot/projects/arm/src/sys/dev/nfe/if_nfevar.h#2 integrate .. //depot/projects/arm/src/sys/dev/puc/puc.c#8 integrate .. //depot/projects/arm/src/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/arm/src/sys/dev/puc/puc_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/puc/puc_pci.c#5 integrate .. //depot/projects/arm/src/sys/dev/puc/pucdata.c#6 integrate .. //depot/projects/arm/src/sys/dev/re/if_re.c#13 integrate .. //depot/projects/arm/src/sys/dev/sio/sio.c#6 integrate .. //depot/projects/arm/src/sys/dev/usb/if_ural.c#11 integrate .. //depot/projects/arm/src/sys/dev/usb/uplcom.c#7 integrate .. //depot/projects/arm/src/sys/dev/usb/usbdevs#17 integrate .. //depot/projects/arm/src/sys/fs/pseudofs/pseudofs_vnops.c#5 integrate .. //depot/projects/arm/src/sys/i386/conf/NOTES#15 integrate .. //depot/projects/arm/src/sys/i386/conf/XBOX#6 integrate .. //depot/projects/arm/src/sys/i386/i386/pmap.c#14 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_proto.h#10 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_syscall.h#10 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_sysent.c#10 integrate .. //depot/projects/arm/src/sys/i386/linux/syscalls.master#10 integrate .. //depot/projects/arm/src/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/arm/src/sys/ia64/ia64/pmap.c#8 integrate .. //depot/projects/arm/src/sys/ia64/ia64/trap.c#5 integrate .. //depot/projects/arm/src/sys/ia64/include/md_var.h#3 integrate .. //depot/projects/arm/src/sys/kern/kern_descrip.c#10 integrate .. //depot/projects/arm/src/sys/kern/kern_fork.c#8 integrate .. //depot/projects/arm/src/sys/kern/kern_ktrace.c#6 integrate .. //depot/projects/arm/src/sys/kern/kern_module.c#5 integrate .. //depot/projects/arm/src/sys/kern/kern_thread.c#10 integrate .. //depot/projects/arm/src/sys/kern/sched_4bsd.c#8 integrate .. //depot/projects/arm/src/sys/kern/sched_core.c#3 integrate .. //depot/projects/arm/src/sys/kern/subr_firmware.c#5 integrate .. //depot/projects/arm/src/sys/kern/syscalls.master#13 integrate .. //depot/projects/arm/src/sys/kern/sysv_sem.c#4 integrate .. //depot/projects/arm/src/sys/kern/uipc_usrreq.c#12 integrate .. //depot/projects/arm/src/sys/kern/vfs_init.c#4 integrate .. //depot/projects/arm/src/sys/kern/vfs_mount.c#18 integrate .. //depot/projects/arm/src/sys/kern/vfs_subr.c#19 integrate .. //depot/projects/arm/src/sys/modules/Makefile#23 integrate .. //depot/projects/arm/src/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/arm/src/sys/modules/netgraph/Makefile#4 integrate .. //depot/projects/arm/src/sys/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/nfe/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/streams/Makefile#2 integrate .. //depot/projects/arm/src/sys/modules/svr4/Makefile#4 integrate .. //depot/projects/arm/src/sys/net/if.c#12 integrate .. //depot/projects/arm/src/sys/net/if_atmsubr.c#3 integrate .. //depot/projects/arm/src/sys/net/if_enc.c#1 branch .. //depot/projects/arm/src/sys/net/if_gif.c#6 integrate .. //depot/projects/arm/src/sys/net/if_stf.c#5 integrate .. //depot/projects/arm/src/sys/net/if_tun.c#4 integrate .. //depot/projects/arm/src/sys/net/if_types.h#4 integrate .. //depot/projects/arm/src/sys/net/if_vlan.c#11 integrate .. //depot/projects/arm/src/sys/netgraph/ng_tag.c#1 branch .. //depot/projects/arm/src/sys/netgraph/ng_tag.h#1 branch .. //depot/projects/arm/src/sys/netinet/if_ether.c#11 integrate .. //depot/projects/arm/src/sys/netinet/in_pcb.c#10 integrate .. //depot/projects/arm/src/sys/netinet/ip_divert.c#5 integrate .. //depot/projects/arm/src/sys/netinet/ip_fw2.c#15 integrate .. //depot/projects/arm/src/sys/netinet/ip_output.c#11 integrate .. //depot/projects/arm/src/sys/netinet/tcp_input.c#14 integrate .. //depot/projects/arm/src/sys/netinet6/in6.c#6 integrate .. //depot/projects/arm/src/sys/netinet6/in6_cksum.c#4 integrate .. //depot/projects/arm/src/sys/netinet6/in6_pcb.c#8 integrate .. //depot/projects/arm/src/sys/netinet6/in6_var.h#4 integrate .. //depot/projects/arm/src/sys/netinet6/ipsec.c#6 integrate .. //depot/projects/arm/src/sys/netipsec/ipsec.h#4 integrate .. //depot/projects/arm/src/sys/netipsec/ipsec_input.c#3 integrate .. //depot/projects/arm/src/sys/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/arm/src/sys/netipsec/ipsec_output.c#3 integrate .. //depot/projects/arm/src/sys/netipsec/xform_ipip.c#3 integrate .. //depot/projects/arm/src/sys/nfsclient/bootp_subr.c#3 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_diskless.c#5 integrate .. //depot/projects/arm/src/sys/pci/agp_i810.c#8 integrate .. //depot/projects/arm/src/sys/pci/if_rlreg.h#6 integrate .. //depot/projects/arm/src/sys/powerpc/powerpc/mmu_oea.c#5 integrate .. //depot/projects/arm/src/sys/sys/syscallsubr.h#7 integrate .. //depot/projects/arm/src/sys/vm/vm_page.c#12 integrate Differences ... ==== //depot/projects/arm/src/sys/amd64/amd64/pmap.c#17 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.559 2006/06/25 22:22:37 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); /* * Manages physical address maps. @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1979,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2145,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2582,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2674,7 +2668,7 @@ PHYS_TO_DMAP(VM_PAGE_TO_PHYS(dstmpde)); pde = &pde[pmap_pde_index(addr)]; if (*pde == 0) { - *pde = srcptepaddr; + *pde = srcptepaddr & ~PG_W; dst_pmap->pm_stats.resident_count += NBPDR / PAGE_SIZE; } else @@ -2708,11 +2702,12 @@ pmap_try_insert_pv_entry(dst_pmap, addr, PHYS_TO_VM_PAGE(ptetemp & PG_FRAME))) { /* - * Clear the modified and + * Clear the wired, modified, and * accessed (referenced) bits * during the copy. */ - *dst_pte = ptetemp & ~(PG_M | PG_A); + *dst_pte = ptetemp & ~(PG_W | PG_M | + PG_A); dst_pmap->pm_stats.resident_count++; } else pmap_unwire_pte_hold(dst_pmap, addr, @@ -2795,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2981,7 +2974,7 @@ static __inline void pmap_clear_ptes(vm_page_t m, long bit) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t pbits, *pte; @@ -3051,35 +3044,26 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if (pte != NULL && (*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; if (rtval > 4) { PMAP_UNLOCK(pmap); @@ -3089,7 +3073,6 @@ PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3124,9 +3107,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3150,9 +3131,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3172,9 +3151,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/arm/src/sys/amd64/conf/NOTES#9 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.56 2006/06/12 20:38:17 jhb Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.57 2006/06/26 23:41:06 obrien Exp $ # # @@ -223,6 +223,7 @@ # (requires miibus) # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters +# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) # nve: nVidia nForce MCP on-board Ethernet Networking # ral: Ralink Technology IEEE 802.11 wireless adapter # ural: Ralink Technology RT2500USB IEEE 802.11 wireless adapter @@ -233,6 +234,7 @@ options ED_SIC device iwi device ipw +device nfe # nVidia nForce MCP on-board Ethernet Networking device nve # nVidia nForce MCP on-board Ethernet Networking device ral device ural ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#9 (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.14 2006/06/26 18:37:35 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.12 2006/06/26 18:36:16 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#9 (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.14 2006/06/26 18:37:35 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.12 2006/06/26 18:36:16 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#9 (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.14 2006/06/26 18:37:35 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.12 2006/06/26 18:36:16 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.16 2006/06/27 18:32:16 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp */ #include @@ -41,8 +41,8 @@ { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_STAT }, /* 18 = linux_stat */ { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_LSEEK }, /* 19 = linux_lseek */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_GETPID }, /* 20 = linux_getpid */ - { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ - { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ + { SYF_MPSAFE | AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ + { SYF_MPSAFE | AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_SETUID }, /* 23 = linux_setuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_GETUID }, /* 24 = linux_getuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_SETTIMEOFDAY }, /* 25 = linux_stime */ @@ -72,7 +72,7 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_GETEUID }, /* 49 = linux_geteuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_GETEGID }, /* 50 = linux_getegid16 */ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ - { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ + { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ @@ -137,7 +137,7 @@ { SYF_MPSAFE | AS(linux_wait4_args), (sy_call_t *)linux_wait4, AUE_WAIT4 }, /* 114 = linux_wait4 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_swapoff, AUE_SWAPOFF }, /* 115 = linux_swapoff */ { SYF_MPSAFE | AS(linux_sysinfo_args), (sy_call_t *)linux_sysinfo, AUE_NULL }, /* 116 = linux_sysinfo */ - { AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ + { SYF_MPSAFE | AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ { SYF_MPSAFE | AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC }, /* 118 = fsync */ { SYF_MPSAFE | AS(linux_sigreturn_args), (sy_call_t *)linux_sigreturn, AUE_SIGRETURN }, /* 119 = linux_sigreturn */ { SYF_MPSAFE | AS(linux_clone_args), (sy_call_t *)linux_clone, AUE_RFORK }, /* 120 = linux_clone */ ==== //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#9 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.12 2006/06/26 18:36:16 jhb Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -75,10 +75,10 @@ 19 AUE_LSEEK MSTD { int linux_lseek(l_uint fdes, l_off_t off, \ l_int whence); } 20 AUE_GETPID MSTD { int linux_getpid(void); } -21 AUE_MOUNT STD { int linux_mount(char *specialfile, \ +21 AUE_MOUNT MSTD { int linux_mount(char *specialfile, \ char *dir, char *filesystemtype, \ l_ulong rwflag, void *data); } -22 AUE_UMOUNT STD { int linux_oldumount(char *path); } +22 AUE_UMOUNT MSTD { int linux_oldumount(char *path); } 23 AUE_SETUID MSTD { int linux_setuid16(l_uid16_t uid); } 24 AUE_GETUID MSTD { int linux_getuid16(void); } 25 AUE_SETTIMEOFDAY MSTD { int linux_stime(void); } @@ -111,7 +111,7 @@ 49 AUE_GETEUID MSTD { int linux_geteuid16(void); } 50 AUE_GETEGID MSTD { int linux_getegid16(void); } 51 AUE_ACCT MNOPROTO { int acct(char *path); } -52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); } +52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock 54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -212,7 +212,7 @@ struct l_rusage *rusage); } 115 AUE_SWAPOFF MSTD { int linux_swapoff(void); } 116 AUE_NULL MSTD { int linux_sysinfo(struct l_sysinfo *info); } -117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \ +117 AUE_NULL MSTD { int linux_ipc(l_uint what, l_int arg1, \ l_int arg2, l_int arg3, void *ptr, \ l_long arg5); } 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } ==== //depot/projects/arm/src/sys/arm/at91/at91_pio.c#13 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.1 2006/03/24 07:39:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#33 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.6 2006/05/13 23:41:16 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.7 2006/07/02 03:45:33 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_proto.h#11 (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.55 2006/06/26 18:37:36 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.66 2006/06/26 18:35:57 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.56 2006/06/27 14:47:07 jhb Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.67 2006/06/27 14:46:30 jhb Exp */ #ifndef _FREEBSD32_SYSPROTO_H_ ==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscall.h#11 (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.53 2006/06/26 18:37:36 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.66 2006/06/26 18:35:57 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.54 2006/06/27 14:47:07 jhb Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.67 2006/06/27 14:46:30 jhb Exp */ #define FREEBSD32_SYS_syscall 0 ==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscalls.c#11 (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.44 2006/06/26 18:37:36 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.66 2006/06/26 18:35:57 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.45 2006/06/27 14:47:08 jhb Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.67 2006/06/27 14:46:30 jhb Exp */ const char *freebsd32_syscallnames[] = { ==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_sysent.c#11 (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.54 2006/06/26 18:37:36 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.66 2006/06/26 18:35:57 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.55 2006/06/27 14:47:08 jhb Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.67 2006/06/27 14:46:30 jhb Exp */ #include "opt_compat.h" @@ -53,8 +53,8 @@ { compat4(SYF_MPSAFE | AS(freebsd4_freebsd32_getfsstat_args),freebsd32_getfsstat), AUE_GETFSSTAT }, /* 18 = old freebsd32_getfsstat */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 19 = obsolete olseek */ { SYF_MPSAFE | 0, (sy_call_t *)getpid, AUE_GETPID }, /* 20 = getpid */ - { AS(mount_args), (sy_call_t *)mount, AUE_MOUNT }, /* 21 = mount */ - { AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT }, /* 22 = unmount */ + { SYF_MPSAFE | AS(mount_args), (sy_call_t *)mount, AUE_MOUNT }, /* 21 = mount */ + { SYF_MPSAFE | AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT }, /* 22 = unmount */ { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid, AUE_SETUID }, /* 23 = setuid */ { SYF_MPSAFE | 0, (sy_call_t *)getuid, AUE_GETUID }, /* 24 = getuid */ { SYF_MPSAFE | 0, (sy_call_t *)geteuid, AUE_GETEUID }, /* 25 = geteuid */ @@ -410,7 +410,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 375 = nfsclnt */ { SYF_MPSAFE | AS(eaccess_args), (sy_call_t *)eaccess, AUE_NULL }, /* 376 = eaccess */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 377 = afs_syscall */ - { AS(nmount_args), (sy_call_t *)nmount, AUE_NULL }, /* 378 = nmount */ + { SYF_MPSAFE | AS(nmount_args), (sy_call_t *)nmount, AUE_NULL }, /* 378 = nmount */ { SYF_MPSAFE | 0, (sy_call_t *)kse_exit, AUE_NULL }, /* 379 = kse_exit */ { SYF_MPSAFE | AS(kse_wakeup_args), (sy_call_t *)kse_wakeup, AUE_NULL }, /* 380 = kse_wakeup */ { SYF_MPSAFE | AS(kse_create_args), (sy_call_t *)kse_create, AUE_NULL }, /* 381 = kse_create */ ==== //depot/projects/arm/src/sys/compat/freebsd32/syscalls.master#11 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.66 2006/06/26 18:35:57 jhb Exp $ + $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.67 2006/06/27 14:46:30 jhb Exp $ ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 ; from: src/sys/kern/syscalls.master 1.107 ; @@ -79,9 +79,9 @@ int flags); } 19 AUE_LSEEK OBSOL olseek 20 AUE_GETPID MNOPROTO { pid_t getpid(void); } -21 AUE_MOUNT NOPROTO { int mount(char *type, char *path, \ +21 AUE_MOUNT MNOPROTO { int mount(char *type, char *path, \ int flags, caddr_t data); } -22 AUE_UMOUNT NOPROTO { int unmount(char *path, int flags); } +22 AUE_UMOUNT MNOPROTO { int unmount(char *path, int flags); } 23 AUE_SETUID MNOPROTO { int setuid(uid_t uid); } 24 AUE_GETUID MNOPROTO { uid_t getuid(void); } 25 AUE_GETEUID MNOPROTO { uid_t geteuid(void); } @@ -644,7 +644,7 @@ 375 AUE_NULL UNIMPL nfsclnt 376 AUE_NULL MNOPROTO { int eaccess(char *path, int flags); } 377 AUE_NULL UNIMPL afs_syscall -378 AUE_NULL NOPROTO { int nmount(struct iovec *iovp, \ +378 AUE_NULL MNOPROTO { int nmount(struct iovec *iovp, \ unsigned int iovcnt, int flags); } 379 AUE_NULL MNOPROTO { int kse_exit(void); } 380 AUE_NULL MNOPROTO { int kse_wakeup(struct kse_mailbox *mbx); } ==== //depot/projects/arm/src/sys/compat/linprocfs/linprocfs.c#8 (text+ko) ==== @@ -40,7 +40,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linprocfs/linprocfs.c,v 1.95 2006/06/12 18:14:49 des Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linprocfs/linprocfs.c,v 1.96 2006/06/27 20:11:58 netchild Exp $"); #include #include @@ -63,6 +63,7 @@ #include #include #include +#include #include #include #include @@ -106,6 +107,22 @@ #define P2B(x) ((x) << PAGE_SHIFT) /* pages to bytes */ #define P2K(x) ((x) << (PAGE_SHIFT - 10)) /* pages to kbytes */ +/** + * @brief Mapping of ki_stat in struct kinfo_proc to the linux state + * + * The linux procfs state field displays one of the characters RSDZTW to + * denote running, sleeping in an interruptible wait, waiting in an + * uninteruptible disk sleep, a zombie process, process is being traced + * or stopped, or process is paging respectively. + * + * Our struct kinfo_proc contains the variable ki_stat which contains a + * value out of SIDL, SRUN, SSLEEP, SSTOP, SZOMB, SWAIT and SLOCK. + * + * This character array is used with ki_stati-1 as an index and tries to + * map our states to suitable linux states. + */ +static char *linux_state = "RRSTZDD"; + /* * Filler function for proc/meminfo */ @@ -451,44 +468,51 @@ sbuf_printf(sb, "%d", p->p_pid); #define PS_ADD(name, fmt, arg) sbuf_printf(sb, " " fmt, arg) PS_ADD("comm", "(%s)", p->p_comm); - PS_ADD("statr", "%c", '0'); /* XXX */ + KASSERT(kp.ki_stat <= sizeof(linux_state), + ("linprocfs: don't know how to handle unknown FreeBSD state")); + PS_ADD("state", "%c", linux_state[kp.ki_stat - 1]); PS_ADD("ppid", "%d", p->p_pptr ? p->p_pptr->p_pid : 0); PS_ADD("pgrp", "%d", p->p_pgid); PS_ADD("session", "%d", p->p_session->s_sid); PROC_UNLOCK(p); PS_ADD("tty", "%d", 0); /* XXX */ - PS_ADD("tpgid", "%d", 0); /* XXX */ + PS_ADD("tpgid", "%d", kp.ki_tpgid); PS_ADD("flags", "%u", 0); /* XXX */ - PS_ADD("minflt", "%u", 0); /* XXX */ - PS_ADD("cminflt", "%u", 0); /* XXX */ - PS_ADD("majflt", "%u", 0); /* XXX */ - PS_ADD("cminflt", "%u", 0); /* XXX */ - PS_ADD("utime", "%d", 0); /* XXX */ - PS_ADD("stime", "%d", 0); /* XXX */ - PS_ADD("cutime", "%d", 0); /* XXX */ - PS_ADD("cstime", "%d", 0); /* XXX */ - PS_ADD("counter", "%d", 0); /* XXX */ - PS_ADD("priority", "%d", 0); /* XXX */ - PS_ADD("timeout", "%u", 0); /* XXX */ - PS_ADD("itrealvalue", "%u", 0); /* XXX */ - PS_ADD("starttime", "%d", 0); /* XXX */ - PS_ADD("vsize", "%ju", (uintmax_t)kp.ki_size); - PS_ADD("rss", "%ju", P2K((uintmax_t)kp.ki_rssize)); - PS_ADD("rlim", "%u", 0); /* XXX */ + PS_ADD("minflt", "%lu", kp.ki_rusage.ru_minflt); + PS_ADD("cminflt", "%lu", kp.ki_rusage_ch.ru_minflt); + PS_ADD("majflt", "%lu", kp.ki_rusage.ru_majflt); + PS_ADD("cmajflt", "%lu", kp.ki_rusage_ch.ru_majflt); + PS_ADD("utime", "%ld", T2J(tvtohz(&kp.ki_rusage.ru_utime))); + PS_ADD("stime", "%ld", T2J(tvtohz(&kp.ki_rusage.ru_stime))); + PS_ADD("cutime", "%ld", T2J(tvtohz(&kp.ki_rusage_ch.ru_utime))); + PS_ADD("cstime", "%ld", T2J(tvtohz(&kp.ki_rusage_ch.ru_stime))); + PS_ADD("priority", "%d", kp.ki_pri.pri_user); + PS_ADD("nice", "%d", kp.ki_nice); /* 19 (nicest) to -19 */ + PS_ADD("0", "%d", 0); /* removed field */ + PS_ADD("itrealvalue", "%d", 0); /* XXX */ + /* XXX: starttime is not right, it is the _same_ for _every_ process. + It should be the number of jiffies between system boot and process + start. */ + PS_ADD("starttime", "%lu", T2J(tvtohz(&kp.ki_start))); + PS_ADD("vsize", "%ju", P2K((uintmax_t)kp.ki_size)); + PS_ADD("rss", "%ju", (uintmax_t)kp.ki_rssize); + PS_ADD("rlim", "%lu", kp.ki_rusage.ru_maxrss); PS_ADD("startcode", "%u", (unsigned)0); PS_ADD("endcode", "%u", 0); /* XXX */ PS_ADD("startstack", "%u", 0); /* XXX */ - PS_ADD("esp", "%u", 0); /* XXX */ - PS_ADD("eip", "%u", 0); /* XXX */ - PS_ADD("signal", "%d", 0); /* XXX */ - PS_ADD("blocked", "%d", 0); /* XXX */ - PS_ADD("sigignore", "%d", 0); /* XXX */ - PS_ADD("sigcatch", "%d", 0); /* XXX */ + PS_ADD("kstkesp", "%u", 0); /* XXX */ + PS_ADD("kstkeip", "%u", 0); /* XXX */ + PS_ADD("signal", "%u", 0); /* XXX */ + PS_ADD("blocked", "%u", 0); /* XXX */ + PS_ADD("sigignore", "%u", 0); /* XXX */ + PS_ADD("sigcatch", "%u", 0); /* XXX */ PS_ADD("wchan", "%u", 0); /* XXX */ - PS_ADD("nswap", "%lu", (long unsigned)0); /* XXX */ - PS_ADD("cnswap", "%lu", (long unsigned)0); /* XXX */ + PS_ADD("nswap", "%lu", kp.ki_rusage.ru_nswap); + PS_ADD("cnswap", "%lu", kp.ki_rusage_ch.ru_nswap); PS_ADD("exitsignal", "%d", 0); /* XXX */ - PS_ADD("processor", "%d", 0); /* XXX */ + PS_ADD("processor", "%u", kp.ki_lastcpu); + PS_ADD("rt_priority", "%u", 0); /* XXX */ /* >= 2.5.19 */ + PS_ADD("policy", "%u", kp.ki_pri.pri_class); /* >= 2.5.19 */ #undef PS_ADD sbuf_putc(sb, '\n'); ==== //depot/projects/arm/src/sys/compat/linux/linux_ipc.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ipc.c,v 1.46 2006/03/19 11:10:33 ru Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ipc.c,v 1.47 2006/06/27 18:28:49 jhb Exp $"); #include #include @@ -491,69 +491,56 @@ linux_semctl(struct thread *td, struct linux_semctl_args *args) { struct l_semid_ds linux_semid; - struct __semctl_args /* { - int semid; - int semnum; - int cmd; - union semun *arg; - } */ bsd_args; struct l_seminfo linux_seminfo; - int error; - union semun *unptr; - caddr_t sg; - - sg = stackgap_init(); + struct semid_ds semid; + union semun semun; + int cmd, error; - /* Make sure the arg parameter can be copied in. */ - unptr = stackgap_alloc(&sg, sizeof(union semun)); - bcopy(&args->arg, unptr, sizeof(union semun)); - - bsd_args.semid = args->semid; - bsd_args.semnum = args->semnum; - bsd_args.arg = unptr; - switch (args->cmd & ~LINUX_IPC_64) { case LINUX_IPC_RMID: - bsd_args.cmd = IPC_RMID; + cmd = IPC_RMID; break; case LINUX_GETNCNT: - bsd_args.cmd = GETNCNT; + cmd = GETNCNT; break; case LINUX_GETPID: - bsd_args.cmd = GETPID; + cmd = GETPID; break; case LINUX_GETVAL: - bsd_args.cmd = GETVAL; + cmd = GETVAL; break; case LINUX_GETZCNT: - bsd_args.cmd = GETZCNT; + cmd = GETZCNT; break; case LINUX_SETVAL: - bsd_args.cmd = SETVAL; + cmd = SETVAL; + semun.val = args->arg.val; break; case LINUX_IPC_SET: - bsd_args.cmd = IPC_SET; + cmd = IPC_SET; error = linux_semid_pullup(args->cmd & LINUX_IPC_64, &linux_semid, (caddr_t)PTRIN(args->arg.buf)); if (error) return (error); - unptr->buf = stackgap_alloc(&sg, sizeof(struct semid_ds)); - linux_to_bsd_semid_ds(&linux_semid, unptr->buf); - return __semctl(td, &bsd_args); + linux_to_bsd_semid_ds(&linux_semid, &semid); + semun.buf = &semid; + return kern_semctl(td, args->semid, args->semnum, cmd, &semun, + UIO_SYSSPACE); case LINUX_IPC_STAT: case LINUX_SEM_STAT: if((args->cmd & ~LINUX_IPC_64) == LINUX_IPC_STAT) - bsd_args.cmd = IPC_STAT; + cmd = IPC_STAT; else - bsd_args.cmd = SEM_STAT; - unptr->buf = stackgap_alloc(&sg, sizeof(struct semid_ds)); - error = __semctl(td, &bsd_args); + cmd = SEM_STAT; + semun.buf = &semid; + error = kern_semctl(td, args->semid, args->semnum, cmd, &semun, + UIO_SYSSPACE); if (error) - return error; - td->td_retval[0] = (bsd_args.cmd == SEM_STAT) ? - IXSEQ_TO_IPCID(bsd_args.semid, unptr->buf->sem_perm) : + return (error); + td->td_retval[0] = (cmd == SEM_STAT) ? + IXSEQ_TO_IPCID(args->semid, semid.sem_perm) : 0; - bsd_to_linux_semid_ds(unptr->buf, &linux_semid); + bsd_to_linux_semid_ds(&semid, &linux_semid); return (linux_semid_pushdown(args->cmd & LINUX_IPC_64, &linux_semid, (caddr_t)PTRIN(args->arg.buf))); case LINUX_IPC_INFO: @@ -580,7 +567,8 @@ args->cmd & ~LINUX_IPC_64); return EINVAL; } - return __semctl(td, &bsd_args); + return kern_semctl(td, args->semid, args->semnum, cmd, &semun, + UIO_USERSPACE); } int ==== //depot/projects/arm/src/sys/compat/linux/linux_util.h#5 (text+ko) ==== @@ -28,7 +28,7 @@ * * from: svr4_util.h,v 1.5 1994/11/18 02:54:31 christos Exp * from: linux_util.h,v 1.2 1995/03/05 23:23:50 fvdl Exp - * $FreeBSD: src/sys/compat/linux/linux_util.h,v 1.27 2006/05/05 16:10:45 ambrisko Exp $ + * $FreeBSD: src/sys/compat/linux/linux_util.h,v 1.28 2006/06/27 18:30:49 jhb Exp $ */ /* @@ -49,32 +49,6 @@ #include #include -static __inline caddr_t stackgap_init(void); -static __inline void *stackgap_alloc(caddr_t *, size_t); - -#define szsigcode (*(curthread->td_proc->p_sysent->sv_szsigcode)) -#define psstrings (curthread->td_proc->p_sysent->sv_psstrings) - -static __inline caddr_t -stackgap_init() -{ - return (caddr_t)(psstrings - szsigcode - SPARE_USRSPACE); -} - -static __inline void * -stackgap_alloc(sgp, sz) - caddr_t *sgp; - size_t sz; -{ - void *p = (void *) *sgp; - - sz = ALIGN(sz); - if (*sgp + sz > (caddr_t)(psstrings - szsigcode)) - return NULL; - *sgp += sz; - return p; -} - extern const char linux_emul_path[]; int linux_emul_convpath(struct thread *, char *, enum uio_seg, char **, int); ==== //depot/projects/arm/src/sys/compat/svr4/Makefile#2 (text+ko) ==== @@ -1,8 +1,6 @@ # Makefile for syscall tables # -# $FreeBSD: src/sys/compat/svr4/Makefile,v 1.7 2001/09/13 22:02:48 julian Exp $ - -MAINTAINER= newton@freebsd.org +# $FreeBSD: src/sys/compat/svr4/Makefile,v 1.8 2006/07/01 10:51:54 markm Exp $ all: @echo "make sysent only" ==== //depot/projects/arm/src/sys/compat/svr4/svr4_ipc.c#3 (text+ko) ==== @@ -71,7 +71,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_ipc.c,v 1.19 2005/09/28 07:03:02 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_ipc.c,v 1.21 2006/06/27 18:31:36 jhb Exp $"); #include "opt_sysvipc.h" @@ -105,8 +105,6 @@ struct svr4_semid_ds *); static void svr4_to_bsd_semid_ds(const struct svr4_semid_ds *, struct semid_ds *); -static int svr4_setsemun(caddr_t *sgp, union semun **argp, - union semun *usp); static int svr4_semop(struct thread *, void *); static int svr4_semget(struct thread *, void *); static int svr4_semctl(struct thread *, void *); @@ -194,16 +192,6 @@ bds->sem_pad2 = sds->sem_pad2; } -static int -svr4_setsemun(sgp, argp, usp) - caddr_t *sgp; - union semun **argp; - union semun *usp; -{ - *argp = stackgap_alloc(sgp, sizeof(union semun)); - return copyout((caddr_t)usp, *argp, sizeof(union semun)); -} - struct svr4_sys_semctl_args { int what; int semid; @@ -217,108 +205,71 @@ struct thread *td; void *v; { - int error; struct svr4_sys_semctl_args *uap = v; - struct __semctl_args ap; struct svr4_semid_ds ss; - struct semid_ds bs, *bsp; - caddr_t sg = stackgap_init(); - - ap.semid = uap->semid; - ap.semnum = uap->semnum; + struct semid_ds bs; + union semun semun; + int cmd, error; switch (uap->cmd) { case SVR4_SEM_GETZCNT: + cmd = GETZCNT; + break; + case SVR4_SEM_GETNCNT: + cmd = GETNCNT; + break; + case SVR4_SEM_GETPID: + cmd = GETPID; + break; + case SVR4_SEM_GETVAL: - switch (uap->cmd) { - case SVR4_SEM_GETZCNT: - ap.cmd = GETZCNT; - break; - case SVR4_SEM_GETNCNT: - ap.cmd = GETNCNT; - break; - case SVR4_SEM_GETPID: - ap.cmd = GETPID; - break; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 3 07:52:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6DDE516A416; Mon, 3 Jul 2006 07:52:56 +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 170DA16A403 for ; Mon, 3 Jul 2006 07:52:56 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BC28343D48 for ; Mon, 3 Jul 2006 07:52:55 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k637qtY6050170 for ; Mon, 3 Jul 2006 07:52:55 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k637qt07050167 for perforce@freebsd.org; Mon, 3 Jul 2006 07:52:55 GMT (envelope-from rdivacky@FreeBSD.org) Date: Mon, 3 Jul 2006 07:52:55 GMT Message-Id: <200607030752.k637qt07050167@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100468 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 07:52:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=100468 Change 100468 by rdivacky@rdivacky_witten on 2006/07/03 07:52:47 Remove the GPL code until the issue is solved. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#4 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#4 (text+ko) ==== @@ -718,31 +718,4 @@ l_uint useable:1; }; -/* macros from linux include/asm-um/ldt-i386.h */ -#define LDT_entry_a(info) \ - ((((info)->base_addr & 0x0000ffff) << 16) | ((info)->limit & 0x0ffff)) - -#define LDT_entry_b(info) \ - (((info)->base_addr & 0xff000000) | \ - (((info)->base_addr & 0x00ff0000) >> 16) | \ - ((info)->limit & 0xf0000) | \ - (((info)->read_exec_only ^ 1) << 9) | \ - ((info)->contents << 10) | \ - (((info)->seg_not_present ^ 1) << 15) | \ - ((info)->seg_32bit << 22) | \ - ((info)->limit_in_pages << 23) | \ - ((info)->useable << 20) | \ - 0x7000) - -#define LDT_empty(info) (\ - (info)->base_addr == 0 && \ - (info)->limit == 0 && \ - (info)->contents == 0 && \ - (info)->read_exec_only == 1 && \ - (info)->seg_32bit == 0 && \ - (info)->limit_in_pages == 0 && \ - (info)->seg_not_present == 1 && \ - (info)->useable == 0 ) - - #endif /* !_I386_LINUX_LINUX_H_ */ From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:27:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3057F16A492; Mon, 3 Jul 2006 09:27:01 +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 E0ACC16A407 for ; Mon, 3 Jul 2006 09:27:00 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F303C43E41 for ; Mon, 3 Jul 2006 09:26:52 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639QqIO064599 for ; Mon, 3 Jul 2006 09:26:52 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639Qqnn064596 for perforce@freebsd.org; Mon, 3 Jul 2006 09:26:52 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 09:26:52 GMT Message-Id: <200607030926.k639Qqnn064596@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100471 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:27:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=100471 Change 100471 by jb@jb_freebsd2 on 2006/07/03 09:25:56 Add a 64 bit definition for the updated libdwarf. Affected files ... .. //depot/projects/dtrace/src/gnu/lib/libdwarf/config.h#4 edit Differences ... ==== //depot/projects/dtrace/src/gnu/lib/libdwarf/config.h#4 (text+ko) ==== @@ -56,6 +56,9 @@ /* Define 1 if sys/types.h defines __uint32_t */ #define HAVE___UINT32_T_IN_SYS_TYPES_H 1 +/* Define 1 if sys/types.h defines __uint64_t */ +#define HAVE___UINT64_T_IN_SYS_TYPES_H 1 + /* Define 1 if R_IA_64_DIR32LSB is defined (might be enum value) */ /* #undef HAVE_R_IA_64_DIR32LSB */ From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:39:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C562316A416; Mon, 3 Jul 2006 09:39:36 +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 8A88716A407 for ; Mon, 3 Jul 2006 09:39:36 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2E95A43D5A for ; Mon, 3 Jul 2006 09:39:34 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639dX1g065246 for ; Mon, 3 Jul 2006 09:39:33 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639dXBD065243 for perforce@freebsd.org; Mon, 3 Jul 2006 09:39:33 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 09:39:33 GMT Message-Id: <200607030939.k639dXBD065243@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100475 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:39:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=100475 Change 100475 by jb@jb_freebsd2 on 2006/07/03 09:38:33 Make the Sparc Solaris definitions use FreeBSD's ELF headers where possible. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/sparc/sys/machelf.h#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/sparc/sys/machelf.h#2 (text) ==== @@ -33,12 +33,19 @@ extern "C" { #endif +#if defined(sun) #include #ifndef _ASM #include #include #include /* for Elf*_Dyn */ #endif /* _ASM */ +#else +#include +#include +#include +#include +#endif /* * Make machine class dependent data types transparent to the common code From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:39:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D587F16A558; Mon, 3 Jul 2006 09:39:37 +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 C569B16A417 for ; Mon, 3 Jul 2006 09:39:36 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A638543D5D for ; Mon, 3 Jul 2006 09:39:34 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639dYGd065252 for ; Mon, 3 Jul 2006 09:39:34 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639dYOi065249 for perforce@freebsd.org; Mon, 3 Jul 2006 09:39:34 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 09:39:34 GMT Message-Id: <200607030939.k639dYOi065249@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100476 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:39:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=100476 Change 100476 by jb@jb_freebsd2 on 2006/07/03 09:38:59 Adjust the 64-bit #ifdefs to apply to FreeBSD too. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/cmd/sgs/libelf/common/newehdr.c#3 edit .. //depot/projects/dtrace/src/contrib/opensolaris/cmd/sgs/libelf/common/newphdr.c#3 edit .. //depot/projects/dtrace/src/contrib/opensolaris/cmd/sgs/libelf/common/update.c#4 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/cmd/sgs/libelf/common/newehdr.c#3 (text) ==== @@ -30,14 +30,14 @@ #pragma ident "@(#)newehdr.c 1.17 05/06/08 SMI" +#if !defined(_ELF64) #if defined(sun) -#if !defined(_ELF64) #pragma weak elf32_newehdr = _elf32_newehdr -#endif #else #include __weak_reference(_elf32_newehdr,elf32_newehdr); #endif +#endif #include "syn.h" #include ==== //depot/projects/dtrace/src/contrib/opensolaris/cmd/sgs/libelf/common/newphdr.c#3 (text) ==== @@ -30,14 +30,14 @@ #pragma ident "@(#)newphdr.c 1.17 05/06/08 SMI" +#if !defined(_ELF64) #if defined(sun) -#if !defined(_ELF64) #pragma weak elf32_newphdr = _elf32_newphdr -#endif #else #include __weak_reference(_elf32_newphdr,elf32_newphdr); #endif +#endif #include "syn.h" #include ==== //depot/projects/dtrace/src/contrib/opensolaris/cmd/sgs/libelf/common/update.c#4 (text) ==== @@ -30,14 +30,14 @@ #pragma ident "@(#)update.c 1.26 06/03/24 SMI" +#if !defined(_ELF64) #if defined(sun) -#if !defined(_ELF64) #pragma weak elf_update = _elf_update -#endif #else #include __weak_reference(_elf_update,elf_update); #endif +#endif #include "syn.h" #include From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:42:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 549E116A47C; Mon, 3 Jul 2006 09:42:43 +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 DAD4F16A415 for ; Mon, 3 Jul 2006 09:42:42 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B616143D66 for ; Mon, 3 Jul 2006 09:42:38 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639gcQg065522 for ; Mon, 3 Jul 2006 09:42:38 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639gcrO065519 for perforce@freebsd.org; Mon, 3 Jul 2006 09:42:38 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 09:42:38 GMT Message-Id: <200607030942.k639gcrO065519@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100477 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:42:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=100477 Change 100477 by jb@jb_freebsd2 on 2006/07/03 09:41:50 I wish Sun would turn up their compiler warning levels and stop their programmers from casting variables and function pointers. Casting always causes problems porting code other other architectures. (I will probably get yelled at for saying this, but it's TRUE!) Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/cvt/alist.c#2 edit .. //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/cvt/merge.c#4 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/cvt/alist.c#2 (text) ==== @@ -171,13 +171,13 @@ { printf("Key: "); if (alist_def_print_cb_key_int == 1) - printf("%5d ", (int)key); + printf("%5lu ", (ulong_t)key); else printf("%s\n", (char *)key); printf("Value: "); if (alist_def_print_cb_value_int == 1) - printf("%5d\n", (int)value); + printf("%5lu\n", (ulong_t)value); else printf("%s\n", (char *)key); ==== //depot/projects/dtrace/src/contrib/opensolaris/tools/ctf/cvt/merge.c#4 (text) ==== @@ -181,10 +181,10 @@ { debug(3, "Adding mapping %u => %u\n", srcid, tgtid); - assert(!alist_find(ta, (void *)srcid, NULL)); + assert(!alist_find(ta, (void *)(ulong_t)srcid, NULL)); assert(srcid != 0 && tgtid != 0); - alist_add(ta, (void *)srcid, (void *)tgtid); + alist_add(ta, (void *)(ulong_t)srcid, (void *)(ulong_t)tgtid); } static tid_t @@ -192,7 +192,7 @@ { long ltgtid; - if (alist_find(ta, (void *)srcid, (void **)<gtid)) + if (alist_find(ta, (void *)(ulong_t)srcid, (void **)<gtid)) return ((int)ltgtid); else return (0); @@ -908,7 +908,7 @@ redir_mstr_fwd_cb(void *name, void *value, void *arg) { tdesc_t *fwd = name; - int defnid = (int)value; + int defnid = (ulong_t)value; redir_mstr_data_t *rmd = arg; tdesc_t template; tdesc_t *defn; From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:42:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 463FF16A55E; Mon, 3 Jul 2006 09:42:45 +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 E82EA16A55C for ; Mon, 3 Jul 2006 09:42:44 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2C5DB43D5E for ; Mon, 3 Jul 2006 09:42:39 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639gdSx065529 for ; Mon, 3 Jul 2006 09:42:39 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639gcbG065525 for perforce@freebsd.org; Mon, 3 Jul 2006 09:42:38 GMT (envelope-from clem1@FreeBSD.org) Date: Mon, 3 Jul 2006 09:42:38 GMT Message-Id: <200607030942.k639gcbG065525@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100478 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:42:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=100478 Change 100478 by clem1@clem1_ipv6vulns on 2006/07/03 09:42:25 ISIC port to IPv6... almost done, icmpsicng needs more improvements. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/ChangeLog#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/Makefile.in#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/TODO#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/configure#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/configure.in#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/icmpsicng.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.c#3 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/tcpsicng.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/udpsicng.c#1 add Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.c#3 (text+ko) ==== @@ -214,7 +214,7 @@ } printf("Compiled against Libnet %s\n", LIBNET_VERSION); - puts("Installing Signal Handlers.\n"); + puts("Installing Signal Handlers."); if (signal(SIGTERM, &sighandler) == SIG_ERR) puts("Failed to install signal handler for SIGTERM"); if (signal(SIGINT, &sighandler) == SIG_ERR) @@ -425,25 +425,15 @@ (u_int16_t) payload[cx] = rand() & 0xffff; (u_int16_t) payload[payload_s] = rand() & 0xffff; - - /* - if (printout) { - printf("%s ->", - inet_ntoa(*((struct in_addr*) &src_ip ))); - printf(" %s tos[%i] id[%i] ver[%i] frag[%i]\n", - inet_ntoa(*((struct in_addr*) &dst_ip )), tos, - id, ver, frag_off); - } - */ if (skip <= acx) { for (cx = 0; cx < repeat; cx++) { #ifdef LIBNET_BSDISH_OS - c = libnet_write_link(l, buf, 0xe + 0x28 + payload_s); + c = libnet_write_link(l, buf, off + payload_s); #else /* !BSD */ - c = libnet_write_raw_ipv6(l, buf, 0xe + 0x28 + payload_s); + c = libnet_write_raw_ipv6(l, buf, off + payload_s); #endif if (c != -1) datapushed += c; @@ -490,9 +480,9 @@ fprintf(stderr, "usage: %s [-v] -s -d " #ifdef LIBNET_BSDISH_OS - "-D \n [-S ]" + "-i -D \n [-S ]" #else /* !BSD */ - "\n " + "\n[-i ] " #endif "[-p ] [-k ]\n" " [-x ] [-r ]\n" @@ -505,9 +495,9 @@ " [-v] causes packet info to be printed out -- DEBUGGING\n\n" " ex: -s a.b.c.d -d a.b.c.d -D a:b:c:d:e:f -F100\n" " 100%% of the packets will have fragments header\n" - " ex: -s a.b.c.d -d a.b.c.d -D a:b:c:d:e:f -p 100 -r 103334\n" + " ex: -s a:b:c::d -d b:d:c::d -D a:b:c:d:e:f -p 100 -r 103334\n" " ex: -s rand -d rand -D a:b:c:d:e:f -r 23342\n" - " ^^^^ causes random source addr\n" + " ^^^^ causes random source addr and dst addr\n" " ex: -s rand -d rand -D a:b:c:d:e:f -k 10000 -p 10001 -r 666\n" " Will only send the 10001 packet with random seed 666\n" " this is especially useful if you suspect that packet is\n" From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:47:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5AC9816A575; Mon, 3 Jul 2006 09:47:33 +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 340E216A566 for ; Mon, 3 Jul 2006 09:47:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6389543E6D for ; Mon, 3 Jul 2006 09:46:47 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639kicY065766 for ; Mon, 3 Jul 2006 09:46:44 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639kinV065755 for perforce@freebsd.org; Mon, 3 Jul 2006 09:46:44 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 09:46:44 GMT Message-Id: <200607030946.k639kinV065755@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100479 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:47:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=100479 Change 100479 by jb@jb_freebsd2 on 2006/07/03 09:45:57 Remove a pre-processor definition that probably should only be set in a header file if at all. Affected files ... .. //depot/projects/dtrace/src/cddl/lib/libelf/Makefile#4 edit Differences ... ==== //depot/projects/dtrace/src/cddl/lib/libelf/Makefile#4 (text+ko) ==== @@ -39,8 +39,6 @@ .PATH: ${OPENSOLARIS_USR_DISTDIR}/cmd/sgs/libelf/common .PATH: ${OPENSOLARIS_USR_DISTDIR}/cmd/sgs/libelf/misc -CFLAGS+= -D_LONGLONG_TYPE - CFLAGS += -I${.OBJDIR} \ -I${.CURDIR}/../../../contrib \ -I${.CURDIR}/../../../sys/contrib \ From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:48:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 05A4316A47E; Mon, 3 Jul 2006 09:48:42 +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 D5BBB16A47B for ; Mon, 3 Jul 2006 09:48:41 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 474D743E4C for ; Mon, 3 Jul 2006 09:47:51 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639lkeO065824 for ; Mon, 3 Jul 2006 09:47:46 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639lk9s065820 for perforce@freebsd.org; Mon, 3 Jul 2006 09:47:46 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 09:47:46 GMT Message-Id: <200607030947.k639lk9s065820@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100481 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:48:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=100481 Change 100481 by piso@piso_newluxor on 2006/07/03 09:47:15 Execute filters in intr_filter_loop(). In case the filter returns FILTER_SCHEDULE_THREAD, stamp the interrupt handler (ih_need=1) so we can easily find/execute it later in intr_execute_handlers(). Affected files ... .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#5 edit Differences ... ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#5 (text+ko) ==== @@ -637,13 +637,11 @@ continue; } - // XXX - with filters, we will execute only - // handlers marked in ih_need too... /* - * For software interrupt threads, we only execute - * handlers that have their need flag set. Hardware - * interrupt threads always invoke all of their handlers. - */ + * For software interrupt threads, we only execute + * handlers that have their need flag set. Hardware + * interrupt threads always invoke all of their handlers. + */ if (ie->ie_flags & IE_SOFT) { if (!ih->ih_need) continue; @@ -653,8 +651,16 @@ /* Fast handlers are handled in primary interrupt context. */ if (ih->ih_flags & IH_FAST) - continue; + continue; + /* Execute handlers of filters that need it. */ + if (ih->ih_filter != NULL) { + if (!ih->ih_need) + continue; + else + atomic_store_rel_int(&ih->ih_need, 0); + } + /* Execute this handler. */ CTR6(KTR_INTR, "%s: pid %d exec %p(%p) for %s flg=%x", __func__, p->p_pid, (void *)ih->ih_handler, ih->ih_argument, @@ -782,6 +788,7 @@ int ret, ret2 = 0; TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + ih->ih_need = 0; /* * Execute fast interrupt handlers directly. * To support clock handlers, if a handler registers @@ -793,11 +800,10 @@ CTR5(KTR_INTR, "%s: exec %p/%p(%p) for %s", __func__, ih->ih_filter, ih->ih_handler, arg, ih->ih_name); - if (ih->ih_flags & IH_FAST) { - // XXX - actually should call ih_filter()... - ret = ((driver_filter_t *)ih->ih_handler)(arg); - } else { - /* old ithread handler */ + if (ih->ih_filter != NULL) + ret = ih->ih_filter(arg); + else { + /* legacy ithread handler */ ret2 = 1; continue; } @@ -806,11 +812,9 @@ if (ret == FILTER_STRAY) continue; - /* interrupt served, get out of here... */ - if (ret == FILTER_HANDLED) { - ret2 = 0; - break; - } + /* interrupt served in filter */ + if (ret == FILTER_HANDLED) + continue; /* mark handler for later execution */ if (ret == FILTER_SCHEDULE_THREAD) { From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:48:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 89EDE16A59C; Mon, 3 Jul 2006 09:48:44 +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 6701016A596 for ; Mon, 3 Jul 2006 09:48:44 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E86C643DD0 for ; Mon, 3 Jul 2006 09:47:50 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639lk0v065817 for ; Mon, 3 Jul 2006 09:47:46 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639lkHf065814 for perforce@freebsd.org; Mon, 3 Jul 2006 09:47:46 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 09:47:46 GMT Message-Id: <200607030947.k639lkHf065814@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100480 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:48:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=100480 Change 100480 by jb@jb_freebsd2 on 2006/07/03 09:47:08 Add support for UltraSparc. Affected files ... .. //depot/projects/dtrace/src/cddl/usr.bin/sgsmsg/Makefile#8 edit Differences ... ==== //depot/projects/dtrace/src/cddl/usr.bin/sgsmsg/Makefile#8 (text+ko) ==== @@ -18,6 +18,8 @@ .if ${MACHINE_ARCH} == "i386" CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/intel +.elif ${MACHINE_ARCH} == "sparc64" +CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/sparc .endif .PATH: ${OPENSOLARIS_USR_DISTDIR}/cmd/sgs/tools/common From owner-p4-projects@FreeBSD.ORG Mon Jul 3 09:50:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5AFA316A577; Mon, 3 Jul 2006 09:50:28 +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 30B9E16A47C for ; Mon, 3 Jul 2006 09:50:28 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 33A4F43E61 for ; Mon, 3 Jul 2006 09:49:50 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k639nnZR065917 for ; Mon, 3 Jul 2006 09:49:49 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k639nnZA065914 for perforce@freebsd.org; Mon, 3 Jul 2006 09:49:49 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 09:49:49 GMT Message-Id: <200607030949.k639nnZA065914@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100482 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 09:50:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=100482 Change 100482 by piso@piso_newluxor on 2006/07/03 09:49:10 style(9) cleanup: whitespace, newline and data type cleanup. While here, put some XXX for stuff to be fixed later. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#2 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#2 (text+ko) ==== @@ -24,7 +24,7 @@ * SUCH DAMAGE. */ -/*- +/* * Alias_mod.h defines the outside world interfaces for the packet aliasing * modular framework */ @@ -32,13 +32,14 @@ #ifndef _ALIAS_MOD_H_ #define _ALIAS_MOD_H_ -/* protocol handlers struct & function*/ +/* Protocol handlers struct & function. */ -/* packet flow direction */ +/* Packet flow direction. */ #define IN 1 #define OUT 2 -/* working protocol */ +// XXX - use ip.h? +/* Working protocol. */ #define IP 1 #define TCP 2 #define UDP 4 @@ -47,17 +48,16 @@ /* * Data passed to protocol handler module, it must be filled * right before calling find_handler() to determine which - * module is elegible to be called + * module is elegible to be called. */ -struct alias_data { - +struct alias_data { struct alias_link *lnk; struct in_addr *original_address; struct in_addr *alias_address; - u_short *alias_port; - u_int16_t *sport, *dport; - int maxpacketsize; + uint16_t *alias_port; + uint16_t *sport, *dport; + uint16_t maxpacketsize; }; /* @@ -65,8 +65,8 @@ * a protocol handler correctly work. */ +// XXX - use queue(3) struct proto_handler { - u_int pri; /* handler priority */ int16_t dir; /* flow direction */ int16_t proto; /* working protocol */ @@ -77,22 +77,14 @@ struct proto_handler *next; }; -#if __FreeBSD_version >= 500000 +// XXX - use rwlock(9) struct chain { - void *chain; struct mtx mtx; /* lock guarding list */ int busy_count; /* busy count for rw locks */ int want_write; struct cv cv; }; -#else -struct chain { - - void *chain; - int spl; -}; -#endif /* * Used only in userland when libalias needs to keep track of all @@ -101,8 +93,7 @@ */ #define DLL_LEN 32 -struct dll { - +struct dll { char name[DLL_LEN]; /* name of module */ void *handle; /* * ptr to shared obj obtained through @@ -136,6 +127,7 @@ #define OK 1 #define NOK -1 +// XXX - convert all this stuff to use errno.h /* end of handlers */ #define EOH -1 From owner-p4-projects@FreeBSD.ORG Mon Jul 3 10:34:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B56EA16A566; Mon, 3 Jul 2006 10:34:19 +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 68D1516A53A for ; Mon, 3 Jul 2006 10:34:19 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3D91D43F5C for ; Mon, 3 Jul 2006 10:04:09 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63A49GZ067736 for ; Mon, 3 Jul 2006 10:04:09 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63A482x067733 for perforce@freebsd.org; Mon, 3 Jul 2006 10:04:08 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 10:04:08 GMT Message-Id: <200607031004.k63A482x067733@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100483 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 10:34:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=100483 Change 100483 by jb@jb_freebsd2 on 2006/07/03 10:03:27 Change the linker file list function to jhb's version now that his changes in current have been merged. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_probemgmt.c#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_probemgmt.c#5 (text+ko) ==== @@ -241,7 +241,7 @@ } while ((ctl = ctl->mod_next) != &modules); #else - (void) linker_file_listall(dtrace_probe_provide_cb, prv); + (void) linker_file_foreach(dtrace_probe_provide_cb, prv); #endif mutex_exit(&mod_lock); From owner-p4-projects@FreeBSD.ORG Mon Jul 3 10:34:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 74DC416A602; Mon, 3 Jul 2006 10:34:20 +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 DCC9116A5B9 for ; Mon, 3 Jul 2006 10:34:19 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6D8FD43D53 for ; Mon, 3 Jul 2006 10:33:54 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63AXsbm069206 for ; Mon, 3 Jul 2006 10:33:54 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63AXkMS069202 for perforce@freebsd.org; Mon, 3 Jul 2006 10:33:46 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 10:33:46 GMT Message-Id: <200607031033.k63AXkMS069202@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100484 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 10:34:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=100484 Change 100484 by piso@piso_newluxor on 2006/07/03 10:32:54 IFC Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#4 integrate .. //depot/projects/soc2006/intr_filter/amd64/conf/GENERIC#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/conf/NOTES#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_proto.h#4 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_syscall.h#4 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_sysent.c#4 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/syscalls.master#4 integrate .. //depot/projects/soc2006/intr_filter/arm/arm/elf_trampoline.c#4 integrate .. //depot/projects/soc2006/intr_filter/arm/arm/locore.S#2 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/at91_pio.c#4 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/soc2006/intr_filter/arm/at91/at91_piovar.h#1 branch .. //depot/projects/soc2006/intr_filter/arm/at91/files.at91#2 integrate .. //depot/projects/soc2006/intr_filter/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/soc2006/intr_filter/cam/cam_xpt.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/soc2006/intr_filter/compat/linprocfs/linprocfs.c#3 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_misc.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_util.h#2 integrate .. //depot/projects/soc2006/intr_filter/compat/ndis/kern_ndis.c#3 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_ipc.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_misc.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_proto.h#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_syscall.h#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_syscallnames.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_sysent.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/syscalls.master#2 integrate .. //depot/projects/soc2006/intr_filter/conf/NOTES#4 integrate .. //depot/projects/soc2006/intr_filter/conf/files#3 integrate .. //depot/projects/soc2006/intr_filter/conf/files.amd64#2 integrate .. //depot/projects/soc2006/intr_filter/conf/files.i386#2 integrate .. //depot/projects/soc2006/intr_filter/conf/files.ia64#2 integrate .. //depot/projects/soc2006/intr_filter/conf/kern.mk#2 integrate .. //depot/projects/soc2006/intr_filter/conf/kern.pre.mk#2 integrate .. //depot/projects/soc2006/intr_filter/conf/kmod.mk#2 integrate .. //depot/projects/soc2006/intr_filter/conf/options#3 integrate .. //depot/projects/soc2006/intr_filter/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-all.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ath/if_ath.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ath/if_athvar.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/bge/if_bge.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/bge/if_bgereg.h#3 integrate .. //depot/projects/soc2006/intr_filter/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp_pci.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/ispmbox.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/ispreg.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/ispvar.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/soc2006/intr_filter/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mfi/mfi.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/acphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/amphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/bmtphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/brgphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/ciphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/e1000phy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/exphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/inphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/lxtphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/mlphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/nsgphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/nsphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/pnaphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/qsphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/rgephy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/rlphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/ruephy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/tdkphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/tlphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/ukphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/xmphy.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mpt/mpt.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mpt/mpt.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/mpt/mpt_cam.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/mpt/mpt_pci.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/nfe/if_nfe.c#1 branch .. //depot/projects/soc2006/intr_filter/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/soc2006/intr_filter/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/soc2006/intr_filter/dev/puc/puc.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/puc/puc_pccard.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/puc/puc_pci.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/puc/pucdata.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/re/if_re.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/sio/sio.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/if_ural.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/uplcom.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/usbdevs#3 integrate .. //depot/projects/soc2006/intr_filter/fs/pseudofs/pseudofs_vnops.c#2 integrate .. //depot/projects/soc2006/intr_filter/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/geom_gpt.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/conf/GENERIC#4 integrate .. //depot/projects/soc2006/intr_filter/i386/conf/NOTES#3 integrate .. //depot/projects/soc2006/intr_filter/i386/conf/XBOX#3 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/pmap.c#4 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_proto.h#4 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_syscall.h#4 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_sysent.c#4 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/syscalls.master#4 integrate .. //depot/projects/soc2006/intr_filter/ia64/conf/GENERIC#3 integrate .. //depot/projects/soc2006/intr_filter/ia64/disasm/disasm.h#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/disasm/disasm_decode.c#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/disasm/disasm_extract.c#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/disasm/disasm_format.c#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/disasm/disasm_int.h#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/ia64/emulate.c#1 branch .. //depot/projects/soc2006/intr_filter/ia64/ia64/machdep.c#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/ia64/pmap.c#3 integrate .. //depot/projects/soc2006/intr_filter/ia64/ia64/trap.c#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/include/md_var.h#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_descrip.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_fork.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_ktrace.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_linker.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_module.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_thread.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/link_elf.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/link_elf_obj.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/sched_4bsd.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/sched_core.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_bus.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_firmware.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/syscalls.master#2 integrate .. //depot/projects/soc2006/intr_filter/kern/sysv_sem.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_usrreq.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_init.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_mount.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_subr.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_vnops.c#2 integrate .. //depot/projects/soc2006/intr_filter/modules/Makefile#4 integrate .. //depot/projects/soc2006/intr_filter/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/netgraph/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/nfe/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/streams/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/svr4/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/net/if.c#4 integrate .. //depot/projects/soc2006/intr_filter/net/if_atmsubr.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_enc.c#1 branch .. //depot/projects/soc2006/intr_filter/net/if_gif.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_stf.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_tun.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_types.h#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_vlan.c#3 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_freebsd.c#3 integrate .. //depot/projects/soc2006/intr_filter/netgraph/ng_tag.c#1 branch .. //depot/projects/soc2006/intr_filter/netgraph/ng_tag.h#1 branch .. //depot/projects/soc2006/intr_filter/netinet/if_ether.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/in_pcb.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_divert.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_fw2.c#3 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_output.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_input.c#3 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_syncache.c#3 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_usrreq.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_var.h#3 integrate .. //depot/projects/soc2006/intr_filter/netinet6/in6.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet6/in6_cksum.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet6/in6_pcb.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet6/in6_var.h#2 integrate .. //depot/projects/soc2006/intr_filter/netinet6/ipsec.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet6/raw_ip6.c#2 integrate .. //depot/projects/soc2006/intr_filter/netipsec/ipsec.h#2 integrate .. //depot/projects/soc2006/intr_filter/netipsec/ipsec_input.c#2 integrate .. //depot/projects/soc2006/intr_filter/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/soc2006/intr_filter/netipsec/ipsec_output.c#2 integrate .. //depot/projects/soc2006/intr_filter/netipsec/xform_ipip.c#2 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_diskless.c#2 integrate .. //depot/projects/soc2006/intr_filter/nfsserver/nfs_srvcache.c#2 integrate .. //depot/projects/soc2006/intr_filter/nfsserver/nfsrvcache.h#2 integrate .. //depot/projects/soc2006/intr_filter/pc98/conf/GENERIC#3 integrate .. //depot/projects/soc2006/intr_filter/pci/agp_i810.c#2 integrate .. //depot/projects/soc2006/intr_filter/pci/if_rlreg.h#2 integrate .. //depot/projects/soc2006/intr_filter/powerpc/conf/GENERIC#3 integrate .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/mmu_oea.c#4 integrate .. //depot/projects/soc2006/intr_filter/sparc64/conf/GENERIC#3 integrate .. //depot/projects/soc2006/intr_filter/sys/gpt.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/rwlock.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/sx.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/syscallsubr.h#3 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_mmap.c#2 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_page.c#2 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_pageq.c#2 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#4 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); /* * Manages physical address maps. @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1979,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2145,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2582,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2674,7 +2668,7 @@ PHYS_TO_DMAP(VM_PAGE_TO_PHYS(dstmpde)); pde = &pde[pmap_pde_index(addr)]; if (*pde == 0) { - *pde = srcptepaddr; + *pde = srcptepaddr & ~PG_W; dst_pmap->pm_stats.resident_count += NBPDR / PAGE_SIZE; } else @@ -2697,11 +2691,6 @@ * we only virtual copy managed pages */ if ((ptetemp & PG_MANAGED) != 0) { - /* - * We have to check after allocpte for the - * pte still being around... allocpte can - * block. - */ dstmpte = pmap_allocpte(dst_pmap, addr, M_NOWAIT); if (dstmpte == NULL) @@ -2713,14 +2702,16 @@ pmap_try_insert_pv_entry(dst_pmap, addr, PHYS_TO_VM_PAGE(ptetemp & PG_FRAME))) { /* - * Clear the modified and + * Clear the wired, modified, and * accessed (referenced) bits * during the copy. */ - *dst_pte = ptetemp & ~(PG_M | PG_A); + *dst_pte = ptetemp & ~(PG_W | PG_M | + PG_A); dst_pmap->pm_stats.resident_count++; } else - pmap_unwire_pte_hold(dst_pmap, addr, dstmpte); + pmap_unwire_pte_hold(dst_pmap, addr, + dstmpte); if (dstmpte->wire_count >= srcmpte->wire_count) break; } @@ -2799,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2985,7 +2974,7 @@ static __inline void pmap_clear_ptes(vm_page_t m, long bit) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t pbits, *pte; @@ -3055,35 +3044,26 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if (pte != NULL && (*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; if (rtval > 4) { PMAP_UNLOCK(pmap); @@ -3093,7 +3073,6 @@ PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3128,9 +3107,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3154,9 +3131,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3176,9 +3151,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/soc2006/intr_filter/amd64/conf/GENERIC#3 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ cpu HAMMER ident GENERIC ==== //depot/projects/soc2006/intr_filter/amd64/conf/NOTES#3 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.56 2006/06/12 20:38:17 jhb Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.57 2006/06/26 23:41:06 obrien Exp $ # # @@ -223,6 +223,7 @@ # (requires miibus) # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters +# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) # nve: nVidia nForce MCP on-board Ethernet Networking # ral: Ralink Technology IEEE 802.11 wireless adapter # ural: Ralink Technology RT2500USB IEEE 802.11 wireless adapter @@ -233,6 +234,7 @@ options ED_SIC device iwi device ipw +device nfe # nVidia nForce MCP on-board Ethernet Networking device nve # nVidia nForce MCP on-board Ethernet Networking device ral device ural ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_proto.h#4 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_syscall.h#4 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_sysent.c#4 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.16 2006/06/27 18:32:16 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp */ #include @@ -41,8 +41,8 @@ { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_STAT }, /* 18 = linux_stat */ { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_LSEEK }, /* 19 = linux_lseek */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_GETPID }, /* 20 = linux_getpid */ - { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ - { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ + { SYF_MPSAFE | AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ + { SYF_MPSAFE | AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_SETUID }, /* 23 = linux_setuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_GETUID }, /* 24 = linux_getuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_SETTIMEOFDAY }, /* 25 = linux_stime */ @@ -65,14 +65,14 @@ { SYF_MPSAFE | AS(linux_pipe_args), (sy_call_t *)linux_pipe, AUE_PIPE }, /* 42 = linux_pipe */ { SYF_MPSAFE | AS(linux_times_args), (sy_call_t *)linux_times, AUE_NULL }, /* 43 = linux_times */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 44 = prof */ - { AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ + { SYF_MPSAFE | AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ { SYF_MPSAFE | AS(linux_setgid16_args), (sy_call_t *)linux_setgid16, AUE_SETGID }, /* 46 = linux_setgid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getgid16, AUE_GETGID }, /* 47 = linux_getgid16 */ { SYF_MPSAFE | AS(linux_signal_args), (sy_call_t *)linux_signal, AUE_NULL }, /* 48 = linux_signal */ { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_GETEUID }, /* 49 = linux_geteuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_GETEGID }, /* 50 = linux_getegid16 */ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ - { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ + { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ @@ -137,7 +137,7 @@ { SYF_MPSAFE | AS(linux_wait4_args), (sy_call_t *)linux_wait4, AUE_WAIT4 }, /* 114 = linux_wait4 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_swapoff, AUE_SWAPOFF }, /* 115 = linux_swapoff */ { SYF_MPSAFE | AS(linux_sysinfo_args), (sy_call_t *)linux_sysinfo, AUE_NULL }, /* 116 = linux_sysinfo */ - { AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ + { SYF_MPSAFE | AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ { SYF_MPSAFE | AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC }, /* 118 = fsync */ { SYF_MPSAFE | AS(linux_sigreturn_args), (sy_call_t *)linux_sigreturn, AUE_SIGRETURN }, /* 119 = linux_sigreturn */ { SYF_MPSAFE | AS(linux_clone_args), (sy_call_t *)linux_clone, AUE_RFORK }, /* 120 = linux_clone */ ==== //depot/projects/soc2006/intr_filter/amd64/linux32/syscalls.master#4 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -75,10 +75,10 @@ 19 AUE_LSEEK MSTD { int linux_lseek(l_uint fdes, l_off_t off, \ l_int whence); } 20 AUE_GETPID MSTD { int linux_getpid(void); } -21 AUE_MOUNT STD { int linux_mount(char *specialfile, \ +21 AUE_MOUNT MSTD { int linux_mount(char *specialfile, \ char *dir, char *filesystemtype, \ l_ulong rwflag, void *data); } -22 AUE_UMOUNT STD { int linux_oldumount(char *path); } +22 AUE_UMOUNT MSTD { int linux_oldumount(char *path); } 23 AUE_SETUID MSTD { int linux_setuid16(l_uid16_t uid); } 24 AUE_GETUID MSTD { int linux_getuid16(void); } 25 AUE_SETTIMEOFDAY MSTD { int linux_stime(void); } @@ -103,7 +103,7 @@ 42 AUE_PIPE MSTD { int linux_pipe(l_ulong *pipefds); } 43 AUE_NULL MSTD { int linux_times(struct l_times_argv *buf); } 44 AUE_NULL UNIMPL prof -45 AUE_NULL STD { int linux_brk(l_ulong dsend); } +45 AUE_NULL MSTD { int linux_brk(l_ulong dsend); } 46 AUE_SETGID MSTD { int linux_setgid16(l_gid16_t gid); } 47 AUE_GETGID MSTD { int linux_getgid16(void); } 48 AUE_NULL MSTD { int linux_signal(l_int sig, \ @@ -111,7 +111,7 @@ 49 AUE_GETEUID MSTD { int linux_geteuid16(void); } 50 AUE_GETEGID MSTD { int linux_getegid16(void); } 51 AUE_ACCT MNOPROTO { int acct(char *path); } -52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); } +52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock 54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -212,7 +212,7 @@ struct l_rusage *rusage); } 115 AUE_SWAPOFF MSTD { int linux_swapoff(void); } 116 AUE_NULL MSTD { int linux_sysinfo(struct l_sysinfo *info); } -117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \ +117 AUE_NULL MSTD { int linux_ipc(l_uint what, l_int arg1, \ l_int arg2, l_int arg3, void *ptr, \ l_long arg5); } 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } ==== //depot/projects/soc2006/intr_filter/arm/arm/elf_trampoline.c#4 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.8 2006/06/18 22:46:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.11 2006/06/23 22:45:35 cognet Exp $"); #include #include #include @@ -131,6 +131,8 @@ } } +static void arm9_setup(void); + void _start(void) { @@ -174,7 +176,6 @@ __start(); } -#ifdef KZIP static void get_cachetype_cp15() { @@ -255,6 +256,7 @@ } +#ifdef KZIP static unsigned char *orig_input, *i_input, *i_output; @@ -348,8 +350,8 @@ int d) { Elf32_Ehdr *eh; - Elf32_Phdr phdr[512] /* XXX */, *php; - Elf32_Shdr shdr[512] /* XXX */; + Elf32_Phdr phdr[64] /* XXX */, *php; + Elf32_Shdr shdr[64] /* XXX */; int i,j; void *entry_point; int symtabindex = -1; ==== //depot/projects/soc2006/intr_filter/arm/arm/locore.S#2 (text+ko) ==== @@ -37,9 +37,9 @@ #include #include #include -__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.13 2005/12/21 15:02:31 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.14 2006/06/21 23:47:25 imp Exp $"); -/* What size should this really be ? It is only used by init_arm() */ +/* What size should this really be ? It is only used by initarm() */ #define INIT_ARM_STACK_SIZE 2048 /* ==== //depot/projects/soc2006/intr_filter/arm/at91/at91_pio.c#4 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.1 2006/03/24 07:39:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); #include #include @@ -38,7 +38,9 @@ #include #include +#include #include +#include struct at91_pio_softc { @@ -103,7 +105,26 @@ static int at91_pio_probe(device_t dev) { - device_set_desc(dev, "PIO"); + const char *name; + + switch (device_get_unit(dev)) { + case 0: + name = "PIOA"; + break; + case 1: + name = "PIOB"; + break; + case 2: + name = "PIOC"; + break; + case 3: + name = "PIOD"; + break; + default: + name = "PIO"; + break; + } + device_set_desc(dev, name); return (0); } @@ -118,6 +139,9 @@ if (err) goto out; + device_printf(dev, "ABSR: %#x OSR: %#x PSR:%#x ODSR: %#x\n", + RD4(sc, PIO_ABSR), RD4(sc, PIO_OSR), RD4(sc, PIO_PSR), + RD4(sc, PIO_ODSR)); AT91_PIO_LOCK_INIT(sc); /* @@ -250,6 +274,69 @@ return (ENXIO); } +/* + * The following functions are called early in the boot process, so + * don't use bus_space, as that isn't yet available when we need to use + * them. + */ +void +at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ASR / 4] = periph_a_mask; + PIO[PIO_PDR / 4] = periph_a_mask; +} + +void +at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_BSR / 4] = periph_b_mask; + PIO[PIO_PDR / 4] = periph_b_mask; +} + +void +at91_pio_use_gpio(uint32_t pio, uint32_t gpio_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_PER / 4] = gpio_mask; +} + +void +at91_pio_gpio_input(uint32_t pio, uint32_t input_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ODR / 4] = input_enable_mask; +} + +void +at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_OER / 4] = output_enable_mask; +} + +void +at91_pio_gpio_set(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_SODR / 4] = data_mask; +} + +void +at91_pio_gpio_clear(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_CODR / 4] = data_mask; +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), ==== //depot/projects/soc2006/intr_filter/arm/at91/files.at91#2 (text) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/arm/at91/files.at91,v 1.3 2006/03/24 07:36:23 imp Exp $ +# $FreeBSD: src/sys/arm/at91/files.at91,v 1.5 2006/06/23 23:07:11 cognet Exp $ arm/arm/cpufunc_asm_arm9.S standard arm/arm/irq_dispatch.S standard arm/at91/at91.c standard ==== //depot/projects/soc2006/intr_filter/arm/at91/uart_dev_at91usart.c#2 (text) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.6 2006/05/13 23:41:16 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.7 2006/07/02 03:45:33 imp Exp $"); #include #include @@ -45,19 +45,29 @@ #include "uart_if.h" +#define DEFAULT_RCLK AT91C_MASTER_CLOCK +#define USART_BUFFER_SIZE 128 + /* * High-level UART interface. */ +struct at91_usart_rx { + bus_addr_t pa; + uint8_t buffer[USART_BUFFER_SIZE]; + bus_dmamap_t map; +}; + struct at91_usart_softc { struct uart_softc base; bus_dma_tag_t dmatag; /* bus dma tag for mbufs */ bus_dmamap_t tx_map; - bus_dmamap_t rx_map; + uint32_t flags; +#define HAS_TIMEOUT 1 + struct at91_usart_rx ping_pong[2]; + struct at91_usart_rx *ping; + struct at91_usart_rx *pong; }; -#define DEFAULT_RCLK AT91C_MASTER_CLOCK -#define USART_BUFFER_SIZE 128 - #define RD4(bas, reg) \ bus_space_read_4((bas)->bst, (bas)->bsh, uart_regofs(bas, reg)) #define WR4(bas, reg, value) \ @@ -72,6 +82,9 @@ } \ } while (0); +#define BAUD2DIVISOR(b) \ + ((((DEFAULT_RCLK * 10) / ((b) * 16)) + 5) / 10) + /* * Low-level UART interface. */ @@ -147,16 +160,19 @@ } /* - * Or in the stop bits. Note: The hardware supports - * 1.5 stop bits in async mode, but there's no way to - * specify that AFAICT. + * Or in the stop bits. Note: The hardware supports 1.5 stop + * bits in async mode, but there's no way to specify that + * AFAICT. Instead, rely on the convention documented at + * http://www.lammertbies.nl/comm/info/RS-232_specs.html which + * states that 1.5 stop bits are used for 5 bit bytes and + * 2 stop bits only for longer bytes. */ - if (stopbits > 1) + if (stopbits == 1) + mr |= USART_MR_NBSTOP_1; + else if (databits > 5) mr |= USART_MR_NBSTOP_2; else - mr |= USART_MR_NBSTOP_2; - /* else if (stopbits == 1.5) - mr |= USART_MR_NBSTOP_1_5; */ + mr |= USART_MR_NBSTOP_1_5; /* * We want normal plumbing mode too, none of this fancy @@ -167,6 +183,13 @@ mr &= ~USART_MR_MSBF; /* lsb first */ mr &= ~USART_MR_CKLO_SCK; /* Don't drive SCK */ + WR4(bas, USART_MR, mr); + + /* + * Set the baud rate + */ + WR4(bas, USART_BRGR, BAUD2DIVISOR(baudrate)); + /* XXX Need to take possible synchronous mode into account */ return (0); } @@ -188,25 +211,19 @@ } /* - * Initialize this device (I think as the console) + * Initialize this device for use as a console. */ static void at91_usart_init(struct uart_bas *bas, int baudrate, int databits, int stopbits, int parity) { - int cr; at91_usart_param(bas, baudrate, databits, stopbits, parity); - /* Turn on rx and tx */ - cr = USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX; - WR4(bas, USART_CR, cr); + /* Reset the rx and tx buffers and turn on rx and tx */ + WR4(bas, USART_CR, USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX); WR4(bas, USART_CR, USART_CR_RXEN | USART_CR_TXEN); - WR4(bas, USART_IER, USART_CSR_TIMEOUT | - USART_CSR_TXRDY | USART_CSR_RXRDY | - USART_CSR_RXBRK | USART_CSR_ENDRX | USART_CSR_ENDTX); - /* Set the receive timeout to be 1.5 character times. */ - WR4(bas, USART_RTOR, 12); + WR4(bas, USART_IDR, 0xffffffff); } /* @@ -227,8 +244,8 @@ at91_usart_putc(struct uart_bas *bas, int c) { - while (!(RD4(bas, USART_CSR) & - USART_CSR_TXRDY)); + while (!(RD4(bas, USART_CSR) & USART_CSR_TXRDY)) + continue; WR4(bas, USART_THR, c); } @@ -252,8 +269,8 @@ { int c; - while (!(RD4(bas, USART_CSR) & USART_CSR_RXRDY)) - ; + while (!(RD4(bas, USART_CSR) & USART_CSR_RXRDY)) + continue; c = RD4(bas, USART_RHR); c &= 0xff; return (c); @@ -291,14 +308,35 @@ return (0); } +#ifndef SKYEYE_WORKAROUNDS +static void +at91_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error) +{ + if (error != 0) + return; + *(bus_addr_t *)arg = segs[0].ds_addr; +} +#endif + static int at91_usart_bus_attach(struct uart_softc *sc) { - int err; + int err, i; + uint32_t cr; struct at91_usart_softc *atsc; atsc = (struct at91_usart_softc *)sc; + /* + * See if we have a TIMEOUT bit. We disable all interrupts to + * minimize interference. + */ + WR4(&sc->sc_bas, USART_IDR, 0xffffffff); + WR4(&sc->sc_bas, USART_IER, USART_CSR_TIMEOUT); + if (RD4(&sc->sc_bas, USART_IMR) & USART_CSR_TIMEOUT) + atsc->flags |= HAS_TIMEOUT; + WR4(&sc->sc_bas, USART_IDR, 0xffffffff); + sc->sc_txfifosz = USART_BUFFER_SIZE; sc->sc_rxfifosz = USART_BUFFER_SIZE; sc->sc_hwiflow = 0; @@ -314,25 +352,62 @@ err = bus_dmamap_create(atsc->dmatag, 0, &atsc->tx_map); if (err != 0) goto errout; - err = bus_dmamap_create(atsc->dmatag, 0, &atsc->rx_map); - if (err != 0) - goto errout; + if (atsc->flags & HAS_TIMEOUT) { + for (i = 0; i < 2; i++) { + err = bus_dmamap_create(atsc->dmatag, 0, + &atsc->ping_pong[i].map); + if (err != 0) + goto errout; + err = bus_dmamap_load(atsc->dmatag, + atsc->ping_pong[i].map, + atsc->ping_pong[i].buffer, sc->sc_rxfifosz, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 3 10:56:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8E2DE16A415; Mon, 3 Jul 2006 10:56:27 +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 51C4316A403 for ; Mon, 3 Jul 2006 10:56:27 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 15F1543D49 for ; Mon, 3 Jul 2006 10:56:27 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63AuQIG071732 for ; Mon, 3 Jul 2006 10:56:26 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63AuQID071729 for perforce@freebsd.org; Mon, 3 Jul 2006 10:56:26 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 10:56:26 GMT Message-Id: <200607031056.k63AuQID071729@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100487 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 10:56:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=100487 Change 100487 by piso@piso_longino on 2006/07/03 10:55:37 Fixes kernel compilation. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/nfe/if_nfe.c#2 edit .. //depot/projects/soc2006/intr_filter/dev/re/if_re.c#4 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/nfe/if_nfe.c#2 (text+ko) ==== @@ -378,7 +378,7 @@ ether_ifattach(ifp, sc->eaddr); error = bus_setup_intr(dev, sc->nfe_irq, INTR_TYPE_NET|INTR_MPSAFE, - nfe_intr, sc, &sc->nfe_intrhand); + NULL, nfe_intr, sc, &sc->nfe_intrhand); if (error) { printf("nfe%d: couldn't set up irq\n", unit); ==== //depot/projects/soc2006/intr_filter/dev/re/if_re.c#4 (text+ko) ==== @@ -239,7 +239,7 @@ static void re_poll (struct ifnet *, enum poll_cmd, int); static void re_poll_locked (struct ifnet *, enum poll_cmd, int); #endif -static void re_intr (void *); +static int re_intr (void *); static void re_tick (void *); static void re_tx_task (void *, int); static void re_int_task (void *, int); @@ -1899,7 +1899,7 @@ status = CSR_READ_2(sc, RL_ISR); if (status == 0xFFFF || (status & RL_INTRS_CPLUS) == 0) { mtx_unlock_spin(&sc->rl_intlock); - return; + return(FILTER_STRAY); } CSR_WRITE_2(sc, RL_IMR, 0); mtx_unlock_spin(&sc->rl_intlock); From owner-p4-projects@FreeBSD.ORG Mon Jul 3 12:23:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8BAFC16A416; Mon, 3 Jul 2006 12:23:19 +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 49EDA16A407 for ; Mon, 3 Jul 2006 12:23:19 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0BF2143D45 for ; Mon, 3 Jul 2006 12:23:19 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63CNIbG078308 for ; Mon, 3 Jul 2006 12:23:18 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63CNI5c078305 for perforce@freebsd.org; Mon, 3 Jul 2006 12:23:18 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 12:23:18 GMT Message-Id: <200607031223.k63CNI5c078305@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100491 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 12:23:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=100491 Change 100491 by jb@jb_freebsd2 on 2006/07/03 12:22:33 Update to use jhb's changes in current. Re-implement version 2 of kldstat to return the path to the module. Affected files ... .. //depot/projects/dtrace/src/sys/kern/kern_linker.c#12 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/kern_linker.c#12 (text+ko) ==== @@ -40,7 +40,6 @@ #include #include #include -#include #include #include #include @@ -93,12 +92,6 @@ static struct sx kld_sx; /* kernel linker lock */ -/* - * Load counter used by clients to determine if a linker file has been - * re-loaded. This counter is incremented for each file load. - */ -static int loadcnt; - static linker_class_list_t classes; static linker_file_list_t linker_files; static int next_file_id = 1; @@ -542,10 +535,8 @@ LINKER_GET_NEXT_FILE_ID(lf->id); lf->ndeps = 0; lf->deps = NULL; - lf->loadcnt = ++loadcnt; STAILQ_INIT(&lf->common); TAILQ_INIT(&lf->modules); - mtx_lock(&kld_mtx); TAILQ_INSERT_TAIL(&linker_files, lf, link); return (lf); } @@ -686,27 +677,6 @@ } /* - * List linker files. - */ -int -linker_file_listall(int (*callback_func)(linker_file_t,void *),void *arg) -{ - linker_file_t lf; - int error = 0; - - sx_xlock(&kld_sx); - - TAILQ_FOREACH(lf, &linker_files, link) { - if ((error = callback_func(lf, arg)) != 0) - break; - } - - sx_xunlock(&kld_sx); - - return (error); -} - -/* * List all functions in a file. */ int @@ -722,10 +692,13 @@ linker_file_t lf; c_linker_sym_t sym; linker_symval_t symval; + int locked; symval.value = 0; - sx_xlock(&kld_sx); + locked = KLD_LOCKED(); + if (!locked) + KLD_LOCK(); TAILQ_FOREACH(lf, &linker_files, link) { if (LINKER_LOOKUP_SYMBOL(lf, name, &sym) == 0 && @@ -733,11 +706,13 @@ break; } - sx_xunlock(&kld_sx); + if (!locked) + KLD_UNLOCK(); return (symval.value); } + caddr_t linker_file_lookup_symbol(linker_file_t file, const char *name, int deps) { @@ -994,10 +969,7 @@ printf("kldunload: attempt to unload file that has" " DTrace probes enabled\n"); error = EBUSY; - goto out; - } - - if (lf->userrefs == 0) { + } else if (lf->userrefs == 0) { /* * XXX: maybe LINKER_UNLOAD_FORCE should override ? */ @@ -1129,15 +1101,18 @@ { struct kld_file_stat stat; linker_file_t lf; - int error, namelen; + int error, namelen, version, version_num; /* * Check the version of the user's structure. */ - error = copyin(uap->stat, &stat, sizeof(struct kld_file_stat)); - if (error) + if ((error = copyin(&uap->stat->version, &version, sizeof(version))) != 0) return (error); - if (stat.version != sizeof(struct kld_file_stat)) + if (version == sizeof(struct kld_file_stat_1)) + version_num = 1; + else if (version == sizeof(struct kld_file_stat)) + version_num = 2; + else return (EINVAL); #ifdef MAC @@ -1162,21 +1137,18 @@ stat.id = lf->id; stat.address = lf->address; stat.size = lf->size; + if (version_num > 1) { + /* Version 2 fields: */ + namelen = strlen(lf->pathname) + 1; + if (namelen > MAXPATHLEN) + namelen = MAXPATHLEN; + bcopy(lf->pathname, &stat.pathname[0], namelen); + } KLD_UNLOCK(); - if (version_num < 2) - goto done; - /* Version 2 fields: */ - namelen = strlen(lf->pathname) + 1; - if (namelen > MAXPATHLEN) - namelen = MAXPATHLEN; - if ((error = copyout(lf->pathname, &stat->pathname[0], namelen)) != 0) - goto out; - -done: td->td_retval[0] = 0; - return (copyout(&stat, uap->stat, sizeof(struct kld_file_stat))); + return (copyout(&stat, uap->stat, version)); } /* @@ -1964,9 +1936,6 @@ *lfpp = lfdep; } while (0); free(pathname, M_LINKER); - - SDT_PROBE(kernel, linker_load_module, return, kldname, modname, parent, error, lfpp); - return (error); } @@ -2089,7 +2058,6 @@ return (error); } } - mtx_unlock(&kld_mtx); KLD_UNLOCK(); return (SYSCTL_OUT(req, "", 1)); } From owner-p4-projects@FreeBSD.ORG Mon Jul 3 12:34:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D98ED16A415; Mon, 3 Jul 2006 12:34:33 +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 B4F2416A407 for ; Mon, 3 Jul 2006 12:34:33 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6997C43D46 for ; Mon, 3 Jul 2006 12:34:33 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63CYXVY079367 for ; Mon, 3 Jul 2006 12:34:33 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63CYXJ0079364 for perforce@freebsd.org; Mon, 3 Jul 2006 12:34:33 GMT (envelope-from clem1@FreeBSD.org) Date: Mon, 3 Jul 2006 12:34:33 GMT Message-Id: <200607031234.k63CYXJ0079364@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100492 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 12:34:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100492 Change 100492 by clem1@clem1_ipv6vulns on 2006/07/03 12:34:23 Now we can choose which kind of icmp msg we want. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/icmpsicng.c#2 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/icmpsicng.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ u_short *payload = NULL; u_int payload_s = 0; - struct icmp *icmp = NULL; + struct libnet_icmpv6_hdr *icmp = NULL; /* libnet variables */ char errbuf[LIBNET_ERRBUF_SIZE]; @@ -51,7 +51,7 @@ /* Functionality Variables */ - int src_ip_rand = 0, dst_ip_rand = 0, dst_ok = 0; + int src_ip_rand = 0, dst_ip_rand = 0, dst_ok = 0, what; struct timeval tv, tv2; float sec; unsigned int cx = 0; @@ -66,21 +66,51 @@ float FragPct = 30; float BadIPVer = 10; float ICMPCksm = 10; + float TooBig = 5; + float Redir = 5; + float Echo = 1; + float Unreach = 5; + float MLD = 15; + float ND = 15; + float RT = 15; + float NI = 15; - - /* Not crypto strong randomness but we don't really care. And this * * gives us a way to determine the seed while the program is running * * if we need to repeat the results */ seed = getpid(); - while((c = getopt(argc, argv, "hd:i:s:r:m:k:D:S:p:V:F:I:vx:")) != EOF) + while((c = getopt(argc, argv, "hd:i:s:r:m:k:D:S:p:V:F:I:T:R:E:U:M:O:N:W:vx:")) != EOF) { switch (c) { case 'i': device = optarg; break; + case 'T': + TooBig = atof(optarg); + break; + case 'R': + Redir = atof(optarg); + break; + case 'E': + Echo = atof(optarg); + break; + case 'U': + Unreach = atof(optarg); + break; + case 'M': + MLD = atof(optarg); + break; + case 'O': + RT = atof(optarg); + break; + case 'N': + ND = atof(optarg); + break; + case 'W': + NI = atof(optarg); + break; case 'h': usage(argv[0]); exit(0); @@ -227,14 +257,24 @@ printf("Bad IP Version\t= %.0f%%\t\t", BadIPVer); printf("Frag header\t= %.0f%%\n", FragPct); + printf("TooBig=%.0f%% Redirect=%.0f%% Echo=%.0f%% Router=%.0f%%\n", TooBig, Redir, Echo, RT); + printf("Unreach=%.0f%% MLD=%.0f%% ND=%.0f%% NI=%.0f%%\n", Unreach, MLD, ND, NI); + printf("Bad ICMP Cksm\t= %.0f%%\n", ICMPCksm); /* Drop them down to floats so we can multiply and not overflow */ BadIPVer /= 100; FragPct /= 100; ICMPCksm /= 100; - + TooBig /= 100; + Redir = Redir / 100 + TooBig; + Echo = Echo / 100 + Redir; + Unreach = Unreach / 100 + Echo; + MLD = MLD / 100 + Unreach; + ND = ND / 100 + MLD; + RT = RT / 100 + ND; + NI = NI / 100 + RT; /************* * Main Loop * @@ -245,6 +285,7 @@ for(acx = 0; acx < num_to_send; acx++) { off = eo; + memset(buf + eo, 0x0, IP_MAXPACKET - eo); hl = rand() & 0xff; flow = rand(); @@ -289,14 +330,113 @@ off += 8; } - icmp = (struct icmp *)(buf + off); + icmp = (struct libnet_icmpv6_hdr *)(buf + off); - icmp->icmp_type = rand() & 0xff; - icmp->icmp_code = rand() & 0xff; - icmp->icmp_cksum = 0; + what = rand(); + if (what <= (RAND_MAX * TooBig)) + { + icmp->icmp_type = 2; + icmp->icmp_code = (rand() % 2) ? 0 : rand() & 0xff; + icmp->icmp_mtu = rand(); + off += 8; + } + else if (what <= (RAND_MAX * Redir)) + { + icmp->icmp_type = 137; + icmp->icmp_code = (rand() % 2) ? 0 : rand() & 0xff; + icmp->icmp_unused = (rand() % 2) ? 0 : rand(); + for (c = 0; c < 16; c++) + { + if (c < 8) + icmp->icmp_target1[c] = rand() & 0xff; + else + icmp->icmp_target2[c] = rand() & 0xff; + } + icmp->icmp_dst = randipv6(); + off += 36; + + } + else if (what <= (RAND_MAX * Echo)) + { + icmp->icmp_type = 128 + rand() % 2; + icmp->icmp_code = (rand() % 2) ? 0 : rand() & 0xff; + icmp->icmp_unused = rand(); /* seq + id */ + off += 8; + } + else if (what <= (RAND_MAX * Unreach)) + { + icmp->icmp_type = 1; + icmp->icmp_code = (rand() % 2) ? rand() % 5 : rand() & 0xff; + icmp->icmp_unused = (rand() % 2) ? 0 : rand(); + off += 8; + } + else if (what <= (RAND_MAX * MLD)) + { + icmp->icmp_type = 130 + rand() % 3; + icmp->icmp_code = (rand() % 2) ? 0 : rand() & 0xff; + icmp->icmp_maxdelay = rand() & 0xff; + icmp->icmp_reserved2 = (rand() % 2) ? 0 : rand() & 0xffff; + for (c = 0; c < 16; c++) + { + if (c < 8) + icmp->icmp_mcast1[c] = rand() & 0xff; + else + icmp->icmp_mcast2[c] = rand() & 0xff; + } + off += 24; + } + else if (what <= (RAND_MAX * ND)) + { + icmp->icmp_type = 135 + rand() % 2; + icmp->icmp_code = (rand() % 2) ? 0 : rand() & 0xff; + icmp->icmp_unused = (rand() % 2) ? 0 : rand(); + for (c = 0; c < 16; c++) + { + if (c < 8) + icmp->icmp_target1[c] = rand() & 0xff; + else + icmp->icmp_target2[c] = rand() & 0xff; + } + off += 24; + } + else if (what <= (RAND_MAX * RT)) + { + icmp->icmp_type = 133 + rand() % 2; + icmp->icmp_code = (rand() % 2) ? rand() & 0xff : 0; + if (icmp->icmp_type == 133) + { + /* solicitation msg */ + icmp->icmp_unused = (rand() % 2) ? rand() : 0; + off += 8; + } + else + { + /* advertisement msg */ + icmp->icmp_chl = rand() & 0xff; + icmp->icmp_mo = rand() & 0xff; + icmp->icmp_rlf = rand() & 0xffff; + icmp->icmp_rct = rand(); + icmp->icmp_rtt = rand(); + off += 14; + } + } + else if (what <= (RAND_MAX * NI)) + { + icmp->icmp_type = 139 + rand() % 2; + icmp->icmp_code = (rand() % 2) ? rand() & 0xff : rand() % 3; + icmp->icmp_qtype = rand() & 0xffff; + icmp->icmp_flags = rand() & 0xffff; + for (c = 0; c < 8; c++) + icmp->icmp_nonce[c] = rand() & 0xff; + off += 14; + } + else + { + icmp->icmp_type = rand() & 0xff; + icmp->icmp_code = rand() & 0xff; + off += 4; + } - off += 4; - #ifdef LIBNET_BSDISH_OS if ((payload_s - off + 0xe + 40) > payload_s) payload_s = 0; @@ -315,10 +455,9 @@ if (rand() <= (RAND_MAX * ICMPCksm)) - icmp->icmp_cksum = rand() & 0xffff; + icmp->icmp_sum = rand() & 0xffff; else - libnet_do_checksum(l, buf + eo, IPPROTO_ICMP6, payload_s + 4); - + libnet_do_checksum(l, buf + eo, IPPROTO_ICMP6, payload_s + (off - 40 - eo)); if (skip <= acx) { for (cx = 0; cx < repeat; cx++) @@ -355,7 +494,7 @@ - (tv.tv_usec - tv2.tv_usec) / 1000000.0; if ((datapushed / sec) >= max_pushed) usleep(10); /* 10 should give up our timeslice */ - usleep(1000); + usleep(500); } @@ -384,8 +523,11 @@ " [-r seed] [-m ]\n" " [-p ] [-k ] [-x ]\n" "\n" - " Percentage Opts: [-F frags] [-V ]\n" - " [-I ]\n" + " Percentage Opts: [-F frags] [-V Bad IP Version]\n" + " [-I Bad checksum>]\n" + " [-T Toobig] [-R Redirect] [-E Echo]\n" + " [-U Unreach] [-M MLD] [-O Router]\n" + " [-N Neighbor] [-W node info]\n" "\n" " [-v] causes packet info to be printed out -- DEBUGGING\n\n" " ex: -s a:b:c::d -d b:c:d::e -I 100\n" From owner-p4-projects@FreeBSD.ORG Mon Jul 3 12:42:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CDC8E16A4A7; Mon, 3 Jul 2006 12:42:50 +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 A5CF516A52E for ; Mon, 3 Jul 2006 12:42:50 +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 015E243E74 for ; Mon, 3 Jul 2006 12:42:47 +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 k63CgkN2079758 for ; Mon, 3 Jul 2006 12:42:46 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 k63CgiDf079755 for perforce@freebsd.org; Mon, 3 Jul 2006 12:42:44 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 3 Jul 2006 12:42:44 GMT Message-Id: <200607031242.k63CgiDf079755@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 100493 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 12:42:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100493 Change 100493 by rwatson@rwatson_zoo on 2006/07/03 12:42:02 Integrate TrustedBSD base branch: - OpenBSM 1.0 alpha 7 loopback. - More MPSAFE system calls, almost the default. - More ARMishness. - Linuxulator enhancements, de-stack-gap. - Normal plethora of driver enhancements, bug fixes, etc. - INPLOOKUP_WILDCARD. - ifaddr and if_addrlist sanitization. Affected files ... .. //depot/projects/trustedbsd/base/MAINTAINERS#39 integrate .. //depot/projects/trustedbsd/base/UPDATING#67 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/FREEBSD-upgrade#4 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/HISTORY#3 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/VERSION#3 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/bsm/audit_kevents.h#2 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/bsm/audit_record.h#3 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/bsm/libbsm.h#5 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/config/ltmain.sh#2 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/configure#3 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/configure.ac#3 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/etc/audit_event#3 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/libbsm/bsm_notify.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/libbsm/bsm_token.c#4 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/man/audit.log.5#2 integrate .. //depot/projects/trustedbsd/base/contrib/openbsm/test/bsm/generate.c#2 integrate .. //depot/projects/trustedbsd/base/include/malloc_np.h#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/stdlib/malloc.c#28 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#103 integrate .. //depot/projects/trustedbsd/base/share/man/man4/nfe.4#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_netflow.4#8 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_tag.4#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/sched_core.4#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/uplcom.4#9 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/pmap.c#30 integrate .. //depot/projects/trustedbsd/base/sys/amd64/linux32/linux32_proto.h#10 integrate .. //depot/projects/trustedbsd/base/sys/amd64/linux32/linux32_syscall.h#10 integrate .. //depot/projects/trustedbsd/base/sys/amd64/linux32/linux32_sysent.c#10 integrate .. //depot/projects/trustedbsd/base/sys/amd64/linux32/syscalls.master#10 integrate .. //depot/projects/trustedbsd/base/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/trustedbsd/base/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/trustedbsd/base/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/trustedbsd/base/sys/arm/at91/uart_dev_at91usart.c#5 integrate .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_proto.h#20 integrate .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_syscall.h#20 integrate .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_syscalls.c#20 integrate .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_sysent.c#20 integrate .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/syscalls.master#20 integrate .. //depot/projects/trustedbsd/base/sys/compat/linprocfs/linprocfs.c#34 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_ipc.c#14 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_util.h#10 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_ipc.c#10 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_proto.h#9 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_syscall.h#8 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_syscallnames.c#8 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_sysent.c#8 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/syscalls.master#8 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.ia64#36 integrate .. //depot/projects/trustedbsd/base/sys/conf/kern.mk#15 integrate .. //depot/projects/trustedbsd/base/sys/conf/kern.pre.mk#35 integrate .. //depot/projects/trustedbsd/base/sys/conf/kmod.mk#43 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-all.h#35 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-chipset.c#37 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-cd.c#41 integrate .. //depot/projects/trustedbsd/base/sys/dev/bge/if_bge.c#55 integrate .. //depot/projects/trustedbsd/base/sys/dev/bge/if_bgereg.h#33 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/CHANGELOG.TXT#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp.c#32 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp_pci.c#25 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/ispmbox.h#18 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/ispreg.h#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/ispvar.h#22 integrate .. //depot/projects/trustedbsd/base/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/ispfw/ispfw.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/mfi/mfi.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/acphy.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/amphy.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/bmtphy.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/brgphy.c#25 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/ciphy.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/e1000phy.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/exphy.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/inphy.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/lxtphy.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/mii_physubr.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/mlphy.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/nsgphy.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/nsphy.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/pnaphy.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/qsphy.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/rgephy.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/rlphy.c#16 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/ruephy.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/tdkphy.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/tlphy.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/ukphy.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/xmphy.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/puc/puc.c#24 integrate .. //depot/projects/trustedbsd/base/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/puc/puc_pccard.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/puc/puc_pci.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/puc/pucdata.c#28 integrate .. //depot/projects/trustedbsd/base/sys/dev/re/if_re.c#24 integrate .. //depot/projects/trustedbsd/base/sys/dev/sio/sio.c#44 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_ural.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/uplcom.c#20 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/usbdevs#53 integrate .. //depot/projects/trustedbsd/base/sys/fs/pseudofs/pseudofs_vnops.c#29 integrate .. //depot/projects/trustedbsd/base/sys/geom/mirror/g_mirror.c#15 integrate .. //depot/projects/trustedbsd/base/sys/geom/raid3/g_raid3.c#14 integrate .. //depot/projects/trustedbsd/base/sys/i386/conf/XBOX#6 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/pmap.c#65 integrate .. //depot/projects/trustedbsd/base/sys/i386/linux/linux_proto.h#22 integrate .. //depot/projects/trustedbsd/base/sys/i386/linux/linux_syscall.h#22 integrate .. //depot/projects/trustedbsd/base/sys/i386/linux/linux_sysent.c#23 integrate .. //depot/projects/trustedbsd/base/sys/i386/linux/syscalls.master#21 integrate .. //depot/projects/trustedbsd/base/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/trustedbsd/base/sys/ia64/ia64/trap.c#40 integrate .. //depot/projects/trustedbsd/base/sys/ia64/include/md_var.h#15 integrate .. //depot/projects/trustedbsd/base/sys/kern/kern_thread.c#53 integrate .. //depot/projects/trustedbsd/base/sys/kern/sched_4bsd.c#26 integrate .. //depot/projects/trustedbsd/base/sys/kern/sched_core.c#2 integrate .. //depot/projects/trustedbsd/base/sys/kern/syscalls.master#54 integrate .. //depot/projects/trustedbsd/base/sys/kern/sysv_sem.c#26 integrate .. //depot/projects/trustedbsd/base/sys/kern/vfs_mount.c#49 integrate .. //depot/projects/trustedbsd/base/sys/modules/bktr/bktr_mem/Makefile#3 integrate .. //depot/projects/trustedbsd/base/sys/modules/streams/Makefile#4 integrate .. //depot/projects/trustedbsd/base/sys/modules/svr4/Makefile#6 integrate .. //depot/projects/trustedbsd/base/sys/net/if.c#46 integrate .. //depot/projects/trustedbsd/base/sys/net/if_atmsubr.c#21 integrate .. //depot/projects/trustedbsd/base/sys/net/if_enc.c#2 integrate .. //depot/projects/trustedbsd/base/sys/net/if_gif.c#33 integrate .. //depot/projects/trustedbsd/base/sys/net/if_stf.c#29 integrate .. //depot/projects/trustedbsd/base/sys/net/if_tun.c#33 integrate .. //depot/projects/trustedbsd/base/sys/net/if_vlan.c#36 integrate .. //depot/projects/trustedbsd/base/sys/netinet/if_ether.c#33 integrate .. //depot/projects/trustedbsd/base/sys/netinet/in_pcb.c#41 integrate .. //depot/projects/trustedbsd/base/sys/netinet/ip_divert.c#31 integrate .. //depot/projects/trustedbsd/base/sys/netinet/ip_fw2.c#48 integrate .. //depot/projects/trustedbsd/base/sys/netinet/ip_output.c#46 integrate .. //depot/projects/trustedbsd/base/sys/netinet/tcp_input.c#63 integrate .. //depot/projects/trustedbsd/base/sys/netinet6/in6.c#21 integrate .. //depot/projects/trustedbsd/base/sys/netinet6/in6_cksum.c#11 integrate .. //depot/projects/trustedbsd/base/sys/netinet6/in6_pcb.c#29 integrate .. //depot/projects/trustedbsd/base/sys/netinet6/in6_var.h#13 integrate .. //depot/projects/trustedbsd/base/sys/nfsclient/bootp_subr.c#22 integrate .. //depot/projects/trustedbsd/base/sys/nfsclient/nfs_diskless.c#15 integrate .. //depot/projects/trustedbsd/base/sys/pci/if_rlreg.h#23 integrate .. //depot/projects/trustedbsd/base/sys/powerpc/powerpc/mmu_oea.c#4 integrate .. //depot/projects/trustedbsd/base/sys/sys/syscallsubr.h#17 integrate .. //depot/projects/trustedbsd/base/tools/tools/net80211/wlanwatch/wlanwatch.c#2 integrate .. //depot/projects/trustedbsd/base/usr.bin/tail/extern.h#5 integrate .. //depot/projects/trustedbsd/base/usr.bin/tail/forward.c#10 integrate .. //depot/projects/trustedbsd/base/usr.bin/tail/tail.1#5 integrate .. //depot/projects/trustedbsd/base/usr.bin/tail/tail.c#8 integrate .. //depot/projects/trustedbsd/base/usr.sbin/kgmon/kgmon.c#6 integrate .. //depot/projects/trustedbsd/base/usr.sbin/newsyslog/newsyslog.c#27 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/config.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/connect.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/debug.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/list.c#6 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/main.c#9 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/mkpeer.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/msg.c#5 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/name.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/rmhook.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/show.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/shutdown.c#3 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/status.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/types.c#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/ngctl/write.c#3 integrate Differences ... ==== //depot/projects/trustedbsd/base/MAINTAINERS#39 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.135 2006/06/03 01:52:11 scottl Exp $ +$FreeBSD: src/MAINTAINERS,v 1.136 2006/07/01 10:51:54 markm Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -35,10 +35,6 @@ NEWCARD imp Pre-commit review requested. OLDCARD imp Pre-commit review requested. pci bus imp,jhb Pre-commit review requested. -telnet markm Heads-up appreciated. Try not to break it. -secure/* markm Heads-up appreciated. Try not to break it. -kerberos5 nectar Pre-commit review requested. -heimdal nectar Pre-commit review requested. cdboot jhb Pre-commit review requested. pxeboot jhb Pre-commit review requested. witness jhb Pre-commit review requested. @@ -91,8 +87,6 @@ libufs jmallett Willing to handle problems, help with work. fdc(4) joerg Just keep me informed of changes, try not to break it. sppp(4) joerg Just keep me informed of changes, try not to break it. -libc nectar Opportuntity for pre-commit review appreciated for - nsdispatch(3) and its consumers. unifdef(1) fanf Pre-commit review requested. ntp roberto Pre-commit review requested. inetd dwmalone Recommends pre-commit review. @@ -147,12 +141,7 @@ games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch sbin/dhclient/Makefile.inc:MAINTAINER= mbr -sys/compat/svr4/Makefile:MAINTAINER= newton@freebsd.org -sys/dev/bktr/CHANGELOG.TXT: * MAINTAINER = Roger Hardiman sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org -sys/modules/bktr/bktr_mem/Makefile:MAINTAINER= roger@freebsd.org -sys/modules/streams/Makefile:MAINTAINER= newton@atdot.dotat.org -sys/modules/svr4/Makefile:MAINTAINER= newton@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org usr.bin/locate/Makefile:MAINTAINER= wosch ==== //depot/projects/trustedbsd/base/UPDATING#67 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20060627: + The XBOX kernel now defaults to the nfe(4) driver instead of + the nve(4) driver. Please update your configuration + accordingly. + 20060511: The machdep.* sysctls and the adjkerntz utility have been modified a bit. The new adjkerntz utility uses the new @@ -580,4 +585,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.449 2006/05/15 15:47:45 keramida Exp $ +$FreeBSD: src/UPDATING,v 1.450 2006/06/27 20:22:32 rink Exp $ ==== //depot/projects/trustedbsd/base/contrib/openbsm/FREEBSD-upgrade#4 (text) ==== @@ -30,15 +30,15 @@ Normally, the CVS vendor import goes along the following lines: cd ~/p4/projects/trustedbsd/openbsm - cvs -d rwatson@repoman.FreeBSD.org:/home/ncvs -q import src/contrib/openbsm \ - TrustedBSD OPENBSM_1_0_ALPHA_1 + cvs -n -d rwatson@repoman.FreeBSD.org:/home/ncvs -q import \ + src/contrib/openbsm TrustedBSD OPENBSM_1_0_ALPHA_1 -Replacing the version string as required. Use the "-n" argument to CVS to -do a test run. +Replacing the version string as required. Remove the "-n" argument once +the import is tested in order to perform the actual import. Propagation of changes to src/sys/{bsm,security/audit} is something that requires careful coordination and attention to detail. These files are not on CVS vendor branches, but do have the same local vs. vendor merge issues. -$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.4 2006/03/05 13:30:37 rwatson Exp $ +$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.5 2006/06/27 17:55:38 rwatson Exp $ ==== //depot/projects/trustedbsd/base/contrib/openbsm/HISTORY#3 (text) ==== @@ -1,3 +1,13 @@ +OpenBSM 1.0 alpha 7 + +- Adopted Solaris-compatible format for subject32_ex and subject64_ex + tokens, which previously did not correctly implement variable length + address storage. +- Prefer inttypes.h to stdint.h; enhance queue.h detection to test for + TAILQ_FOREACH_SAFE(), which is present in recent BSD queue.h's, but not + older ones. OpenBSM now builds on some FreeBSD 4.x version. +- New event types for extended attributes, ACLs, and scheduling. + OpenBSM 1.0 alpha 6 - Use AU_TO_WRITE and AU_NO_TO_WRITE for the 'keep' argument to au_close(); @@ -165,4 +175,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#12 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#15 $ ==== //depot/projects/trustedbsd/base/contrib/openbsm/VERSION#3 (text) ==== @@ -1,1 +1,1 @@ -OPENBSM_1_0_ALPHA_6 +OPENBSM_1_0_ALPHA_7 ==== //depot/projects/trustedbsd/base/contrib/openbsm/bsm/audit_kevents.h#2 (text) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_kevents.h#37 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_kevents.h#38 $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ @@ -383,7 +383,24 @@ #define AUE_ACL_DELETE_FD 403 /* FreeBSD. */ #define AUE_ACL_CHECK_FILE 404 /* FreeBSD. */ #define AUE_ACL_CHECK_FD 405 /* FreeBSD. */ -#define AUE_SYSARCH 406 /* FreeBSD. */ +#define AUE_ACL_GET_LINK 406 /* FreeBSD. */ +#define AUE_ACL_SET_LINK 407 /* FreeBSD. */ +#define AUE_ACL_DELETE_LINK 408 /* FreeBSD. */ +#define AUE_ACL_CHECK_LINK 409 /* FreeBSD. */ +#define AUE_SYSARCH 410 /* FreeBSD. */ +#define AUE_EXTATTRCTL 411 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FILE 412 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FILE 413 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FILE 414 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FILE 415 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FD 416 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FD 417 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FD 418 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FD 419 /* FreeBSD. */ +#define AUE_EXTATTR_GET_LINK 420 /* FreeBSD. */ +#define AUE_EXTATTR_SET_LINK 421 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_LINK 422 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_LINK 423 /* FreeBSD. */ /* * Darwin BSM uses a number of AUE_O_* definitions, which are aliased to the ==== //depot/projects/trustedbsd/base/contrib/openbsm/bsm/audit_record.h#3 (text) ==== @@ -30,12 +30,14 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#17 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#19 $ */ #ifndef _BSM_AUDIT_RECORD_H_ #define _BSM_AUDIT_RECORD_H_ +#include /* struct timeval */ + /* * Token type identifiers. */ ==== //depot/projects/trustedbsd/base/contrib/openbsm/bsm/libbsm.h#5 (text) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#20 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#21 $ */ #ifndef _LIBBSM_H_ @@ -43,7 +43,7 @@ #include #include -#include /* Required for audit.h. */ +#include /* Required for audit.h. */ #include /* Required for clock_t on Linux. */ #include ==== //depot/projects/trustedbsd/base/contrib/openbsm/config/ltmain.sh#2 (text) ==== @@ -43,8 +43,8 @@ PROGRAM=ltmain.sh PACKAGE=libtool -VERSION=1.5.20 -TIMESTAMP=" (1.1220.2.287 2005/08/31 18:54:15)" +VERSION=1.5.22 +TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)" # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. @@ -132,6 +132,8 @@ show="$echo" show_help= execute_dlfiles= +duplicate_deps=no +preserve_args= lo2o="s/\\.lo\$/.${objext}/" o2lo="s/\\.${objext}\$/.lo/" @@ -139,6 +141,43 @@ # Shell function definitions: # This seems to be the best place for them +# func_mktempdir [string] +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, STRING is the basename for that directory. +func_mktempdir () +{ + my_template="${TMPDIR-/tmp}/${1-$progname}" + + if test "$run" = ":"; then + # Return a directory name, but don't create it in dry-run mode + my_tmpdir="${my_template}-$$" + else + + # If mktemp works, use that first and foremost + my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` + + if test ! -d "$my_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + my_tmpdir="${my_template}-${RANDOM-0}$$" + + save_mktempdir_umask=`umask` + umask 0077 + $mkdir "$my_tmpdir" + umask $save_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$my_tmpdir" || { + $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2 + exit $EXIT_FAILURE + } + fi + + $echo "X$my_tmpdir" | $Xsed +} + + # func_win32_libid arg # return the library type of file 'arg' # @@ -157,12 +196,11 @@ if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then win32_nmres=`eval $NM -f posix -A $1 | \ - sed -n -e '1,100{/ I /{x;/import/!{s/^/import/;h;p;};x;};}'` - if test "X$win32_nmres" = "Ximport" ; then - win32_libid_type="x86 archive import" - else - win32_libid_type="x86 archive static" - fi + $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'` + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac fi ;; *DLL*) @@ -188,6 +226,20 @@ # arg is usually of the form 'gcc ...' func_infer_tag () { + # FreeBSD-specific: where we install compilers with non-standard names + tag_compilers_CC="*cc cc* *gcc gcc*" + tag_compilers_CXX="*c++ c++* *g++ g++*" + base_compiler=`set -- "$@"; echo $1` + + # If $tagname isn't set, then try to infer if the default "CC" tag applies + if test -z "$tagname"; then + for zp in $tag_compilers_CC; do + case $base_compiler in + $zp) tagname="CC"; break;; + esac + done + fi + if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do @@ -228,7 +280,22 @@ break ;; esac - fi + + # FreeBSD-specific: try compilers based on inferred tag + if test -z "$tagname"; then + eval "tag_compilers=\$tag_compilers_${z}" + if test -n "$tag_compilers"; then + for zp in $tag_compilers; do + case $base_compiler in + $zp) tagname=$z; break;; + esac + done + if test -n "$tagname"; then + break + fi + fi + fi + fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command @@ -295,9 +362,9 @@ $run ${rm}r "$my_xdir" $show "$mkdir $my_xdir" $run $mkdir "$my_xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$my_xdir"; then - exit $status + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then + exit $exit_status fi case $host in *-darwin*) @@ -352,6 +419,8 @@ # Darwin sucks eval std_shrext=\"$shrext_cmds\" +disable_libs=no + # Parse our command line options once, thoroughly. while test "$#" -gt 0 do @@ -468,7 +537,11 @@ preserve_args="$preserve_args $arg" ;; - --tag) prevopt="--tag" prev=tag ;; + --tag) + prevopt="--tag" + prev=tag + preserve_args="$preserve_args --tag" + ;; --tag=*) set tag "$optarg" ${1+"$@"} shift @@ -500,6 +573,18 @@ exit $EXIT_FAILURE fi +case $disable_libs in +no) + ;; +shared) + build_libtool_libs=no + build_old_libs=yes + ;; +static) + build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` + ;; +esac + # If this variable is set in any of the actions, the command in it # will be execed at the end. This prevents here-documents from being # left over by shells. @@ -856,9 +941,9 @@ if test ! -d "${xdir}$objdir"; then $show "$mkdir ${xdir}$objdir" $run $mkdir ${xdir}$objdir - status=$? - if test "$status" -ne 0 && test ! -d "${xdir}$objdir"; then - exit $status + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "${xdir}$objdir"; then + exit $exit_status fi fi @@ -1061,6 +1146,7 @@ no_install=no objs= non_pic_objects= + notinst_path= # paths that contain not-installed libtool libraries precious_files_regex= prefer_static_libs=no preload=no @@ -1089,14 +1175,15 @@ if test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi + prefer_static_libs=yes else if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi + prefer_static_libs=built fi build_libtool_libs=no build_old_libs=yes - prefer_static_libs=yes break ;; esac @@ -1271,6 +1358,11 @@ if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" fi else # Only an error if not doing a dry-run. @@ -1354,8 +1446,8 @@ prev= continue ;; - darwin_framework) - compiler_flags="$compiler_flags $arg" + darwin_framework|darwin_framework_skip) + test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" prev= @@ -1419,13 +1511,17 @@ continue ;; - -framework|-arch) - prev=darwin_framework - compiler_flags="$compiler_flags $arg" + -framework|-arch|-isysroot) + case " $CC " in + *" ${arg} ${1} "* | *" ${arg} ${1} "*) + prev=darwin_framework_skip ;; + *) compiler_flags="$compiler_flags $arg" + prev=darwin_framework ;; + esac compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" - continue - ;; + continue + ;; -inst-prefix-dir) prev=inst_prefix @@ -1453,7 +1549,8 @@ absdir=`cd "$dir" && pwd` if test -z "$absdir"; then $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit $EXIT_FAILURE + absdir="$dir" + notinst_path="$notinst_path $dir" fi dir="$absdir" ;; @@ -1467,10 +1564,15 @@ esac case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; *) dllsearchpath="$dllsearchpath:$dir";; esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + *) dllsearchpath="$dllsearchpath:$testbindir";; + esac ;; esac continue @@ -1479,11 +1581,11 @@ -l*) if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then case $host in - *-*-cygwin* | *-*-pw32* | *-*-beos*) + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*) # These systems don't actually have a C or math library (as such) continue ;; - *-*-mingw* | *-*-os2*) + *-*-os2*) # These systems don't actually have a C library (as such) test "X$arg" = "X-lc" && continue ;; @@ -1495,6 +1597,15 @@ # Rhapsody C and math libraries are in the System framework deplibs="$deplibs -framework System" continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test "X$arg" = "X-lc" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test "X$arg" = "X-lc" && continue + ;; esac elif test "X$arg" = "X-lc_r"; then case $host in @@ -1522,6 +1633,7 @@ compiler_flags="$compiler_flags $arg" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" + deplibs="$deplibs $arg" continue ;; @@ -1536,7 +1648,12 @@ # +DA*, +DD* enable 64-bit mode on the HP compiler # -q* pass through compiler args for the IBM compiler # -m* pass through architecture-specific compiler args for GCC - -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*) + # -m*, -t[45]*, -txscale* pass through architecture-specific + # compiler args for GCC + # -pg pass through profiling flag for GCC + # @file GCC response files + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \ + -t[45]*|-txscale*|@*) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. @@ -1548,9 +1665,7 @@ esac compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" - if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" - fi + compiler_flags="$compiler_flags $arg" continue ;; @@ -1788,6 +1903,11 @@ if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" fi else # Only an error if not doing a dry-run. @@ -1893,9 +2013,9 @@ if test ! -d "$output_objdir"; then $show "$mkdir $output_objdir" $run $mkdir $output_objdir - status=$? - if test "$status" -ne 0 && test ! -d "$output_objdir"; then - exit $status + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "$output_objdir"; then + exit $exit_status fi fi @@ -1958,7 +2078,6 @@ newlib_search_path= need_relink=no # whether we're linking any uninstalled libtool libraries notinst_deplibs= # not-installed libtool libraries - notinst_path= # paths that contain not-installed libtool libraries case $linkmode in lib) passes="conv link" @@ -2012,6 +2131,29 @@ else compiler_flags="$compiler_flags $deplib" fi + + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test "$pass" = conv && continue + newdependency_libs="$deplib $newdependency_libs" + ;; + prog) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + continue + fi + if test "$pass" = scan; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + ;; + *) + ;; + esac # linkmode + continue ;; -l*) @@ -2194,7 +2336,7 @@ esac # case $deplib if test "$found" = yes || test -f "$lib"; then : else - $echo "$modename: cannot find the library \`$lib'" 1>&2 + $echo "$modename: cannot find the library \`$lib' or unhandled argument \`$deplib'" 1>&2 exit $EXIT_FAILURE fi @@ -2445,8 +2587,12 @@ fi link_static=no # Whether the deplib will be linked statically + use_static_libs=$prefer_static_libs + if test "$use_static_libs" = built && test "$installed" = yes ; then + use_static_libs=no + fi if test -n "$library_names" && - { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + { test "$use_static_libs" = no || test -z "$old_library"; }; then if test "$installed" = no; then notinst_deplibs="$notinst_deplibs $lib" need_relink=yes @@ -2559,11 +2705,15 @@ if test "$hardcode_direct" = no; then add="$dir/$linklib" case $host in - *-*-sco3.2v5* ) add_dir="-L$dir" ;; + *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; + *-*-sysv4*uw2*) add_dir="-L$dir" ;; + *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ + *-*-unixware7*) add_dir="-L$dir" ;; *-*-darwin* ) # if the lib is a module then we can not link against # it, someone is ignoring the new warnings I added - if /usr/bin/file -L $add 2> /dev/null | $EGREP "bundle" >/dev/null ; then + if /usr/bin/file -L $add 2> /dev/null | + $EGREP ": [^:]* bundle" >/dev/null ; then $echo "** Warning, lib $linklib is a module, not a shared library" if test -z "$old_library" ; then $echo @@ -3314,9 +3464,9 @@ # Eliminate all temporary directories. for path in $notinst_path; do - lib_search_path=`$echo "$lib_search_path " | ${SED} -e 's% $path % %g'` - deplibs=`$echo "$deplibs " | ${SED} -e 's% -L$path % %g'` - dependency_libs=`$echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'` + lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"` + deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"` + dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"` done if test -n "$xrpath"; then @@ -3369,7 +3519,12 @@ ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work ;; *) # Add libc to deplibs on all other systems if necessary. @@ -3413,7 +3568,7 @@ int main() { return 0; } EOF $rm conftest - $LTCC -o conftest conftest.c $deplibs + $LTCC $LTCFLAGS -o conftest conftest.c $deplibs if test "$?" -eq 0 ; then ldd_output=`ldd conftest` for i in $deplibs; do @@ -3458,7 +3613,7 @@ # If $name is empty we are operating on a -L argument. if test "$name" != "" && test "$name" != "0"; then $rm conftest - $LTCC -o conftest conftest.c $i + $LTCC $LTCFLAGS -o conftest conftest.c $i # Did it work? if test "$?" -eq 0 ; then ldd_output=`ldd conftest` @@ -3705,6 +3860,35 @@ deplibs=$newdeplibs fi + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $deplibs " in + *" -L$path/$objdir "*) + new_libs="$new_libs -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$new_libs $deplib" ;; + esac + ;; + *) new_libs="$new_libs $deplib" ;; + esac + done + deplibs="$new_libs" + + # All the library-specific variables (install_libdir is set above). library_names= old_library= @@ -3788,6 +3972,7 @@ fi lib="$output_objdir/$realname" + linknames= for link do linknames="$linknames $link" @@ -4219,6 +4404,35 @@ ;; esac + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $compile_deplibs " in + *" -L$path/$objdir "*) + new_libs="$new_libs -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $compile_deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$new_libs $deplib" ;; + esac + ;; + *) new_libs="$new_libs $deplib" ;; + esac + done + compile_deplibs="$new_libs" + + compile_command="$compile_command $compile_deplibs" finalize_command="$finalize_command $finalize_deplibs" @@ -4263,10 +4477,15 @@ fi case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + testbindir=`$echo "X$libdir" | $Xsed -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$libdir:"*) ;; *) dllsearchpath="$dllsearchpath:$libdir";; esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + *) dllsearchpath="$dllsearchpath:$testbindir";; + esac ;; esac done @@ -4383,10 +4602,22 @@ export_symbols="$output_objdir/$outputname.exp" $run $rm $export_symbols $run eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in + *cygwin* | *mingw* ) + $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + $run eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; + esac else - $run eval "${SED} -e 's/\([ ][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + $run eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' $run eval 'grep -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' $run eval 'mv "$nlist"T "$nlist"' + case $host in + *cygwin* | *mingw* ) + $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + $run eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; + esac fi fi @@ -4503,16 +4734,32 @@ esac >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 3 12:43:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 790A116A416; Mon, 3 Jul 2006 12:43:49 +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 1234116A407 for ; Mon, 3 Jul 2006 12:43:49 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B9F6443D46 for ; Mon, 3 Jul 2006 12:43:48 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63ChmkO080232 for ; Mon, 3 Jul 2006 12:43:48 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63ChmCG080226 for perforce@freebsd.org; Mon, 3 Jul 2006 12:43:48 GMT (envelope-from jb@freebsd.org) Date: Mon, 3 Jul 2006 12:43:48 GMT Message-Id: <200607031243.k63ChmCG080226@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100494 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 12:43:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=100494 Change 100494 by jb@jb_freebsd2 on 2006/07/03 12:43:01 Overflowed the cache coherrence size, so increase the value so that this compiles on sparc64 and revisit the issue later. Affected files ... .. //depot/projects/dtrace/src/sys/sys/cpuvar.h#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/sys/cpuvar.h#3 (text+ko) ==== @@ -33,7 +33,7 @@ #include #include -#define CPU_CACHE_COHERENCE_SIZE 64 +#define CPU_CACHE_COHERENCE_SIZE 128 /* * The cpu_core structure consists of per-CPU state available in any context. From owner-p4-projects@FreeBSD.ORG Mon Jul 3 13:20:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A845016A54E; Mon, 3 Jul 2006 13:20:52 +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 5653D16A532 for ; Mon, 3 Jul 2006 13:20:52 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DE20F442A2 for ; Mon, 3 Jul 2006 13:03:52 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63D3qjw091174 for ; Mon, 3 Jul 2006 13:03:52 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63D3qbr091171 for perforce@freebsd.org; Mon, 3 Jul 2006 13:03:52 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 13:03:52 GMT Message-Id: <200607031303.k63D3qbr091171@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100495 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 13:20:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=100495 Change 100495 by piso@piso_newluxor on 2006/07/03 13:02:52 Apply style(9): -axe #if __FreeBSD_version ... #endif stuff -sanitize comments -convert all vars named 'err' to 'error' -put some XXX around for later work Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#2 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#2 (text+ko) ==== @@ -56,20 +56,15 @@ #include -#if __FreeBSD_version >= 500000 /* XXX - make the compiler happy... */ int strncmp(const char *s1, const char *s2, size_t len); -#endif -/* protocol and userland module handlers chains */ +/* Protocol and userland module handlers chains. */ struct chain handler_chain, dll_chain; +// XXX - use queue(3) and errno.h #ifdef _KERNEL -#if __FreeBSD_version >= 500000 - -/* Fine grained locking for 5.x, 6.x and 7.x */ - #define LIBALIAS_LOCK_INIT(_chain) \ mtx_init(&(_chain)->mtx, "libalias list of proto-handlers", NULL, \ MTX_DEF | MTX_RECURSE) @@ -127,59 +122,9 @@ if (mtx_initialized(&c->mtx)) LIBALIAS_LOCK_DESTROY(c); } -#else -/* Good old spl*() locking for 4.x */ -/* - * XXX - i'm not sure about mutex & conditional var - * conversion that i did using spl*()... - */ - -#define LIBALIAS_LOCK_INIT(_chain) (_chain)->spl = 0 -#define LIBALIAS_LOCK_DESTROY(_chain) -#define LIBALIAS_WLOCK_ASSERT(_chain) do { \ - KASSERT(_chain->spl != 0, ("chain not locked")); \ -} while (0) - -static __inline void -LIBALIAS_RLOCK(struct chain *chain) -{ - chain->spl = splimp(); -} - -static __inline void -LIBALIAS_RUNLOCK(struct chain *chain) -{ - splx(chain->spl); -} - -static __inline void -LIBALIAS_WLOCK(struct chain *chain) -{ - LIBALIAS_RLOCK(chain); -} - -static __inline void -LIBALIAS_WUNLOCK(struct chain *chain) -{ - LIBALIAS_RUNLOCK(chain); -} - -static void -_handler_chain_init(struct chain *c) { +#else - c->spl = 0; -} - -static void -_handler_chain_destroy(struct chain *c) { - - ; -} - -#endif -#else - #define LIBALIAS_LOCK_INIT(_chain) ; #define LIBALIAS_LOCK_DESTROY(_chain) ; #define LIBALIAS_WLOCK_ASSERT(_chain) ; @@ -237,16 +182,16 @@ LIBALIAS_WLOCK_ASSERT(c); b = (struct proto_handler **)&c->chain; - p->next = NULL; /* i'm paranoid... */ + p->next = NULL; /* I'm paranoid... */ for(; *b != NULL; b = &((*b)->next), i++) { if (((*b)->pri == p->pri) && ((*b)->dir == p->dir) && ((*b)->proto == p->proto)) - return (EHDCON); /* priority conflict */ + return (EHDCON); /* Priority conflict. */ if ((*b)->pri > p->pri) { p->next = *b; break; } } - /* end of list or got right position, insert here */ + /* End of list or got right position, insert here. */ *b = p; return (OK); } @@ -260,13 +205,13 @@ for(; (*b != NULL) && (*b != p); b = &((*b)->next)) ; if (*b == p) *b = p->next; - else return (EHDNOF); /* handler not found */ + else return (EHDNOF); /* Handler not found. */ return (OK); } int attach_handlers(struct proto_handler *_p) { - int i, res = NOK; + int i, error = NOK; LIBALIAS_WLOCK(&handler_chain); for (i=0; 1; i++) { @@ -275,12 +220,12 @@ if (res != OK) break; } LIBALIAS_WUNLOCK(&handler_chain); - return (res); + return (error); } int detach_handlers(struct proto_handler *_p) { - int i, res = NOK; + int i, error = NOK; LIBALIAS_WLOCK(&handler_chain); for (i=0; 1; i++) { @@ -289,23 +234,23 @@ if (res != OK) break; } LIBALIAS_WUNLOCK(&handler_chain); - return (res); + return (error); } int detach_handler(struct proto_handler *_p) { - int res = NOK; + int error = NOK; LIBALIAS_WLOCK(&handler_chain); res = _detach_handler(&handler_chain, _p); LIBALIAS_WUNLOCK(&handler_chain); - return (res); + return (error); } int find_handler(int8_t dir, int8_t proto, struct libalias *la, struct ip *pip, struct alias_data *ad) { struct proto_handler *p; - int err; + int error; LIBALIAS_RLOCK(&handler_chain); for (p = handler_chain.chain, err = EHDNOF; p != NULL; p = p->next) @@ -315,7 +260,7 @@ break; } LIBALIAS_RUNLOCK(&handler_chain); - return (err); + return (error); } struct proto_handler * @@ -331,11 +276,11 @@ LIBALIAS_WLOCK_ASSERT(c); b = (struct dll **)&c->chain; - p->next = NULL; /* i'm paranoid... */ + p->next = NULL; /* I'm paranoid... */ for(; *b != NULL; b = &((*b)->next), i++) if (!strncmp((*b)->name, p->name, DLL_LEN)) - return (EHDCON); /* dll name conflict */ - /* end of list, insert here */ + return (EHDCON); /* Dll name conflict. */ + /* End of list, insert here. */ *b = p; return (OK); } @@ -343,17 +288,17 @@ static void * _detach_dll(struct chain *c, char *p) { struct dll **b; - void *err = NULL; + void *error = NULL; LIBALIAS_WLOCK_ASSERT(c); b = (struct dll **)&c->chain; for(; *b != NULL; b = &((*b)->next)) if (!strncmp((*b)->name, p, DLL_LEN)) { - err = *b; + error = *b; *b = (*b)->next; break; } - return (err); + return (error); } int From owner-p4-projects@FreeBSD.ORG Mon Jul 3 14:01:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E75AF16A416; Mon, 3 Jul 2006 14:01:07 +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 C004C16A40F for ; Mon, 3 Jul 2006 14:01:07 +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 BB4F243D46 for ; Mon, 3 Jul 2006 14:01:06 +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 k63E1609093541 for ; Mon, 3 Jul 2006 14:01:06 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 k63E13Y8093536 for perforce@freebsd.org; Mon, 3 Jul 2006 14:01:03 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 3 Jul 2006 14:01:03 GMT Message-Id: <200607031401.k63E13Y8093536@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 100497 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 14:01:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=100497 Change 100497 by rwatson@rwatson_zoo on 2006/07/03 14:00:08 Integrate TrustedBSD audit3 branch; see change @100493 for a summary of changes. Affected files ... .. //depot/projects/trustedbsd/audit3/MAINTAINERS#9 integrate .. //depot/projects/trustedbsd/audit3/UPDATING#11 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/FREEBSD-upgrade#6 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#6 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/VERSION#9 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_kevents.h#22 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#11 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#13 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/config/ltmain.sh#5 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/configure#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#13 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_notify.c#11 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#17 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#8 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/test/bsm/generate.c#4 integrate .. //depot/projects/trustedbsd/audit3/include/malloc_np.h#2 integrate .. //depot/projects/trustedbsd/audit3/lib/libc/stdlib/malloc.c#9 integrate .. //depot/projects/trustedbsd/audit3/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#12 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/nfe.4#2 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/ng_netflow.4#6 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/ng_tag.4#2 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/sched_core.4#2 integrate .. //depot/projects/trustedbsd/audit3/share/man/man4/uplcom.4#5 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/amd64/pmap.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/linux32/linux32_proto.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/linux32/linux32_syscall.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/linux32/linux32_sysent.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/linux32/syscalls.master#6 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/arm/at91/uart_dev_at91usart.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/freebsd32_proto.h#17 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/freebsd32_syscall.h#17 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/freebsd32_syscalls.c#17 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/freebsd32_sysent.c#18 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/syscalls.master#19 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linprocfs/linprocfs.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_ipc.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_util.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/svr4/svr4_ipc.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/svr4/svr4_proto.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/svr4/svr4_syscall.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/svr4/svr4_syscallnames.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/svr4/svr4_sysent.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/svr4/syscalls.master#6 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/files.ia64#7 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/kern.mk#7 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/kern.pre.mk#7 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/kmod.mk#11 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-all.h#9 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-chipset.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ata/atapi-cd.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/bge/if_bge.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/bge/if_bgereg.h#10 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/bktr/CHANGELOG.TXT#3 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/isp/isp.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/isp/isp_pci.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/isp/ispmbox.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/isp/ispreg.h#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/isp/ispvar.h#8 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/dev/ispfw/ispfw.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mfi/mfi.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/acphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/amphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/bmtphy.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/brgphy.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/ciphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/e1000phy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/exphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/inphy.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/lxtphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/mii_physubr.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/mlphy.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/nsgphy.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/nsphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/pnaphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/qsphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/rgephy.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/rlphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/ruephy.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/tdkphy.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/tlphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/ukphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/mii/xmphy.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/puc/puc.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/puc/puc_pccard.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/puc/puc_pci.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/puc/pucdata.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/re/if_re.c#10 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/sio/sio.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/usb/if_ural.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/usb/uplcom.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/usb/usbdevs#12 integrate .. //depot/projects/trustedbsd/audit3/sys/fs/pseudofs/pseudofs_vnops.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/geom/mirror/g_mirror.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/geom/raid3/g_raid3.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/conf/XBOX#5 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/i386/pmap.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/linux/linux_proto.h#11 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/linux/linux_syscall.h#11 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/linux/linux_sysent.c#15 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/linux/syscalls.master#16 integrate .. //depot/projects/trustedbsd/audit3/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/ia64/ia64/trap.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/ia64/include/md_var.h#5 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/kern_thread.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/sched_4bsd.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/sched_core.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#35 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/sysv_sem.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/vfs_mount.c#17 integrate .. //depot/projects/trustedbsd/audit3/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sys/modules/streams/Makefile#2 integrate .. //depot/projects/trustedbsd/audit3/sys/modules/svr4/Makefile#3 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_atmsubr.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_enc.c#2 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_gif.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_stf.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_tun.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_vlan.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/if_ether.c#10 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/in_pcb.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/ip_divert.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/ip_fw2.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/ip_output.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/tcp_input.c#10 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet6/in6.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet6/in6_cksum.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet6/in6_pcb.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet6/in6_var.h#5 integrate .. //depot/projects/trustedbsd/audit3/sys/nfsclient/bootp_subr.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/nfsclient/nfs_diskless.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/pci/if_rlreg.h#8 integrate .. //depot/projects/trustedbsd/audit3/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/sys/syscallsubr.h#9 integrate .. //depot/projects/trustedbsd/audit3/tools/tools/net80211/wlanwatch/wlanwatch.c#2 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/tail/extern.h#3 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/tail/forward.c#4 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/tail/tail.1#4 integrate .. //depot/projects/trustedbsd/audit3/usr.bin/tail/tail.c#4 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/kgmon/kgmon.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/newsyslog/newsyslog.c#7 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/config.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/connect.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/debug.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/list.c#4 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/main.c#4 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/mkpeer.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/msg.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/name.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/rmhook.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/show.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/shutdown.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/status.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/types.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/ngctl/write.c#3 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/MAINTAINERS#9 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.135 2006/06/03 01:52:11 scottl Exp $ +$FreeBSD: src/MAINTAINERS,v 1.136 2006/07/01 10:51:54 markm Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -35,10 +35,6 @@ NEWCARD imp Pre-commit review requested. OLDCARD imp Pre-commit review requested. pci bus imp,jhb Pre-commit review requested. -telnet markm Heads-up appreciated. Try not to break it. -secure/* markm Heads-up appreciated. Try not to break it. -kerberos5 nectar Pre-commit review requested. -heimdal nectar Pre-commit review requested. cdboot jhb Pre-commit review requested. pxeboot jhb Pre-commit review requested. witness jhb Pre-commit review requested. @@ -91,8 +87,6 @@ libufs jmallett Willing to handle problems, help with work. fdc(4) joerg Just keep me informed of changes, try not to break it. sppp(4) joerg Just keep me informed of changes, try not to break it. -libc nectar Opportuntity for pre-commit review appreciated for - nsdispatch(3) and its consumers. unifdef(1) fanf Pre-commit review requested. ntp roberto Pre-commit review requested. inetd dwmalone Recommends pre-commit review. @@ -147,12 +141,7 @@ games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch sbin/dhclient/Makefile.inc:MAINTAINER= mbr -sys/compat/svr4/Makefile:MAINTAINER= newton@freebsd.org -sys/dev/bktr/CHANGELOG.TXT: * MAINTAINER = Roger Hardiman sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org -sys/modules/bktr/bktr_mem/Makefile:MAINTAINER= roger@freebsd.org -sys/modules/streams/Makefile:MAINTAINER= newton@atdot.dotat.org -sys/modules/svr4/Makefile:MAINTAINER= newton@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org usr.bin/locate/Makefile:MAINTAINER= wosch ==== //depot/projects/trustedbsd/audit3/UPDATING#11 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20060627: + The XBOX kernel now defaults to the nfe(4) driver instead of + the nve(4) driver. Please update your configuration + accordingly. + 20060511: The machdep.* sysctls and the adjkerntz utility have been modified a bit. The new adjkerntz utility uses the new @@ -580,4 +585,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.449 2006/05/15 15:47:45 keramida Exp $ +$FreeBSD: src/UPDATING,v 1.450 2006/06/27 20:22:32 rink Exp $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/FREEBSD-upgrade#6 (text) ==== @@ -30,15 +30,15 @@ Normally, the CVS vendor import goes along the following lines: cd ~/p4/projects/trustedbsd/openbsm - cvs -d rwatson@repoman.FreeBSD.org:/home/ncvs -q import src/contrib/openbsm \ - TrustedBSD OPENBSM_1_0_ALPHA_1 + cvs -n -d rwatson@repoman.FreeBSD.org:/home/ncvs -q import \ + src/contrib/openbsm TrustedBSD OPENBSM_1_0_ALPHA_1 -Replacing the version string as required. Use the "-n" argument to CVS to -do a test run. +Replacing the version string as required. Remove the "-n" argument once +the import is tested in order to perform the actual import. Propagation of changes to src/sys/{bsm,security/audit} is something that requires careful coordination and attention to detail. These files are not on CVS vendor branches, but do have the same local vs. vendor merge issues. -$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.4 2006/03/05 13:30:37 rwatson Exp $ +$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.5 2006/06/27 17:55:38 rwatson Exp $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#6 (text+ko) ==== @@ -175,4 +175,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#5 $ +$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#6 $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/VERSION#9 (text+ko) ==== ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_kevents.h#22 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_kevents.h#21 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_kevents.h#22 $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#11 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#10 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#11 $ */ #ifndef _BSM_AUDIT_RECORD_H_ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#13 (text+ko) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#12 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#13 $ */ #ifndef _LIBBSM_H_ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/config/ltmain.sh#5 (text+ko) ==== ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/configure#7 (xtext) ==== ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#7 (text+ko) ==== @@ -3,7 +3,7 @@ AC_PREREQ(2.59) AC_INIT([OpenBSM], [1.0a7], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) -AC_REVISION([$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#6 $]) +AC_REVISION([$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#7 $]) AC_CONFIG_SRCDIR([bin/auditreduce/auditreduce.c]) AC_CONFIG_AUX_DIR(config) AC_CONFIG_HEADER([config/config.h]) ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#13 (text+ko) ==== @@ -1,6 +1,6 @@ # -# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#12 $ -# $FreeBSD: src/contrib/openbsm/etc/audit_event,v 1.2 2006/03/26 01:44:35 rwatson Exp $ +# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#13 $ +# $FreeBSD: src/contrib/openbsm/etc/audit_event,v 1.3 2006/06/27 18:09:54 rwatson Exp $ # 0:AUE_NULL:indir system call:no 1:AUE_EXIT:exit(2):pc ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_notify.c#11 (text+ko) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_notify.c#10 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_notify.c#11 $ */ /* ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#17 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#16 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#17 $ */ #include ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#8 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#7 $ +.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#8 $ .\" .Dd May 1, 2005 .Dt AUDIT.LOG 5 ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/test/bsm/generate.c#4 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/test/bsm/generate.c#3 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/test/bsm/generate.c#4 $ */ /* ==== //depot/projects/trustedbsd/audit3/include/malloc_np.h#2 (text) ==== @@ -26,12 +26,16 @@ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/include/malloc_np.h,v 1.1 2006/03/28 22:16:03 jasone Exp $ + * $FreeBSD: src/include/malloc_np.h,v 1.2 2006/06/30 20:57:41 jasone Exp $ */ #ifndef _MALLOC_NP_H_ #define _MALLOC_NP_H_ +#include +#include +__BEGIN_DECLS size_t malloc_usable_size(const void *ptr); +__END_DECLS #endif /* _MALLOC_NP_H_ */ ==== //depot/projects/trustedbsd/audit3/lib/libc/stdlib/malloc.c#9 (text+ko) ==== @@ -185,7 +185,7 @@ #endif #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.127 2006/06/20 20:38:25 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.129 2006/07/01 16:51:10 jasone Exp $"); #include "libc_private.h" #ifdef MALLOC_DEBUG @@ -659,9 +659,6 @@ * Data. */ -/* Used as a special "nil" return value for malloc(0). */ -static const int nil; - /* Number of CPUs. */ static unsigned ncpus; @@ -1565,82 +1562,82 @@ static inline void arena_run_reg_dalloc(arena_run_t *run, arena_bin_t *bin, void *ptr, size_t size) { + /* + * To divide by a number D that is not a power of two we multiply + * by (2^21 / D) and then right shift by 21 positions. + * + * X / D + * + * becomes + * + * (size_invs[(D >> QUANTUM_2POW_MIN) - 3] * D) >> SIZE_INV_SHIFT + */ +#define SIZE_INV_SHIFT 21 +#define SIZE_INV(s) (((1 << SIZE_INV_SHIFT) / (s << QUANTUM_2POW_MIN)) + 1) + static const unsigned size_invs[] = { + SIZE_INV(3), + SIZE_INV(4), SIZE_INV(5), SIZE_INV(6), SIZE_INV(7), + SIZE_INV(8), SIZE_INV(9), SIZE_INV(10), SIZE_INV(11), + SIZE_INV(12),SIZE_INV(13), SIZE_INV(14), SIZE_INV(15), + SIZE_INV(16),SIZE_INV(17), SIZE_INV(18), SIZE_INV(19), + SIZE_INV(20),SIZE_INV(21), SIZE_INV(22), SIZE_INV(23), + SIZE_INV(24),SIZE_INV(25), SIZE_INV(26), SIZE_INV(27), + SIZE_INV(28),SIZE_INV(29), SIZE_INV(30), SIZE_INV(31) + }; unsigned diff, regind, elm, bit; assert(run->magic == ARENA_RUN_MAGIC); + assert(((sizeof(size_invs)) / sizeof(unsigned)) + 3 + >= (SMALL_MAX_DEFAULT >> QUANTUM_2POW_MIN)); /* - * Avoid doing division with a variable divisor if possible. This - * single operation can reduce allocator throughput by around 20%! + * Avoid doing division with a variable divisor if possible. Using + * actual division here can reduce allocator throughput by over 20%! */ -#define POW2_CASE(p) \ - case (1 << (p)): \ - regind = diff >> (p); \ - break; -#define QUANTUM_CASE(n) \ - case ((n) << QUANTUM_2POW_MIN): \ - regind = diff / ((n) << QUANTUM_2POW_MIN); \ - break; - - /* - * These assertions make sure that the switch statement matches - * compile-time configuration. - */ - assert(tiny_min_2pow >= 1); - assert(QUANTUM_2POW_MIN >= 3 && QUANTUM_2POW_MIN <= 4); - assert(SMALL_MAX_2POW_DEFAULT == 9); - diff = (unsigned)((uintptr_t)ptr - (uintptr_t)run - bin->reg0_offset); - switch (size) { - POW2_CASE(1) - POW2_CASE(2) -#if (QUANTUM_2POW_MIN > 3) - POW2_CASE(3) -#endif - QUANTUM_CASE(1) - QUANTUM_CASE(2) - QUANTUM_CASE(3) - QUANTUM_CASE(4) - QUANTUM_CASE(5) - QUANTUM_CASE(6) - QUANTUM_CASE(7) - QUANTUM_CASE(8) - QUANTUM_CASE(9) - QUANTUM_CASE(10) - QUANTUM_CASE(11) - QUANTUM_CASE(12) - QUANTUM_CASE(13) - QUANTUM_CASE(14) - QUANTUM_CASE(15) - QUANTUM_CASE(16) - QUANTUM_CASE(17) - QUANTUM_CASE(18) - QUANTUM_CASE(19) - QUANTUM_CASE(20) - QUANTUM_CASE(21) - QUANTUM_CASE(22) - QUANTUM_CASE(23) - QUANTUM_CASE(24) - QUANTUM_CASE(25) - QUANTUM_CASE(26) - QUANTUM_CASE(27) - QUANTUM_CASE(28) - QUANTUM_CASE(29) - QUANTUM_CASE(30) - QUANTUM_CASE(31) - QUANTUM_CASE(32) + if ((size & (size - 1)) == 0) { + /* + * log2_table allows fast division of a power of two in the + * [1..128] range. + * + * (x / divisor) becomes (x >> log2_table[divisor - 1]). + */ + static const unsigned char log2_table[] = { + 0, 1, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7 + }; -#if (QUANTUM_2POW_MIN <= 3) - POW2_CASE(9) -#endif - POW2_CASE(10) - POW2_CASE(11) - POW2_CASE(12) /* Handle up to 8 kB pages. */ - default: + if (size <= 128) + regind = (diff >> log2_table[size - 1]); + else if (size <= 32768) + regind = diff >> (8 + log2_table[(size >> 8) - 1]); + else { + /* + * The page size is too large for us to use the lookup + * table. Use real division. + */ regind = diff / size; - } -#undef POW2_CASE -#undef QUANTUM_CASE + } + } else if (size <= ((sizeof(size_invs) / sizeof(unsigned)) + << QUANTUM_2POW_MIN) + 2) { + regind = size_invs[(size >> QUANTUM_2POW_MIN) - 3] * diff; + regind >>= SIZE_INV_SHIFT; + } else { + /* + * size_invs isn't large enough to handle this size class, so + * calculate regind using actual division. This only happens + * if the user increases small_max via the 'S' runtime + * configuration option. + */ + regind = diff / size; + }; + assert(regind == diff / size); assert(regind < bin->nregs); elm = regind >> (SIZEOF_INT_2POW + 3); @@ -1649,6 +1646,8 @@ bit = regind - (elm << (SIZEOF_INT_2POW + 3)); assert((run->regs_mask[elm] & (1 << bit)) == 0); run->regs_mask[elm] |= (1 << bit); +#undef SIZE_INV +#undef SIZE_INV_SHIFT } static void @@ -2239,7 +2238,6 @@ arena_chunk_map_t mapelm; assert(ptr != NULL); - assert(ptr != &nil); assert(CHUNK_ADDR2BASE(ptr) != ptr); /* @@ -2281,8 +2279,7 @@ == (QUANTUM_CEILING(oldsize) >> opt_quantum_2pow)) goto IN_PLACE; } else { - if (oldsize > small_max && - pow2_ceil(size) == pow2_ceil(oldsize)) + if (oldsize > small_max && pow2_ceil(size) == oldsize) goto IN_PLACE; } @@ -2320,7 +2317,6 @@ assert(arena->magic == ARENA_MAGIC); assert(chunk->arena == arena); assert(ptr != NULL); - assert(ptr != &nil); assert(CHUNK_ADDR2BASE(ptr) != ptr); pageind = (((uintptr_t)ptr - (uintptr_t)chunk) >> pagesize_2pow); @@ -2353,6 +2349,7 @@ /* Medium allocation. */ size = mapelm.npages << pagesize_2pow; + assert((((uintptr_t)ptr) & (size - 1)) == 0); if (opt_junk) memset(ptr, 0x5a, size); @@ -2666,29 +2663,36 @@ ipalloc(size_t alignment, size_t size) { void *ret; - size_t pow2_size; + size_t alloc_size; /* - * Round up to the nearest power of two that is >= alignment and - * >= size. + * Take advantage of the fact that for each size class, every object is + * aligned at the smallest power of two that is non-zero in the base + * two representation of the size. For example: + * + * Size | Base 2 | Minimum alignment + * -----+----------+------------------ + * 96 | 1100000 | 32 + * 144 | 10100000 | 32 + * 192 | 11000000 | 64 + * + * Depending on runtime settings, it is possible that arena_malloc() + * will further round up to a power of two, but that never causes + * correctness issues. */ - if (size > alignment) - pow2_size = pow2_ceil(size); - else - pow2_size = alignment; - pow2_size = QUANTUM_CEILING(pow2_size); - if (pow2_size < size) { + alloc_size = (size + (alignment - 1)) & (-alignment); + if (alloc_size < size) { /* size_t overflow. */ return (NULL); } - if (pow2_size <= arena_maxclass) - ret = arena_malloc(choose_arena(), pow2_size); + if (alloc_size <= arena_maxclass) + ret = arena_malloc(choose_arena(), alloc_size); else { if (alignment <= chunk_size) ret = huge_malloc(size); else { - size_t chunksize, alloc_size, offset; + size_t chunksize, offset; chunk_node_t *node; /* @@ -2815,7 +2819,6 @@ arena_chunk_t *chunk; assert(ptr != NULL); - assert(ptr != &nil); chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(ptr); if (chunk != ptr) { @@ -2850,7 +2853,6 @@ size_t oldsize; assert(ptr != NULL); - assert(ptr != &nil); assert(size != 0); oldsize = isalloc(ptr); @@ -2869,7 +2871,6 @@ arena_chunk_t *chunk; assert(ptr != NULL); - assert(ptr != &nil); chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(ptr); if (chunk != ptr) { @@ -3404,10 +3405,11 @@ if (size == 0) { if (opt_sysv == false) - ret = (void *)&nil; - else + size = 1; + else { ret = NULL; - goto RETURN; + goto RETURN; + } } ret = imalloc(size); @@ -3486,10 +3488,11 @@ num_size = num * size; if (num_size == 0) { if (opt_sysv == false) - ret = (void *)&nil; - else + num_size = 1; + else { ret = NULL; - goto RETURN; + goto RETURN; + } /* * Try to avoid division here. We know that it isn't possible to * overflow during multiplication if neither operand uses any of the @@ -3524,44 +3527,49 @@ { void *ret; - if (size != 0) { - if (ptr != &nil && ptr != NULL) { - assert(malloc_initialized); + if (size == 0) { + if (opt_sysv == false) + size = 1; + else { + if (ptr != NULL) + idalloc(ptr); + ret = NULL; + goto RETURN; + } + } - ret = iralloc(ptr, size); + if (ptr != NULL) { + assert(malloc_initialized); - if (ret == NULL) { - if (opt_xmalloc) { - malloc_printf("%s: (malloc) Error in" - " ralloc(%p, %zu): out of memory\n", - _getprogname(), ptr, size); - abort(); - } - errno = ENOMEM; - } - } else { - if (malloc_init()) - ret = NULL; - else - ret = imalloc(size); + ret = iralloc(ptr, size); - if (ret == NULL) { - if (opt_xmalloc) { - malloc_printf("%s: (malloc) Error in" - " ralloc(%p, %zu): out of memory\n", - _getprogname(), ptr, size); - abort(); - } - errno = ENOMEM; + if (ret == NULL) { + if (opt_xmalloc) { + malloc_printf("%s: (malloc) Error in" + " realloc(%p, %zu): out of memory\n", + _getprogname(), ptr, size); + abort(); } + errno = ENOMEM; } } else { - if (ptr != &nil && ptr != NULL) - idalloc(ptr); + if (malloc_init()) + ret = NULL; + else + ret = imalloc(size); - ret = (void *)&nil; + if (ret == NULL) { + if (opt_xmalloc) { + malloc_printf("%s: (malloc) Error in" + " realloc(%p, %zu): out of memory\n", + _getprogname(), ptr, size); + abort(); + } + errno = ENOMEM; + } } +RETURN: UTRACE(ptr, size, ret); return (ret); } @@ -3571,7 +3579,7 @@ { UTRACE(ptr, 0, 0); - if (ptr != &nil && ptr != NULL) { + if (ptr != NULL) { assert(malloc_initialized); idalloc(ptr); @@ -3592,10 +3600,7 @@ assert(ptr != NULL); - if (ptr == &nil) - return (0); - else - return (isalloc(ptr)); + return (isalloc(ptr)); } /* ==== //depot/projects/trustedbsd/audit3/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#12 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.951 2006/06/26 12:12:09 keramida Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.953 2006/07/02 01:58:33 bmah Exp $ 2000 @@ -366,11 +366,11 @@ A new loader tunable comconsole_speed to change the serial console speed has been added. - If the previous stage boot loader requested a serial console + If the previous stage boot loader requested a serial console, then the default speed is determined from the current serial port - speed, and otherwise it is set to 9600 or the value of - the kernel option BOOT_COMCONSOLE_SPEED - at compile time. &merged; + speed. Otherwise it is set to 9600 or the value of + the BOOT_COMCONSOLE_SPEED kernel option. + &merged; @@ -391,7 +391,7 @@ &man.pccbb.4;, and &man.exca.4; drivers are now buildable as kernel modules. - A &man.acpi.dock.4; driver has been added to provide + An &man.acpi.dock.4; driver has been added to provide support for controlling laptop docking station functions via ACPI. @@ -416,9 +416,11 @@ Support for the PadLock Security Co-processor in VIA C3 processors has been added to the &man.crypto.9; subsystem. + More information can be found in the &man.padlock.4; manual + page. &merged; - A bug which prevents the &man.ichsmb.4; kernel module + A bug which prevented the &man.ichsmb.4; kernel module from unloading has been fixed. Dual-core processors (such as the Intel @@ -440,7 +442,7 @@ or at runtime via &man.kldload.8; and releasing the active keyboard. &merged; - The &man.kbdmux.4; driver has been included in the + The &man.kbdmux.4; driver is now included in the GENERIC kernel by default. Also, the Boot FreeBSD with USB keyboard menu item in the boot loader menu has been removed @@ -461,22 +463,22 @@ The smbios(4) driver support for amd64 has been added. - The tnt4882(4) driver which supports National Instruments - PCI-GPIB card has been added. + The tnt4882(4) driver, which supports the National Instruments + PCI-GPIB card, has been added. The &man.uart.4; driver has been included in the GENERIC kernel by default. - When both &man.sio.4; and &man.uart.4; can handle a serial port, + When both &man.sio.4; and &man.uart.4; can handle a given serial port, &man.sio.4; will claim it. The &man.uart.4; driver now supports LOM (Lights Out Management) - and RSC (Remote System Control) devices as console. + and RSC (Remote System Control) devices as consoles. A new loader tunable hw.apic.enable_extint has been added. - This tunable can be used not to mask the ExtINT pin on the first - I/O APIC. At least one chipset for Intel Pentium III seems - to need this even though all of the pins in the 8259A's are masked. + This tunable can be used to disable masking of the ExtINT pin on the first + I/O APIC. At least one chipset for the Intel Pentium III seems + to need this, even though all of the pins in the 8259As are masked. The default is still to mask the ExtINT pin. Support has been improved for @@ -487,7 +489,7 @@ Multimedia Support - The &man.agp.4; driver now supports ATI IGP chipsets. + The &man.agp.4; driver now supports ATI AGP chipsets. &merged; The new midi(4) driver which is based on NetBSD's one @@ -561,7 +563,7 @@ The &man.ed.4; driver is now MPSAFE. - The &man.el.4; driver has been removed. + The &man.el.4; driver has been removed due to lack of use. The &man.em.4; driver now supports big-endian architectures such as sparc64. &merged; @@ -583,11 +585,12 @@ architectures such as sparc64. The &man.le.4; driver, which supports AMD Am7900 LANCE - and Am79C9xx PCnet NICs and is based on NetBSD's implementation, + and Am79C9xx PCnet NICs, has been added. While the &man.lnc.4; driver also supports these NICs, this driver has several advantages over it such as MPSAFE, ALTQ, VLAN_MTU, ifmedia, and 32-bit DMA for PCI - variants. &merged; + variants. This driver is based on NetBSD's implementation. + &merged; The &man.lge.4; driver is now MPSAFE. &merged; @@ -597,7 +600,7 @@ The &man.my.4; driver is now MPSAFE. &merged; - The &man.my.4; driver now supports &man.altq.4; + The &man.my.4; driver now supports &man.altq.4;. The &man.mxge.4; driver, which supports Myricom Myri10GE 10 Gigabit Ethernet @@ -647,14 +650,14 @@ Network Protocols - The &man.arp.8; retransmission algorithm has been - rewritten as that ARP requests are retransmitted without + The &man.arp.4; retransmission algorithm has been + rewritten so that ARP requests are retransmitted without suppression, while there is demand for such ARP entry. Due to this change, a sysctl variable net.link.ether.inet.host_down_time has been removed. &merged; - The &man.arp.8; now supports a sysctl variable + The &man.arp.4; protocol now supports a sysctl variable net.link.ether.inet.log_arp_permanent_modify to suppress logging of attempts to modify permanent ARP entries. &merged; @@ -674,7 +677,7 @@ found in RFC 1701 and RFC 1702, now supports IPv6 over GRE. The &man.if.bridge.4; driver now supports - creating span ports, which transmit a copy of every frame + creating SPAN ports, which transmit a copy of every frame received by the bridge. This feature can be enabled by using &man.ifconfig.8;. &merged; @@ -689,15 +692,15 @@ memberships (formerly 20) has been removed. The path MTU discovery for multicast packets in the &os; - &man.ip6.4; stack has been disabled by default because - notifying path MTU by a lot of routers in multicast + IPv6 stack has been disabled by default. + Path MTU notification from a large number of multicast routers can be a kind of distributed Denial-of-Service attack to a router. This feature can be re-enabled by using a new sysctl variable net.inet6.ip6.mcast_pmtu. &merged; The &man.ipfw.4; IP packet filter now supports IPv6. &merged; - The &man.ipfw.4; now supports substitution of the action + The &man.ipfw.4; firewall system now supports substitution of the action argument with the value obtained from table lookup, which allows some optimization of rulesets. This is now applicable only to pipe, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 3 14:02:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1693016A416; Mon, 3 Jul 2006 14:02:09 +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 D102B16A407 for ; Mon, 3 Jul 2006 14:02:08 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 862C143D45 for ; Mon, 3 Jul 2006 14:02:08 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63E28GI094037 for ; Mon, 3 Jul 2006 14:02:08 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63E28jl094028 for perforce@freebsd.org; Mon, 3 Jul 2006 14:02:08 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 14:02:08 GMT Message-Id: <200607031402.k63E28jl094028@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100498 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 14:02:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=100498 Change 100498 by piso@piso_newluxor on 2006/07/03 14:01:59 Style(9): -Sanitize comments -use #if 0 ... #endif instead of C comments -rename 'err' to 'error' -use err() when possible Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#3 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#3 (text+ko) ==== @@ -723,7 +723,7 @@ struct in_addr original_address; u_short alias_port; int accumulate; - int r = 0, err; + int r = 0, error; struct alias_data ad = { lnk, &original_address, @@ -731,7 +731,7 @@ &alias_port, &ud->uh_sport, &ud->uh_dport, - 0 /* maxpacketsize */ + 0 /* Maxpacketsize. */ }; alias_address = GetAliasAddress(lnk); @@ -739,9 +739,9 @@ alias_port = ud->uh_dport; ud->uh_dport = GetOriginalPort(lnk); - /* walk out chain */ - err = find_handler(IN, UDP, la, pip, &ad); - if (err == EHDNOF) + /* Walk out chain. */ + error = find_handler(IN, UDP, la, pip, &ad); + if (error == EHDNOF) ; /* If UDP checksum is not zero, then adjust since destination port */ @@ -774,7 +774,7 @@ { struct udphdr *ud; struct alias_link *lnk; - int err; + int error; /* Return if proxy-only mode is enabled */ if (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY) @@ -790,20 +790,20 @@ struct in_addr alias_address; struct alias_data ad = { lnk, - NULL, /* original address */ + NULL, /* Original address. */ &alias_address, &alias_port, &ud->uh_sport, &ud->uh_dport, - 0 /* maxpacketsize */ + 0 /* Maxpacketsize. */ }; alias_address = GetAliasAddress(lnk); alias_port = GetAliasPort(lnk); - /* walk out chain */ - err = find_handler(OUT, UDP, la, pip, &ad); - if (err == EHDNOF) + /* Walk out chain. */ + error = find_handler(OUT, UDP, la, pip, &ad); + if (error == EHDNOF) ; /* If UDP checksum is not zero, adjust since source port is */ @@ -850,28 +850,27 @@ struct in_addr proxy_address; u_short alias_port; u_short proxy_port; - int accumulate, err; + int accumulate, error; /* - * XXX - the init of MANY vars is a bit below, but - * aliashandlepptpin seems to need the destination port - * that came within the packet and not the original one - * looks below [*] + * The init of MANY vars is a bit below, but aliashandlepptpin + * seems to need the destination port that came within the + * packet and not the original one looks below [*]. */ struct alias_data ad = { lnk, - NULL, /* original address */ - NULL, /* alias address */ - NULL, /* alias port */ + NULL, /* Original address. */ + NULL, /* Alias address. */ + NULL, /* Alias port. */ &tc->th_sport, &tc->th_dport, - 0 /* maxpacketsize */ + 0 /* Maxpacketsize. */ }; - /* walk out chain */ - err = find_handler(IN, TCP, la, pip, &ad); - if (err == EHDNOF) + /* Walk out chain. */ + error = find_handler(IN, TCP, la, pip, &ad); + if (error == EHDNOF) ; alias_address = GetAliasAddress(lnk); @@ -882,26 +881,26 @@ proxy_port = GetProxyPort(lnk); /* - * XXX - [*] looks above, if anyone is going to add - * find_handler AFTER this aliashandlepptpin/point, please redo - * alias_data too. + * Look above, if anyone is going to add find_handler AFTER + * this aliashandlepptpin/point, please redo alias_data too. * Uncommenting the piece here below should be enough. */ - - /* struct alias_data ad = { */ - /* lnk, */ - /* &original_address, */ - /* &alias_address, */ - /* &alias_port, */ - /* &ud->uh_sport, */ - /* &ud->uh_dport, */ - /* 0 /\* maxpacketsize *\/ */ - /* }; */ +#if 0 + struct alias_data ad = { + lnk, + &original_address, + &alias_address, + &alias_port, + &ud->uh_sport, + &ud->uh_dport, + 0 /* Maxpacketsize. */ + }; - /* /\* walk out chain *\/ */ - /* err = find_handler(la, pip, &ad); */ - /* if (err == EHDNOF) */ - /* printf("Protocol handler not found\n"); */ + /* Walk out chain. */ + error = find_handler(la, pip, &ad); + if (error == EHDNOF) + printf("Protocol handler not found\n"); +#endif /* Adjust TCP checksum since destination port is being unaliased */ /* and destination port is being altered. */ @@ -957,7 +956,7 @@ static int TcpAliasOut(struct libalias *la, struct ip *pip, int maxpacketsize, int create) { - int proxy_type, err; + int proxy_type, error; u_short dest_port; u_short proxy_server_port; struct in_addr dest_address; @@ -1006,7 +1005,7 @@ int accumulate; struct alias_data ad = { lnk, - NULL, /* original address */ + NULL, /* Original address. */ &alias_address, &alias_port, &tc->th_sport, @@ -1030,9 +1029,9 @@ /* Monitor TCP connection state */ TcpMonitorOut(pip, lnk); - /* walk out chain */ - err = find_handler(OUT, TCP, la, pip, &ad); - if (err == EHDNOF) + /* Walk out chain. */ + error = find_handler(OUT, TCP, la, pip, &ad); + if (error == EHDNOF) ; /* Adjust TCP checksum since source port is being aliased */ @@ -1235,7 +1234,7 @@ iresult = TcpAliasIn(la, pip); break; case IPPROTO_GRE: { - int err; + int error; struct alias_data ad = { NULL, NULL, @@ -1246,11 +1245,11 @@ 0 }; - /* walk out chain */ - err = find_handler(IN, IP, la, pip, &ad); - if (err == EHDNOF) + /* Walk out chain. */ + error = find_handler(IN, IP, la, pip, &ad); + if (error == EHDNOF) ; - if (err == OK) + if (error == OK) iresult = PKT_ALIAS_OK; else iresult = ProtoAliasIn(la, pip); @@ -1363,7 +1362,7 @@ iresult = TcpAliasOut(la, pip, maxpacketsize, create); break; case IPPROTO_GRE: { - int err; + int error; struct alias_data ad = { NULL, NULL, @@ -1373,11 +1372,11 @@ NULL, 0 }; - /* walk out chain */ - err = find_handler(OUT, IP, la, pip, &ad); - if (err == EHDNOF) + /* Walk out chain. */ + error = find_handler(OUT, IP, la, pip, &ad); + if (error == EHDNOF) ; - if (err == OK) + if (error == OK) iresult = PKT_ALIAS_OK; else iresult = ProtoAliasOut(la, pip, create); @@ -1511,12 +1510,8 @@ int len; fd = fopen(conf, "r"); - if (fd == NULL) { - strcpy(buf, "cannot open config file "); - strcat(buf, conf); - perror(buf); - exit(-1); - } + if (fd == NULL) + err(1, "fopen(%s)", conf); LibAliasUnLoadAllModule(); @@ -1541,6 +1536,8 @@ const char *error; moduledata_t *p; + // XXX - mixing my own error code and errno.h is really + // a bad idea, convert everything to use errno.h handle = dlopen (path, RTLD_LAZY); if (!handle) { fputs (dlerror(), stderr); @@ -1579,7 +1576,7 @@ struct dll *t; struct proto_handler *p; - /* unload all modules then reload everything */ + /* Unload all modules then reload everything. */ while ((p = first_handler()) != NULL) { detach_handler(p); } From owner-p4-projects@FreeBSD.ORG Mon Jul 3 14:34:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BA76316A417; Mon, 3 Jul 2006 14:34:50 +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 7D96E16A415 for ; Mon, 3 Jul 2006 14:34:50 +0000 (UTC) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 12DFF4445D for ; Mon, 3 Jul 2006 14:34:50 +0000 (GMT) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63EYn46097434 for ; Mon, 3 Jul 2006 14:34:49 GMT (envelope-from swhitman@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63EYnZA097431 for perforce@freebsd.org; Mon, 3 Jul 2006 14:34:49 GMT (envelope-from swhitman@FreeBSD.org) Date: Mon, 3 Jul 2006 14:34:49 GMT Message-Id: <200607031434.k63EYnZA097431@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swhitman@FreeBSD.org using -f From: Spencer Whitman To: Perforce Change Reviews Cc: Subject: PERFORCE change 100500 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 14:34:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100500 Change 100500 by swhitman@swhitman_joethecat on 2006/07/03 14:34:32 More comments Affected files ... .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#5 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#6 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#4 edit Differences ... ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#5 (text+ko) ==== @@ -298,9 +298,12 @@ const char *e; const char *p, *q, *t; - D(1, "cppfile(%s)\n", r->sf->filename); assert(r != NULL); assert(r->sf != NULL); + + /* For debug only */ + D(1, "cppfile(%s)\n", r->sf->filename); + memset(&cfs, 0, sizeof cfs); cfs.h = h; @@ -308,6 +311,7 @@ p = r->s.b; e = r->s.e; + /* XXX HERE */ for (q = p; q < e; q++) { /* find NL */ @@ -380,5 +384,6 @@ h->r->sf = LoadFile(filename); h->r->s = h->r->sf->s; cppfile(h, h->r); + /* XXX HERE */ Lexer(h->tokens, NULL, NULL); } ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#6 (text+ko) ==== ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#4 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Mon Jul 3 14:38:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7ECF016A50E; Mon, 3 Jul 2006 14:38:12 +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 3B8AE16A4D8 for ; Mon, 3 Jul 2006 14:38:12 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 99ADE43FE7 for ; Mon, 3 Jul 2006 14:17:28 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63EHSQs096670 for ; Mon, 3 Jul 2006 14:17:28 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63EHSnv096667 for perforce@freebsd.org; Mon, 3 Jul 2006 14:17:28 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 14:17:28 GMT Message-Id: <200607031417.k63EHSnv096667@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100499 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 14:38:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=100499 Change 100499 by piso@piso_newluxor on 2006/07/03 14:17:19 Style(9): fix a comment. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.h#3 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.h#3 (text+ko) ==== @@ -28,7 +28,7 @@ * $FreeBSD: src/sys/netinet/libalias/alias.h,v 1.32 2005/05/05 21:53:17 glebius Exp $ */ -/*- +/* * Alias.h defines the outside world interfaces for the packet aliasing * software. * @@ -46,11 +46,10 @@ #define LIBALIAS_BUF_SIZE 128 #ifdef _KERNEL /* - * The kernel version of libalias does not support these features... + * The kernel version of libalias does not support these features. */ #define NO_FW_PUNCH #define NO_USE_SOCKETS - #endif /* From owner-p4-projects@FreeBSD.ORG Mon Jul 3 14:56:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CDB2716A407; Mon, 3 Jul 2006 14:56:21 +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 767C516A40F for ; Mon, 3 Jul 2006 14:56:21 +0000 (UTC) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7F158445F0 for ; Mon, 3 Jul 2006 14:56:20 +0000 (GMT) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63EuK8i098672 for ; Mon, 3 Jul 2006 14:56:20 GMT (envelope-from howardsu@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63EuKf3098669 for perforce@freebsd.org; Mon, 3 Jul 2006 14:56:20 GMT (envelope-from howardsu@FreeBSD.org) Date: Mon, 3 Jul 2006 14:56:20 GMT Message-Id: <200607031456.k63EuKf3098669@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to howardsu@FreeBSD.org using -f From: Howard Su To: Perforce Change Reviews Cc: Subject: PERFORCE change 100504 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 14:56:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=100504 Change 100504 by howardsu@su_laptop on 2006/07/03 14:55:32 Use FreeBSD zone allocator to support Solaris kmem call Affected files ... .. //depot/projects/dtrace/src/sys/cddl/kern/kmem.c#2 edit .. //depot/projects/dtrace/src/sys/contrib/opensolaris/compat/sys/kmem.h#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/kern/kmem.c#2 (text+ko) ==== @@ -33,41 +33,3 @@ MALLOC_DECLARE(M_KMEM); MALLOC_DEFINE(M_KMEM, "kmem", "kmem hack"); - -/* XXX Hacks */ - -kmem_cache_t * -kmem_cache_create( - char *name, /* descriptive name for this cache */ - size_t bufsize, /* size of the objects it manages */ - size_t align, /* required object alignment */ - int (*constructor)(void *, void *, int), /* object constructor */ - void (*destructor)(void *, void *), /* object destructor */ - void (*reclaim)(void *), /* memory reclaim callback */ - void *private, /* pass-thru arg for constr/destr/reclaim */ - vmem_t *vmp, /* vmem source for slab allocation */ - int cflags) /* cache creation flags */ - -{ - kmem_cache_t *p = malloc(sizeof(kmem_cache_t), M_KMEM, M_WAITOK); - p->size = bufsize; - return(p); -} - -void * -kmem_cache_alloc(kmem_cache_t *a, int b) -{ - return (malloc(a->size, M_KMEM, M_WAITOK | M_ZERO)); -} - -void -kmem_cache_free(kmem_cache_t *a, void *b) -{ - free(b, M_KMEM); -} - -void -kmem_cache_destroy(kmem_cache_t *a) -{ - free(a, M_KMEM); -} ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/compat/sys/kmem.h#2 (text+ko) ==== @@ -25,6 +25,7 @@ #define _OPENSOLARIS_COMPAT_SYS_KMEM_H #include +#include #define KM_SLEEP M_WAITOK #define KM_NOSLEEP M_NOWAIT @@ -33,17 +34,14 @@ #define kmem_alloc(_a,_b) malloc(_a, M_KMEM, _b) #define kmem_free(_a,_b) free(_a, M_KMEM) -typedef struct kmem_cache { - size_t size; -} kmem_cache_t; -kmem_cache_t *kmem_cache_create(char *, size_t, size_t, - int (*)(void *, void *, int), void (*)(void *, void *), - void (*)(void *), void *, vmem_t *, int); -void kmem_cache_destroy(kmem_cache_t *); -void *kmem_cache_alloc(kmem_cache_t *, int); -void kmem_cache_free(kmem_cache_t *, void *); -uint64_t kmem_cache_stat(kmem_cache_t *, char *); -void kmem_cache_reap_now(kmem_cache_t *); +typedef struct uma_zone kmem_cache_t; +#define kmem_cache_create(_name, _bufsize, _align, _ns0, _ns1, _ns2, _ns3, \ + _ns4, _flags) \ + uma_zcreate(_name, _bufsize, NULL, NULL, NULL, NULL, \ + _align, _flags) +#define kmem_cache_destroy(_a) uma_zdestroy(_a) +#define kmem_cache_alloc(_a, _flags) uma_zalloc(_a, _flags) +#define kmem_cache_free(_a, _b) uma_zfree(_a, _b) #endif /* _OPENSOLARIS_COMPAT_SYS_KMEM_H */ From owner-p4-projects@FreeBSD.ORG Mon Jul 3 15:13:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C97C16A407; Mon, 3 Jul 2006 15:13:43 +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 3FB6C16A40F for ; Mon, 3 Jul 2006 15:13:43 +0000 (UTC) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EA45B43D45 for ; Mon, 3 Jul 2006 15:13:42 +0000 (GMT) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63FDgNB000788 for ; Mon, 3 Jul 2006 15:13:42 GMT (envelope-from howardsu@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63FDgQk000785 for perforce@freebsd.org; Mon, 3 Jul 2006 15:13:42 GMT (envelope-from howardsu@FreeBSD.org) Date: Mon, 3 Jul 2006 15:13:42 GMT Message-Id: <200607031513.k63FDgQk000785@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to howardsu@FreeBSD.org using -f From: Howard Su To: Perforce Change Reviews Cc: Subject: PERFORCE change 100506 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 15:13:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=100506 Change 100506 by howardsu@su_laptop on 2006/07/03 15:13:39 Implement stack() and stackdepth. Remark: pcpu_find() is used in stack(). So it is not safe to fbt. Add a comment to fbt.c to keep the record of the dependency. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/i386/dtrace_isa.c#4 edit .. //depot/projects/dtrace/src/sys/cddl/dev/fbt/fbt.c#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/i386/dtrace_isa.c#4 (text+ko) ==== @@ -23,37 +23,30 @@ * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ +#include -#if defined(sun) -#pragma ident "@(#)dtrace_isa.c 1.15 05/09/30 SMI" - -#include +#include +#include +#include #include -#include -#include -#include -#include +#include -/* - * This is gross knowledge to have to encode here... - */ -extern void _interrupt(); -extern void _cmntrap(); -extern void _allsyscalls(); +#include -extern size_t _interrupt_size; -extern size_t _cmntrap_size; -extern size_t _allsyscalls_size; +#include +#include +#include -extern uintptr_t kernelbase; -#else extern uintptr_t kernbase; uintptr_t kernelbase = (uintptr_t) &kernbase; + +#define INKERNEL(va) (((vm_offset_t)(va)) >= USRSTACK && \ + ((vm_offset_t)(va)) < VM_MAX_KERNEL_ADDRESS) + struct frame { greg_t fr_savfp; /* saved frame pointer */ greg_t fr_savpc; /* saved program counter */ }; -#endif uint8_t dtrace_fuword8_nocheck(void *); uint16_t dtrace_fuword16_nocheck(void *); @@ -64,73 +57,43 @@ dtrace_getpcstack(pc_t *pcstack, int pcstack_limit, int aframes, uint32_t *intrpc) { -#ifdef DOODAD - struct frame *fp = (struct frame *)dtrace_getfp(); - struct frame *nextfp, *minfp, *stacktop; int depth = 0; - int on_intr, last = 0; - uintptr_t pc; - uintptr_t caller = CPU->cpu_dtrace_caller; + vm_offset_t callpc; + register_t ebp; + struct frame *frame; + pc_t caller = (pc_t)pcpu_find(curcpu)->pc_dtrace_caller; - if ((on_intr = CPU_ON_INTR(CPU)) != 0) - stacktop = (struct frame *)(CPU->cpu_intr_stack + SA(MINFRAME)); - else - stacktop = (struct frame *)curthread->t_stk; - minfp = fp; - + if (intrpc != 0) + pcstack[depth++] = (pc_t)intrpc; aframes++; - - if (intrpc != NULL && depth < pcstack_limit) - pcstack[depth++] = (pc_t)intrpc; - - while (depth < pcstack_limit) { - nextfp = (struct frame *)fp->fr_savfp; - pc = fp->fr_savpc; - - if (nextfp <= minfp || nextfp >= stacktop) { - if (on_intr) { - /* - * Hop from interrupt stack to thread stack. - */ - stacktop = (struct frame *)curthread->t_stk; - minfp = (struct frame *)curthread->t_stkbase; - on_intr = 0; - continue; - } - - /* - * This is the last frame we can process; indicate - * that we should return after processing this frame. - */ - last = 1; - } - + ebp = dtrace_getfp(); + frame = (struct frame *)ebp; + while(depth < pcstack_limit) { + if (!INKERNEL(frame)) + break; + callpc = frame->fr_savpc; + if (!INKERNEL(callpc)) + break; if (aframes > 0) { - if (--aframes == 0 && caller != NULL) { - /* - * We've just run out of artificial frames, - * and we have a valid caller -- fill it in - * now. - */ - ASSERT(depth < pcstack_limit); - pcstack[depth++] = (pc_t)caller; - caller = NULL; + aframes--; + if ((aframes == 0) && (caller != 0)) { + pcstack[depth++] = caller; } - } else { - if (depth < pcstack_limit) - pcstack[depth++] = (pc_t)pc; } - - if (last) { - while (depth < pcstack_limit) - pcstack[depth++] = NULL; - return; + else { + pcstack[depth++] = callpc; } + + if ((struct frame *)frame->fr_savfp < frame || + (vm_offset_t)frame->fr_savfp >= + (vm_offset_t)ebp + KSTACK_PAGES * PAGE_SIZE) + break; + frame = (struct frame *)frame->fr_savfp; + } - fp = nextfp; - minfp = fp; + for (; depth < pcstack_limit; depth++) { + pcstack[depth] = 0; } -#endif } static int @@ -515,49 +478,31 @@ int dtrace_getstackdepth(int aframes) { -#ifdef DOODAD - struct frame *fp = (struct frame *)dtrace_getfp(); - struct frame *nextfp, *minfp, *stacktop; int depth = 0; - int on_intr; + struct frame *frame; + vm_offset_t ebp; - if ((on_intr = CPU_ON_INTR(CPU)) != 0) - stacktop = (struct frame *)(CPU->cpu_intr_stack + SA(MINFRAME)); - else - stacktop = (struct frame *)curthread->t_stk; - minfp = fp; - aframes++; - - for (;;) { + ebp = dtrace_getfp(); + frame = (struct frame *)ebp; + depth++; + for(;;) { + if (!INKERNEL(frame)) + break; + if (!INKERNEL(frame->fr_savpc)) + break; depth++; - - nextfp = (struct frame *)fp->fr_savfp; - - if (nextfp <= minfp || nextfp >= stacktop) { - if (on_intr) { - /* - * Hop from interrupt stack to thread stack. - */ - stacktop = (struct frame *)curthread->t_stk; - minfp = (struct frame *)curthread->t_stkbase; - on_intr = 0; - continue; - } + if ((struct frame *)frame->fr_savfp < frame || + (vm_offset_t)frame->fr_savfp >= + (vm_offset_t)ebp + KSTACK_PAGES * PAGE_SIZE) break; - } - - fp = nextfp; - minfp = fp; + + frame = (struct frame *)frame->fr_savfp; } - - if (depth <= aframes) - return (0); - - return (depth - aframes); -#else -return 0; -#endif + if (depth < aframes) + return 0; + else + return depth - aframes; } ulong_t ==== //depot/projects/dtrace/src/sys/cddl/dev/fbt/fbt.c#4 (text+ko) ==== @@ -267,7 +267,7 @@ strncmp(name, "linker", 6) == 0 || strncmp(name, "witness", 7) == 0 || strncmp(name, "spinlock", 8) == 0 || - strcmp(name, "pcpu_find") == 0) + strcmp(name, "pcpu_find") == 0) /* used in stack() impl */ return (0); /* From owner-p4-projects@FreeBSD.ORG Mon Jul 3 15:17:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 98A4816A417; Mon, 3 Jul 2006 15:17:22 +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 47D1716A601 for ; Mon, 3 Jul 2006 15:17:22 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 117A7443DF for ; Mon, 3 Jul 2006 14:48:08 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63Em7O9098158 for ; Mon, 3 Jul 2006 14:48:07 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63Em7DN098155 for perforce@freebsd.org; Mon, 3 Jul 2006 14:48:07 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 14:48:07 GMT Message-Id: <200607031448.k63Em7DN098155@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100502 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 15:17:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100502 Change 100502 by piso@piso_newluxor on 2006/07/03 14:47:27 Fix kernel-side compilation Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#3 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#3 (text+ko) ==== @@ -216,8 +216,8 @@ LIBALIAS_WLOCK(&handler_chain); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; - res = _attach_handler(&handler_chain, &_p[i]); - if (res != OK) break; + error = _attach_handler(&handler_chain, &_p[i]); + if (error != OK) break; } LIBALIAS_WUNLOCK(&handler_chain); return (error); @@ -230,8 +230,8 @@ LIBALIAS_WLOCK(&handler_chain); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; - res = _detach_handler(&handler_chain, &_p[i]); - if (res != OK) break; + error = _detach_handler(&handler_chain, &_p[i]); + if (error != OK) break; } LIBALIAS_WUNLOCK(&handler_chain); return (error); @@ -242,7 +242,7 @@ int error = NOK; LIBALIAS_WLOCK(&handler_chain); - res = _detach_handler(&handler_chain, _p); + error = _detach_handler(&handler_chain, _p); LIBALIAS_WUNLOCK(&handler_chain); return (error); } @@ -253,10 +253,10 @@ int error; LIBALIAS_RLOCK(&handler_chain); - for (p = handler_chain.chain, err = EHDNOF; p != NULL; p = p->next) + for (p = handler_chain.chain, error = EHDNOF; p != NULL; p = p->next) if ((p->dir & dir) && (p->proto & proto)) if (p->fingerprint(la, pip, ad) == OK) { - err = p->protohandler(la, pip, ad); + error = p->protohandler(la, pip, ad); break; } LIBALIAS_RUNLOCK(&handler_chain); From owner-p4-projects@FreeBSD.ORG Mon Jul 3 15:22:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3C38F16A417; Mon, 3 Jul 2006 15:22:55 +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 0094616A403 for ; Mon, 3 Jul 2006 15:22:55 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A46CF43D46 for ; Mon, 3 Jul 2006 15:22:54 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63FMs0f001284 for ; Mon, 3 Jul 2006 15:22:54 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63FMsQP001281 for perforce@freebsd.org; Mon, 3 Jul 2006 15:22:54 GMT (envelope-from piso@freebsd.org) Date: Mon, 3 Jul 2006 15:22:54 GMT Message-Id: <200607031522.k63FMsQP001281@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100507 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 15:22:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=100507 Change 100507 by piso@piso_newluxor on 2006/07/03 15:22:38 Revert previous changes: i axed too much stuff. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#3 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#4 (text+ko) ==== @@ -56,15 +56,20 @@ #include +#if __FreeBSD_version >= 500000 /* XXX - make the compiler happy... */ int strncmp(const char *s1, const char *s2, size_t len); +#endif -/* Protocol and userland module handlers chains. */ +/* protocol and userland module handlers chains */ struct chain handler_chain, dll_chain; -// XXX - use queue(3) and errno.h #ifdef _KERNEL +#if __FreeBSD_version >= 500000 + +/* Fine grained locking for 5.x, 6.x and 7.x */ + #define LIBALIAS_LOCK_INIT(_chain) \ mtx_init(&(_chain)->mtx, "libalias list of proto-handlers", NULL, \ MTX_DEF | MTX_RECURSE) @@ -122,8 +127,58 @@ if (mtx_initialized(&c->mtx)) LIBALIAS_LOCK_DESTROY(c); } +#else + +/* Good old spl*() locking for 4.x */ +/* + * XXX - i'm not sure about mutex & conditional var + * conversion that i did using spl*()... + */ + +#define LIBALIAS_LOCK_INIT(_chain) (_chain)->spl = 0 +#define LIBALIAS_LOCK_DESTROY(_chain) +#define LIBALIAS_WLOCK_ASSERT(_chain) do { \ + KASSERT(_chain->spl != 0, ("chain not locked")); \ +} while (0) + +static __inline void +LIBALIAS_RLOCK(struct chain *chain) +{ + chain->spl = splimp(); +} -#else +static __inline void +LIBALIAS_RUNLOCK(struct chain *chain) +{ + splx(chain->spl); +} + +static __inline void +LIBALIAS_WLOCK(struct chain *chain) +{ + LIBALIAS_RLOCK(chain); +} + +static __inline void +LIBALIAS_WUNLOCK(struct chain *chain) +{ + LIBALIAS_RUNLOCK(chain); +} + +static void +_handler_chain_init(struct chain *c) { + + c->spl = 0; +} + +static void +_handler_chain_destroy(struct chain *c) { + + ; +} + +#endif +#else #define LIBALIAS_LOCK_INIT(_chain) ; #define LIBALIAS_LOCK_DESTROY(_chain) ; @@ -182,16 +237,16 @@ LIBALIAS_WLOCK_ASSERT(c); b = (struct proto_handler **)&c->chain; - p->next = NULL; /* I'm paranoid... */ + p->next = NULL; /* i'm paranoid... */ for(; *b != NULL; b = &((*b)->next), i++) { if (((*b)->pri == p->pri) && ((*b)->dir == p->dir) && ((*b)->proto == p->proto)) - return (EHDCON); /* Priority conflict. */ + return (EHDCON); /* priority conflict */ if ((*b)->pri > p->pri) { p->next = *b; break; } } - /* End of list or got right position, insert here. */ + /* end of list or got right position, insert here */ *b = p; return (OK); } @@ -205,62 +260,62 @@ for(; (*b != NULL) && (*b != p); b = &((*b)->next)) ; if (*b == p) *b = p->next; - else return (EHDNOF); /* Handler not found. */ + else return (EHDNOF); /* handler not found */ return (OK); } int attach_handlers(struct proto_handler *_p) { - int i, error = NOK; + int i, res = NOK; LIBALIAS_WLOCK(&handler_chain); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; - error = _attach_handler(&handler_chain, &_p[i]); - if (error != OK) break; + res = _attach_handler(&handler_chain, &_p[i]); + if (res != OK) break; } LIBALIAS_WUNLOCK(&handler_chain); - return (error); + return (res); } int detach_handlers(struct proto_handler *_p) { - int i, error = NOK; + int i, res = NOK; LIBALIAS_WLOCK(&handler_chain); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; - error = _detach_handler(&handler_chain, &_p[i]); - if (error != OK) break; + res = _detach_handler(&handler_chain, &_p[i]); + if (res != OK) break; } LIBALIAS_WUNLOCK(&handler_chain); - return (error); + return (res); } int detach_handler(struct proto_handler *_p) { - int error = NOK; + int res = NOK; LIBALIAS_WLOCK(&handler_chain); - error = _detach_handler(&handler_chain, _p); + res = _detach_handler(&handler_chain, _p); LIBALIAS_WUNLOCK(&handler_chain); - return (error); + return (res); } int find_handler(int8_t dir, int8_t proto, struct libalias *la, struct ip *pip, struct alias_data *ad) { struct proto_handler *p; - int error; + int err; LIBALIAS_RLOCK(&handler_chain); - for (p = handler_chain.chain, error = EHDNOF; p != NULL; p = p->next) + for (p = handler_chain.chain, err = EHDNOF; p != NULL; p = p->next) if ((p->dir & dir) && (p->proto & proto)) if (p->fingerprint(la, pip, ad) == OK) { - error = p->protohandler(la, pip, ad); + err = p->protohandler(la, pip, ad); break; } LIBALIAS_RUNLOCK(&handler_chain); - return (error); + return (err); } struct proto_handler * @@ -276,11 +331,11 @@ LIBALIAS_WLOCK_ASSERT(c); b = (struct dll **)&c->chain; - p->next = NULL; /* I'm paranoid... */ + p->next = NULL; /* i'm paranoid... */ for(; *b != NULL; b = &((*b)->next), i++) if (!strncmp((*b)->name, p->name, DLL_LEN)) - return (EHDCON); /* Dll name conflict. */ - /* End of list, insert here. */ + return (EHDCON); /* dll name conflict */ + /* end of list, insert here */ *b = p; return (OK); } @@ -288,17 +343,17 @@ static void * _detach_dll(struct chain *c, char *p) { struct dll **b; - void *error = NULL; + void *err = NULL; LIBALIAS_WLOCK_ASSERT(c); b = (struct dll **)&c->chain; for(; *b != NULL; b = &((*b)->next)) if (!strncmp((*b)->name, p, DLL_LEN)) { - error = *b; + err = *b; *b = (*b)->next; break; } - return (error); + return (err); } int ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#3 (text+ko) ==== @@ -24,7 +24,7 @@ * SUCH DAMAGE. */ -/* +/*- * Alias_mod.h defines the outside world interfaces for the packet aliasing * modular framework */ @@ -32,14 +32,13 @@ #ifndef _ALIAS_MOD_H_ #define _ALIAS_MOD_H_ -/* Protocol handlers struct & function. */ +/* protocol handlers struct & function*/ -/* Packet flow direction. */ +/* packet flow direction */ #define IN 1 #define OUT 2 -// XXX - use ip.h? -/* Working protocol. */ +/* working protocol */ #define IP 1 #define TCP 2 #define UDP 4 @@ -48,16 +47,17 @@ /* * Data passed to protocol handler module, it must be filled * right before calling find_handler() to determine which - * module is elegible to be called. + * module is elegible to be called */ -struct alias_data { +struct alias_data { + struct alias_link *lnk; struct in_addr *original_address; struct in_addr *alias_address; - uint16_t *alias_port; - uint16_t *sport, *dport; - uint16_t maxpacketsize; + u_short *alias_port; + u_int16_t *sport, *dport; + int maxpacketsize; }; /* @@ -65,8 +65,8 @@ * a protocol handler correctly work. */ -// XXX - use queue(3) struct proto_handler { + u_int pri; /* handler priority */ int16_t dir; /* flow direction */ int16_t proto; /* working protocol */ @@ -77,14 +77,22 @@ struct proto_handler *next; }; -// XXX - use rwlock(9) +#if __FreeBSD_version >= 500000 struct chain { + void *chain; struct mtx mtx; /* lock guarding list */ int busy_count; /* busy count for rw locks */ int want_write; struct cv cv; }; +#else +struct chain { + + void *chain; + int spl; +}; +#endif /* * Used only in userland when libalias needs to keep track of all @@ -93,7 +101,8 @@ */ #define DLL_LEN 32 -struct dll { +struct dll { + char name[DLL_LEN]; /* name of module */ void *handle; /* * ptr to shared obj obtained through @@ -127,7 +136,6 @@ #define OK 1 #define NOK -1 -// XXX - convert all this stuff to use errno.h /* end of handlers */ #define EOH -1 From owner-p4-projects@FreeBSD.ORG Mon Jul 3 17:30:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A637116A547; Mon, 3 Jul 2006 17:30:36 +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 8260F16A504 for ; Mon, 3 Jul 2006 17:30:36 +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 459E645418 for ; Mon, 3 Jul 2006 17:10:33 +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 k63HAXR0019037 for ; Mon, 3 Jul 2006 17:10:33 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 k63HAUcF019034 for perforce@freebsd.org; Mon, 3 Jul 2006 17:10:30 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 3 Jul 2006 17:10:30 GMT Message-Id: <200607031710.k63HAUcF019034@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 100513 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 17:30:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=100513 Change 100513 by rwatson@rwatson_peppercorn on 2006/07/03 17:09:36 Start on OpenBSM 1.0 alpha 8. Affected files ... .. //depot/projects/trustedbsd/openbsm/HISTORY#16 edit .. //depot/projects/trustedbsd/openbsm/VERSION#10 edit .. //depot/projects/trustedbsd/openbsm/configure.ac#25 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/HISTORY#16 (text+ko) ==== @@ -1,3 +1,5 @@ +OpenBSM 1.0 alpha 8 + OpenBSM 1.0 alpha 7 - Adopted Solaris-compatible format for subject32_ex and subject64_ex @@ -175,4 +177,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#15 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#16 $ ==== //depot/projects/trustedbsd/openbsm/VERSION#10 (text+ko) ==== @@ -1,1 +1,1 @@ -OPENBSM_1_0_ALPHA_7 +OPENBSM_1_0_ALPHA_8 ==== //depot/projects/trustedbsd/openbsm/configure.ac#25 (text+ko) ==== @@ -2,8 +2,8 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT([OpenBSM], [1.0a7], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) -AC_REVISION([$P4: //depot/projects/trustedbsd/openbsm/configure.ac#24 $]) +AC_INIT([OpenBSM], [1.0a8], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) +AC_REVISION([$P4: //depot/projects/trustedbsd/openbsm/configure.ac#25 $]) AC_CONFIG_SRCDIR([bin/auditreduce/auditreduce.c]) AC_CONFIG_AUX_DIR(config) AC_CONFIG_HEADER([config/config.h]) From owner-p4-projects@FreeBSD.ORG Mon Jul 3 17:31:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B978116A59B; Mon, 3 Jul 2006 17:31:00 +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 973DC16A592 for ; Mon, 3 Jul 2006 17:31:00 +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 9E15E4541B for ; Mon, 3 Jul 2006 17:10:33 +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 k63HAXEQ019043 for ; Mon, 3 Jul 2006 17:10:33 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 k63HAXXh019040 for perforce@freebsd.org; Mon, 3 Jul 2006 17:10:33 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 3 Jul 2006 17:10:33 GMT Message-Id: <200607031710.k63HAXXh019040@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 100514 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 17:31:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=100514 Change 100514 by rwatson@rwatson_peppercorn on 2006/07/03 17:10:24 Correct typo in definition of AUR_INT. Submitted by: Martin Fong Affected files ... .. //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#20 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#20 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#19 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#20 $ */ #ifndef _BSM_AUDIT_RECORD_H_ @@ -184,7 +184,7 @@ #define AUR_CHAR AUR_BYTE #define AUR_SHORT 1 #define AUR_INT32 2 -#define AUR_INT AUR_INT +#define AUR_INT AUR_INT32 #define AUR_INT64 3 /* ... and their sizes */ From owner-p4-projects@FreeBSD.ORG Mon Jul 3 17:31:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7964416A560; Mon, 3 Jul 2006 17:31:46 +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 495F016A535 for ; Mon, 3 Jul 2006 17:31:46 +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 62BC14549E for ; Mon, 3 Jul 2006 17:11:35 +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 k63HBZBx019107 for ; Mon, 3 Jul 2006 17:11:35 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 k63HBZOP019104 for perforce@freebsd.org; Mon, 3 Jul 2006 17:11:35 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 3 Jul 2006 17:11:35 GMT Message-Id: <200607031711.k63HBZOP019104@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 100515 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 17:31:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=100515 Change 100515 by rwatson@rwatson_peppercorn on 2006/07/03 17:10:48 Start adding alpha8 history. Affected files ... .. //depot/projects/trustedbsd/openbsm/HISTORY#17 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/HISTORY#17 (text+ko) ==== @@ -1,5 +1,7 @@ OpenBSM 1.0 alpha 8 +- Correct typo in definition of AUR_INT. + OpenBSM 1.0 alpha 7 - Adopted Solaris-compatible format for subject32_ex and subject64_ex @@ -177,4 +179,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#16 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#17 $ From owner-p4-projects@FreeBSD.ORG Mon Jul 3 20:35:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3783516A4AB; Mon, 3 Jul 2006 20:35:26 +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 0B36F16A47C for ; Mon, 3 Jul 2006 20:35:26 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4FC0443D79 for ; Mon, 3 Jul 2006 20:35:16 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63KZFjS033267 for ; Mon, 3 Jul 2006 20:35:15 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63KZFwC033264 for perforce@freebsd.org; Mon, 3 Jul 2006 20:35:15 GMT (envelope-from wsalamon@computer.org) Date: Mon, 3 Jul 2006 20:35:15 GMT Message-Id: <200607032035.k63KZFwC033264@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 100524 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 20:35:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=100524 Change 100524 by wsalamon@vh3 on 2006/07/03 20:34:16 Break the handling of EXTATTR events into separate cases for clarity. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#17 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#17 (text+ko) ==== @@ -238,6 +238,29 @@ } \ } while (0) \ +#define EXTATTR_TOKENS do { \ + if (ARG_IS_VALID(kar, ARG_VALUE)) { \ + switch (ar->ar_arg_value) { \ + case EXTATTR_NAMESPACE_USER: \ + tok = au_to_text(EXTATTR_NAMESPACE_USER_STRING);\ + break; \ + case EXTATTR_NAMESPACE_SYSTEM: \ + tok = au_to_text(EXTATTR_NAMESPACE_SYSTEM_STRING);\ + break; \ + default: \ + tok = au_to_arg32(3, "attrnamespace", \ + ar->ar_arg_value); \ + break; \ + } \ + kau_write(rec, tok); \ + } \ + /* attrname is in the text field */ \ + if (ARG_IS_VALID(kar, ARG_TEXT)) { \ + tok = au_to_text(ar->ar_arg_text); \ + kau_write(rec, tok); \ + } \ +} while (0) + /* * Implement auditing for the auditon() system call. The audit tokens that * are generated depend on the command that was sent into the auditon() @@ -626,6 +649,18 @@ UPATH1_VNODE1_TOKENS; break; + case AUE_EXTATTRCTL: + UPATH1_VNODE1_TOKENS; + if (ARG_IS_VALID(kar, ARG_CMD)) { + tok = au_to_arg32(2, "cmd", ar->ar_arg_cmd); + kau_write(rec, tok); + } + /* extattrctl(2) filename parameter is in upath2/vnode2 */ + UPATH2_TOKENS; + VNODE2_TOKENS; + EXTATTR_TOKENS; + break; + case AUE_EXTATTR_GET_FILE: case AUE_EXTATTR_SET_FILE: case AUE_EXTATTR_LIST_FILE: @@ -634,16 +669,10 @@ case AUE_EXTATTR_SET_LINK: case AUE_EXTATTR_LIST_LINK: case AUE_EXTATTR_DELETE_LINK: - case AUE_EXTATTRCTL: UPATH1_VNODE1_TOKENS; - if (ARG_IS_VALID(kar, ARG_CMD)) { - tok = au_to_arg32(2, "cmd", ar->ar_arg_cmd); - kau_write(rec, tok); - } - /* extattrctl(2) filename parameter is in upath2/vnode2 */ - UPATH2_TOKENS; - VNODE2_TOKENS; - /* fall through */ + EXTATTR_TOKENS; + break; + case AUE_EXTATTR_GET_FD: case AUE_EXTATTR_SET_FD: case AUE_EXTATTR_LIST_FD: @@ -652,26 +681,7 @@ tok = au_to_arg32(2, "fd", ar->ar_arg_fd); kau_write(rec, tok); } - if (ARG_IS_VALID(kar, ARG_VALUE)) { - switch (ar->ar_arg_value) { - case EXTATTR_NAMESPACE_USER: - tok = au_to_text(EXTATTR_NAMESPACE_USER_STRING); - break; - case EXTATTR_NAMESPACE_SYSTEM: - tok = au_to_text(EXTATTR_NAMESPACE_SYSTEM_STRING); - break; - default: - tok = au_to_arg32(3, "attrnamespace", - ar->ar_arg_value); - break; - } - kau_write(rec, tok); - } - /* attrname is in the text field */ - if (ARG_IS_VALID(kar, ARG_TEXT)) { - tok = au_to_text(ar->ar_arg_text); - kau_write(rec, tok); - } + EXTATTR_TOKENS; break; case AUE_FCHMOD: From owner-p4-projects@FreeBSD.ORG Mon Jul 3 21:11:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E8A1C16A40F; Mon, 3 Jul 2006 21:11:01 +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 924D316A47B for ; Mon, 3 Jul 2006 21:11:01 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ADF1A449C1 for ; Mon, 3 Jul 2006 21:11:00 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63LB0Xo044089 for ; Mon, 3 Jul 2006 21:11:00 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63LB07p044086 for perforce@freebsd.org; Mon, 3 Jul 2006 21:11:00 GMT (envelope-from clem1@FreeBSD.org) Date: Mon, 3 Jul 2006 21:11:00 GMT Message-Id: <200607032111.k63LB07p044086@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100526 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 21:11:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=100526 Change 100526 by clem1@clem1_ipv6vulns on 2006/07/03 21:10:22 ICMPv6 option support in libnet. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-functions.h#6 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-headers.h#5 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-structures.h#4 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_build_icmpv6.c#3 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-functions.h#6 (text+ko) ==== @@ -999,6 +999,100 @@ u_int32_t unused, struct libnet_in6_addr, struct libnet_in6_addr, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); +/** + * Builds an IP version 6 RFC 2461 Internet Control Message Protocol (ICMP) + * target link layer option header + * @param type of ICMP option packet (should be ICMP6_OPT_TLLA) + * @param code of ICMP option packet (should be 0) + * @param target mac address + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_opt_tlla(u_int8_t type, u_int8_t length, + u_int8_t *target, u_int8_t *payload, u_int32_t payload_s, + libnet_t *l, libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2461 Internet Control Message Protocol (ICMP) + * source link layer option header + * @param type of ICMP option packet (should be ICMP6_OPT_SLLA) + * @param len of ICMP option packet + * @param source mac address + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_opt_slla(u_int8_t type, u_int8_t length, + u_int8_t *source, u_int8_t *payload, u_int32_t payload_s, + libnet_t *l, libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2461 Internet Control Message Protocol (ICMP) + * prefix information option header + * @param type of ICMP option packet (should be ICMP6_OPT_PI) + * @param len of ICMP option packet + * @param prefix len + * @param on link flag + * @param autonomous addr configuration flag + * @param valid lifetime + * @param preferred lifetime + * @param reserved + * @param ip6 prefix + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_opt_pi(u_int8_t type, u_int8_t length, u_int8_t prefixlen, + u_int8_t ol, u_int8_t a, u_int32_t validlt, u_int32_t preferredlt, + u_int32_t reserved, struct libnet_in6_addr prefix, + u_int32_t payload_s, u_int8_t *payload, libnet_t *l, + libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2461 Internet Control Message Protocol (ICMP) + * redirected option header + * @param type of ICMP option packet (should be ICMP6_OPT_RH) + * @param len of ICMP option packet + * @param reserved + * @param reserved + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_opt_rh(u_int8_t type, u_int8_t length, u_int16_t r1, + u_int32_t r2, u_int32_t payload_s, u_int8_t *payload, libnet_t *l, + libnet_ptag_t ptag); + +/** + * Builds an IP version 6 RFC 2461 Internet Control Message Protocol (ICMP) + * MTU option header + * @param type of ICMP option packet (should be ICMP6_OPT_RH) + * @param len of ICMP option packet + * @param reserved + * @param MTU + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_icmpv6_opt_mtu(u_int8_t type, u_int8_t length, u_int16_t r, + u_int32_t mtu, u_int32_t payload_s, u_int8_t *payload, libnet_t *l, + libnet_ptag_t ptag); /** * Builds an RFC 1112 Internet Group Memebership Protocol (IGMP) header. ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-headers.h#5 (text+ko) ==== @@ -75,6 +75,11 @@ #define LIBNET_ICMPV6_RA_H 0x10 /**< ICMPV6_RA header: 16 bytes */ #define LIBNET_ICMPV6_NS_H 0x18 /**< ICMPV6_NS header: 24 bytes */ #define LIBNET_ICMPV6_NA_H 0x18 /**< ICMPV6_NA header: 24 bytes */ +#define LIBNET_ICMPV6_OPT_SLLA_H 0x08 /**< ICMPV6_LLLA header: 8 bytes */ +#define LIBNET_ICMPV6_OPT_TLLA_H 0x08 /**< ICMPV6_TLLA header: 8 bytes */ +#define LIBNET_ICMPV6_OPT_PI_H 0x20 /**< ICMPV6_PI header: 32 bytes */ +#define LIBNET_ICMPV6_OPT_MTU_H 0x08 /**< ICMPV6_MTU header: 8 bytes */ +#define LIBNET_ICMPV6_OPT_RH_H 0x08 /**< ICMPV6_RH header: 8 bytes */ #define LIBNET_IGMP_H 0x08 /**< IGMP header: 8 bytes */ #define LIBNET_IPV4_H 0x14 /**< IPv4 header: 20 bytes */ #define LIBNET_IPV6_H 0x28 /**< IPv6 header: 40 bytes */ @@ -967,7 +972,7 @@ #undef icmp_maxdelay #undef icmp_reserved2 #define icmp_maxdelay hun.mld.maxdelay -#define icmp_reserved hun.mld.reserved2 +#define icmp_reserved2 hun.mld.reserved2 u_int32_t pointer; /* ICMP pointer */ #undef icmp_pointer #define icmp_pointer hun.pointer @@ -1015,8 +1020,74 @@ }qun; }; +/* + * ICMPV6 link-layer address option header + * Base header size: 8 bytes + */ +struct libnet_icmpv6_opt_lla_hdr +{ + u_int8_t type; /* ICMP opt type */ +#ifndef ICMP6_OPT_SLLA +#define ICMP6_OPT_SLLA 1 +#endif +#ifndef ICMP6_OPT_TLLA +#define ICMP6_OPT_TLLA 2 +#endif + u_int8_t len; /* ICMP opt header len */ + int8_t addr[6]; +}; /* + * ICMPV6 prefix information option header + * Header size: 32 bytes + */ +struct libnet_icmpv6_opt_pi_hdr +{ + u_int8_t type; /* ICMP opt type */ +#ifndef ICMP6_OPT_PI +#define ICMP6_OPT_PI 3 +#endif + u_int8_t len; + u_int8_t prefixlen; + u_int8_t la; + u_int32_t validlt; + u_int32_t preferredlt; + u_int32_t reserved; + struct libnet_in6_addr prefix; +}; + +/* + * ICMPV6 redirect option header + * Header size: 8 bytes + */ +struct libnet_icmpv6_opt_rh_hdr +{ + u_int8_t type; +#ifndef ICMP6_OPT_RH +#define ICMP6_OPT_RH 4 +#endif + u_int8_t len; + u_int16_t reserved1; + u_int32_t reserved2; +}; + +/* + * ICMPV6 MTU option header + * Header size: 8 bytes + */ +struct libnet_icmpv6_opt_mtu_hdr +{ + u_int8_t type; +#ifndef ICMP6_OPT_MTU +#define ICMP6_OPT_MTU 5 +#endif + u_int8_t len; + u_int16_t reserved; + u_int32_t mtu; +}; + + +/* * ICMP header * Internet Control Message Protocol * Base header size: 4 bytes ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-structures.h#4 (text+ko) ==== @@ -159,6 +159,11 @@ #define LIBNET_PBLOCK_ICMPV6_MULTICAST_H 0x4a /* ICMP6 multicast group management header */ #define LIBNET_PBLOCK_ICMPV6_NI_H 0x4b /* ICMP6 node information header */ #define LIBNET_PBLOCK_ICMPV6_UNREACH_H 0x4c /* ICMP6 destination unreach packet */ +#define LIBNET_PBLOCK_ICMPV6_OPT_TLLA_H 0x4d /* ICMP6 option target link layer header */ +#define LIBNET_PBLOCK_ICMPV6_OPT_SLLA_H 0x4e /* ICMP6 option source link layer header */ +#define LIBNET_PBLOCK_ICMPV6_OPT_PI_H 0x4f /* ICMP6 option prefix information header */ +#define LIBNET_PBLOCK_ICMPV6_OPT_RH_H 0x50 /* ICMP6 option redirect header */ +#define LIBNET_PBLOCK_ICMPV6_OPT_MTU_H 0x51 /* ICMP6 option MTU header */ u_int8_t flags; /* control flags */ #define LIBNET_PBLOCK_DO_CHECKSUM 0x01 /* needs a checksum */ libnet_ptag_t ptag; /* protocol block tag */ ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_build_icmpv6.c#3 (text+ko) ==== @@ -461,6 +461,31 @@ } } + /* + * Some shits around icmpv6 option and related to checksumming + */ + if (p->prev && sum == 0) + { + switch(p->prev->type) + { + case LIBNET_PBLOCK_ICMPV6_OPT_SLLA_H: + case LIBNET_PBLOCK_ICMPV6_OPT_TLLA_H: + h += LIBNET_ICMPV6_OPT_TLLA_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_PI_H: + h += LIBNET_ICMPV6_OPT_PI_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_RH_H: + h += LIBNET_ICMPV6_OPT_RH_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_MTU_H: + h += LIBNET_ICMPV6_OPT_MTU_H; + break; + default: + break; + } + } + if (sum == 0) { /* @@ -613,6 +638,31 @@ } } + /* + * Some shits around icmpv6 option and related to checksumming + */ + if (p->prev && sum == 0) + { + switch(p->prev->type) + { + case LIBNET_PBLOCK_ICMPV6_OPT_SLLA_H: + case LIBNET_PBLOCK_ICMPV6_OPT_TLLA_H: + h += LIBNET_ICMPV6_OPT_TLLA_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_PI_H: + h += LIBNET_ICMPV6_OPT_PI_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_RH_H: + h += LIBNET_ICMPV6_OPT_RH_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_MTU_H: + h += LIBNET_ICMPV6_OPT_MTU_H; + break; + default: + break; + } + } + if (sum == 0) { /* @@ -685,6 +735,31 @@ } } + /* + * Some shits around icmpv6 option and related to checksumming + */ + if (p->prev && sum == 0) + { + switch(p->prev->type) + { + case LIBNET_PBLOCK_ICMPV6_OPT_SLLA_H: + case LIBNET_PBLOCK_ICMPV6_OPT_TLLA_H: + h += LIBNET_ICMPV6_OPT_TLLA_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_PI_H: + h += LIBNET_ICMPV6_OPT_PI_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_RH_H: + h += LIBNET_ICMPV6_OPT_RH_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_MTU_H: + h += LIBNET_ICMPV6_OPT_MTU_H; + break; + default: + break; + } + } + if (sum == 0) { /* @@ -764,6 +839,31 @@ } } + /* + * Some shits around icmpv6 option and related to checksumming + */ + if (p->prev && sum == 0) + { + switch(p->prev->type) + { + case LIBNET_PBLOCK_ICMPV6_OPT_SLLA_H: + case LIBNET_PBLOCK_ICMPV6_OPT_TLLA_H: + h += LIBNET_ICMPV6_OPT_TLLA_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_PI_H: + h += LIBNET_ICMPV6_OPT_PI_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_RH_H: + h += LIBNET_ICMPV6_OPT_RH_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_MTU_H: + h += LIBNET_ICMPV6_OPT_MTU_H; + break; + default: + break; + } + } + if (sum == 0) { /* @@ -844,6 +944,31 @@ } } + /* + * Some shits around icmpv6 option and related to checksumming + */ + if (p->prev && sum == 0) + { + switch(p->prev->type) + { + case LIBNET_PBLOCK_ICMPV6_OPT_SLLA_H: + case LIBNET_PBLOCK_ICMPV6_OPT_TLLA_H: + h += LIBNET_ICMPV6_OPT_TLLA_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_PI_H: + h += LIBNET_ICMPV6_OPT_PI_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_RH_H: + h += LIBNET_ICMPV6_OPT_RH_H; + break; + case LIBNET_PBLOCK_ICMPV6_OPT_MTU_H: + h += LIBNET_ICMPV6_OPT_MTU_H; + break; + default: + break; + } + } + if (sum == 0) { /* @@ -860,3 +985,322 @@ return (-1); } +libnet_ptag_t +libnet_build_icmpv6_opt_tlla(u_int8_t type, u_int8_t length, + u_int8_t *target, u_int8_t *payload, u_int32_t payload_s, + libnet_t *l, libnet_ptag_t ptag) +{ + u_int32_t n, h, i; + libnet_pblock_t *p; + struct libnet_icmpv6_opt_lla_hdr opt; + + if(l == NULL) + { + return (-1); + } + + n = LIBNET_ICMPV6_OPT_TLLA_H + payload_s; /* size of memory block */ + h = LIBNET_ICMPV6_OPT_TLLA_H + payload_s; /* hl for checksum */ + + /* + * Find the existing protocol block if a ptag is specified, or create + * a new one. + */ + p = libnet_pblock_probe(l, ptag, n, LIBNET_PBLOCK_ICMPV6_OPT_TLLA_H); + if(p == NULL) + { + return (-1); + } + + memset(&opt, 0, sizeof(opt)); + opt.type = type; /* option type */ + opt.len = length; /* header len */ + for (i = 0; i < 8; i++) + { + opt.addr[i] = target[i]; /* target */ + } + + n = libnet_pblock_append(l, p, (u_int8_t *)&opt, LIBNET_ICMPV6_OPT_TLLA_H); + if (n == -1) + { + goto bad; + } + + if ((payload && !payload_s) || (!payload && payload_s)) + { + snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, + "%s(): payload inconsistency\n", __func__); + goto bad; + } + + if (payload && payload_s) + { + n = libnet_pblock_append(l, p, payload, payload_s); + if (n == -1) + { + goto bad; + } + } + + return (ptag ? ptag : libnet_pblock_update(l, p, h, + LIBNET_PBLOCK_ICMPV6_OPT_TLLA_H)); +bad: + libnet_pblock_delete(l, p); + return (-1); +} + +libnet_ptag_t +libnet_build_icmpv6_opt_slla(u_int8_t type, u_int8_t length, + u_int8_t *source, u_int8_t *payload, u_int32_t payload_s, + libnet_t *l, libnet_ptag_t ptag) +{ + u_int32_t n, h, i; + libnet_pblock_t *p; + struct libnet_icmpv6_opt_lla_hdr opt; + + if(l == NULL) + { + return (-1); + } + + n = LIBNET_ICMPV6_OPT_SLLA_H + payload_s; /* size of memory block */ + h = LIBNET_ICMPV6_OPT_SLLA_H + payload_s; /* hl for checksum */ + + /* + * Find the existing protocol block if a ptag is specified, or create + * a new one. + */ + p = libnet_pblock_probe(l, ptag, n, LIBNET_PBLOCK_ICMPV6_OPT_SLLA_H); + if(p == NULL) + { + return (-1); + } + + memset(&opt, 0, sizeof(opt)); + opt.type = type; /* option type */ + opt.len = length; /* packet code */ + for (i = 0; i < 8; i++) + { + opt.addr[i] = source[i]; /* target */ + } + + n = libnet_pblock_append(l, p, (u_int8_t *)&opt, LIBNET_ICMPV6_OPT_SLLA_H); + if (n == -1) + { + goto bad; + } + + if ((payload && !payload_s) || (!payload && payload_s)) + { + snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, + "%s(): payload inconsistency\n", __func__); + goto bad; + } + + if (payload && payload_s) + { + n = libnet_pblock_append(l, p, payload, payload_s); + if (n == -1) + { + goto bad; + } + } + + return (ptag ? ptag : libnet_pblock_update(l, p, h, + LIBNET_PBLOCK_ICMPV6_OPT_SLLA_H)); +bad: + libnet_pblock_delete(l, p); + return (-1); +} + +libnet_ptag_t +libnet_build_icmpv6_opt_pi(u_int8_t type, u_int8_t length, u_int8_t prefixlen, + u_int8_t ol, u_int8_t a, u_int32_t validlt, u_int32_t preferredlt, + u_int32_t reserved, struct libnet_in6_addr prefix, + u_int32_t payload_s, u_int8_t *payload, libnet_t *l, + libnet_ptag_t ptag) +{ + u_int32_t n, h; + libnet_pblock_t *p; + struct libnet_icmpv6_opt_pi_hdr opt; + + if(l == NULL) + { + return (-1); + } + + n = LIBNET_ICMPV6_OPT_PI_H + payload_s; /* size of memory block */ + h = LIBNET_ICMPV6_OPT_PI_H + payload_s; /* hl for checksum */ + + /* + * Find the existing protocol block if a ptag is specified, or create + * a new one. + */ + p = libnet_pblock_probe(l, ptag, n, LIBNET_PBLOCK_ICMPV6_OPT_PI_H); + if(p == NULL) + { + return (-1); + } + + memset(&opt, 0, sizeof(opt)); + opt.type = type; /* option type */ + opt.len = length; /* packet header len */ + opt.prefixlen = prefixlen; + opt.la = (ol << 7) + (a << 6); + opt.validlt = validlt; + opt.preferredlt = preferredlt; + opt.reserved = reserved; + opt.prefix = prefix; + + n = libnet_pblock_append(l, p, (u_int8_t *)&opt, LIBNET_ICMPV6_OPT_PI_H); + if (n == -1) + { + goto bad; + } + + if ((payload && !payload_s) || (!payload && payload_s)) + { + snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, + "%s(): payload inconsistency\n", __func__); + goto bad; + } + + if (payload && payload_s) + { + n = libnet_pblock_append(l, p, payload, payload_s); + if (n == -1) + { + goto bad; + } + } + + return (ptag ? ptag : libnet_pblock_update(l, p, h, + LIBNET_PBLOCK_ICMPV6_OPT_PI_H)); +bad: + libnet_pblock_delete(l, p); + return (-1); +} + +libnet_ptag_t +libnet_build_icmpv6_opt_rh(u_int8_t type, u_int8_t length, u_int16_t r1, + u_int32_t r2, u_int32_t payload_s, u_int8_t *payload, libnet_t *l, + libnet_ptag_t ptag) +{ + u_int32_t n, h; + libnet_pblock_t *p; + struct libnet_icmpv6_opt_rh_hdr opt; + + if(l == NULL) + { + return (-1); + } + + n = LIBNET_ICMPV6_OPT_RH_H + payload_s; /* size of memory block */ + h = LIBNET_ICMPV6_OPT_RH_H + payload_s; /* hl for checksum */ + + /* + * Find the existing protocol block if a ptag is specified, or create + * a new one. + */ + p = libnet_pblock_probe(l, ptag, n, LIBNET_PBLOCK_ICMPV6_OPT_RH_H); + if(p == NULL) + { + return (-1); + } + + memset(&opt, 0, sizeof(opt)); + opt.type = type; /* option type */ + opt.len = length; /* packet header len */ + opt.reserved1 = r1; + opt.reserved2 = r2; + + n = libnet_pblock_append(l, p, (u_int8_t *)&opt, LIBNET_ICMPV6_OPT_RH_H); + if (n == -1) + { + goto bad; + } + + if ((payload && !payload_s) || (!payload && payload_s)) + { + snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, + "%s(): payload inconsistency\n", __func__); + goto bad; + } + + if (payload && payload_s) + { + n = libnet_pblock_append(l, p, payload, payload_s); + if (n == -1) + { + goto bad; + } + } + + return (ptag ? ptag : libnet_pblock_update(l, p, h, + LIBNET_PBLOCK_ICMPV6_OPT_RH_H)); +bad: + libnet_pblock_delete(l, p); + return (-1); +} + +libnet_ptag_t +libnet_build_icmpv6_opt_mtu(u_int8_t type, u_int8_t length, u_int16_t r, + u_int32_t mtu, u_int32_t payload_s, u_int8_t *payload, + libnet_t *l, libnet_ptag_t ptag) +{ + u_int32_t n, h; + libnet_pblock_t *p; + struct libnet_icmpv6_opt_mtu_hdr opt; + + if(l == NULL) + { + return (-1); + } + + n = LIBNET_ICMPV6_OPT_MTU_H + payload_s; /* size of memory block */ + h = LIBNET_ICMPV6_OPT_MTU_H + payload_s; /* hl for checksum */ + + /* + * Find the existing protocol block if a ptag is specified, or create + * a new one. + */ + p = libnet_pblock_probe(l, ptag, n, LIBNET_PBLOCK_ICMPV6_OPT_MTU_H); + if(p == NULL) + { + return (-1); + } + + memset(&opt, 0, sizeof(opt)); + opt.type = type; /* option type */ + opt.len = length; /* packet header len */ + opt.reserved = r; + opt.mtu = mtu; + + n = libnet_pblock_append(l, p, (u_int8_t *)&opt, LIBNET_ICMPV6_OPT_MTU_H); + if (n == -1) + { + goto bad; + } + + if ((payload && !payload_s) || (!payload && payload_s)) + { + snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, + "%s(): payload inconsistency\n", __func__); + goto bad; + } + + if (payload && payload_s) + { + n = libnet_pblock_append(l, p, payload, payload_s); + if (n == -1) + { + goto bad; + } + } + + return (ptag ? ptag : libnet_pblock_update(l, p, h, + LIBNET_PBLOCK_ICMPV6_OPT_MTU_H)); +bad: + libnet_pblock_delete(l, p); + return (-1); +} From owner-p4-projects@FreeBSD.ORG Mon Jul 3 23:02:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C3E3516A4E5; Mon, 3 Jul 2006 23:02:17 +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 A070616A4DE for ; Mon, 3 Jul 2006 23:02:17 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 597B843D60 for ; Mon, 3 Jul 2006 23:02:17 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63N2Hcu049930 for ; Mon, 3 Jul 2006 23:02:17 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63N2Hpd049927 for perforce@freebsd.org; Mon, 3 Jul 2006 23:02:17 GMT (envelope-from imp@freebsd.org) Date: Mon, 3 Jul 2006 23:02:17 GMT Message-Id: <200607032302.k63N2Hpd049927@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100529 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 23:02:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=100529 Change 100529 by imp@imp_lighthouse on 2006/07/03 23:01:39 Mark flags as volatile better interface. need more info to start than is available in the start bus interface command... Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_twi.c#15 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_twi.c#15 (text+ko) ==== @@ -52,7 +52,7 @@ struct resource *irq_res; /* IRQ resource */ struct resource *mem_res; /* Memory resource */ struct mtx sc_mtx; /* basically a perimeter lock */ - int flags; + volatile int flags; #define RXRDY 4 #define TXRDY 0x10 uint32_t cwgr; @@ -268,8 +268,6 @@ sc = device_get_softc(dev); WR4(sc, TWI_MMR, TWI_MMR_DADR(slave)); - WR4(sc, TWI_CR, TWI_CR_START); - sc->sc_started = 1; return (0); } @@ -283,7 +281,6 @@ sc = device_get_softc(dev); WR4(sc, TWI_MMR, TWI_MMR_DADR(slave)); - WR4(sc, TWI_CR, TWI_CR_START); sc->sc_started = 1; return (0); } @@ -297,8 +294,10 @@ walker = buf; sc = device_get_softc(dev); + AT91_TWI_LOCK(sc); WR4(sc, TWI_MMR, TWI_MMR_MWRITE | RD4(sc, TWI_MMR)); - AT91_TWI_LOCK(sc); + WR4(sc, TWI_CR, TWI_CR_START); + sc->sc_started = 1; WR4(sc, TWI_IER, TWI_SR_TXRDY); while (len--) { WR4(sc, TWI_THR, *walker++); @@ -327,6 +326,8 @@ sc = device_get_softc(dev); AT91_TWI_LOCK(sc); WR4(sc, TWI_MMR, ~TWI_MMR_MWRITE & RD4(sc, TWI_MMR)); + WR4(sc, TWI_CR, TWI_CR_START); + sc->sc_started = 1; WR4(sc, TWI_IER, TWI_SR_RXRDY); while (len-- > 0) { err = 0; From owner-p4-projects@FreeBSD.ORG Mon Jul 3 23:05:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 300C416A4E6; Mon, 3 Jul 2006 23:05:24 +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 EAE3716A4DA for ; Mon, 3 Jul 2006 23:05:23 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6FDC243D45 for ; Mon, 3 Jul 2006 23:05:21 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63N5Lhf051282 for ; Mon, 3 Jul 2006 23:05:21 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63N5LTm051279 for perforce@freebsd.org; Mon, 3 Jul 2006 23:05:21 GMT (envelope-from imp@freebsd.org) Date: Mon, 3 Jul 2006 23:05:21 GMT Message-Id: <200607032305.k63N5LTm051279@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100530 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jul 2006 23:05:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100530 Change 100530 by imp@imp_lighthouse on 2006/07/03 23:05:17 newbus glue Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_twi.c#16 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_twi.c#16 (text+ko) ==== @@ -444,3 +444,4 @@ }; DRIVER_MODULE(at91_twi, atmelarm, at91_twi_driver, at91_twi_devclass, 0, 0); +DRIVER_MODULE(iicbus, at91_twi, iicbus_driver, iicbus_devclass, 0, 0); From owner-p4-projects@FreeBSD.ORG Tue Jul 4 01:07:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E1D0B16A4DF; Tue, 4 Jul 2006 01:07:53 +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 8BB6116A4E1 for ; Tue, 4 Jul 2006 01:07:53 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3F0A743D46 for ; Tue, 4 Jul 2006 01:07:53 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6417rP8069153 for ; Tue, 4 Jul 2006 01:07:53 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6417qDW069150 for perforce@freebsd.org; Tue, 4 Jul 2006 01:07:52 GMT (envelope-from peter@freebsd.org) Date: Tue, 4 Jul 2006 01:07:52 GMT Message-Id: <200607040107.k6417qDW069150@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 100534 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 01:07:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=100534 Change 100534 by peter@peter_daintree on 2006/07/04 01:07:41 IFC @100533 Affected files ... .. //depot/projects/bike_sched/sys/amd64/amd64/pmap.c#3 integrate .. //depot/projects/bike_sched/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/bike_sched/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/bike_sched/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/bike_sched/sys/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/bike_sched/sys/bsm/audit_kevents.h#2 integrate .. //depot/projects/bike_sched/sys/bsm/audit_record.h#3 integrate .. //depot/projects/bike_sched/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/bike_sched/sys/conf/kmod.mk#2 integrate .. //depot/projects/bike_sched/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/bike_sched/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/isp.c#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/isp_pci.c#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/ispmbox.h#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/ispreg.h#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/ispvar.h#2 integrate .. //depot/projects/bike_sched/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/bike_sched/sys/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/ciphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/nsgphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/rgephy.c#3 integrate .. //depot/projects/bike_sched/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/bike_sched/sys/dev/usb/if_ural.c#2 integrate .. //depot/projects/bike_sched/sys/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/bike_sched/sys/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/bike_sched/sys/i386/i386/pmap.c#3 integrate .. //depot/projects/bike_sched/sys/kern/sched_4bsd.c#7 integrate .. //depot/projects/bike_sched/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/bike_sched/sys/modules/streams/Makefile#2 integrate .. //depot/projects/bike_sched/sys/modules/svr4/Makefile#2 integrate .. //depot/projects/bike_sched/sys/net/bpf.c#3 integrate .. //depot/projects/bike_sched/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/bike_sched/sys/security/audit/audit.h#2 integrate .. //depot/projects/bike_sched/sys/security/audit/audit_arg.c#3 integrate Differences ... ==== //depot/projects/bike_sched/sys/amd64/amd64/pmap.c#3 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.560 2006/06/27 04:28:22 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); /* * Manages physical address maps. @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1979,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2145,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2582,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2796,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2982,7 +2974,7 @@ static __inline void pmap_clear_ptes(vm_page_t m, long bit) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t pbits, *pte; @@ -3052,35 +3044,26 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if (pte != NULL && (*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; if (rtval > 4) { PMAP_UNLOCK(pmap); @@ -3090,7 +3073,6 @@ PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3125,9 +3107,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3151,9 +3131,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3173,9 +3151,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/bike_sched/sys/arm/at91/at91_pio.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.1 2006/03/24 07:39:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); #include #include @@ -38,7 +38,9 @@ #include #include +#include #include +#include struct at91_pio_softc { @@ -103,7 +105,26 @@ static int at91_pio_probe(device_t dev) { - device_set_desc(dev, "PIO"); + const char *name; + + switch (device_get_unit(dev)) { + case 0: + name = "PIOA"; + break; + case 1: + name = "PIOB"; + break; + case 2: + name = "PIOC"; + break; + case 3: + name = "PIOD"; + break; + default: + name = "PIO"; + break; + } + device_set_desc(dev, name); return (0); } @@ -118,6 +139,9 @@ if (err) goto out; + device_printf(dev, "ABSR: %#x OSR: %#x PSR:%#x ODSR: %#x\n", + RD4(sc, PIO_ABSR), RD4(sc, PIO_OSR), RD4(sc, PIO_PSR), + RD4(sc, PIO_ODSR)); AT91_PIO_LOCK_INIT(sc); /* @@ -250,6 +274,69 @@ return (ENXIO); } +/* + * The following functions are called early in the boot process, so + * don't use bus_space, as that isn't yet available when we need to use + * them. + */ +void +at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ASR / 4] = periph_a_mask; + PIO[PIO_PDR / 4] = periph_a_mask; +} + +void +at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_BSR / 4] = periph_b_mask; + PIO[PIO_PDR / 4] = periph_b_mask; +} + +void +at91_pio_use_gpio(uint32_t pio, uint32_t gpio_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_PER / 4] = gpio_mask; +} + +void +at91_pio_gpio_input(uint32_t pio, uint32_t input_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ODR / 4] = input_enable_mask; +} + +void +at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_OER / 4] = output_enable_mask; +} + +void +at91_pio_gpio_set(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_SODR / 4] = data_mask; +} + +void +at91_pio_gpio_clear(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_CODR / 4] = data_mask; +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), ==== //depot/projects/bike_sched/sys/arm/at91/uart_dev_at91usart.c#2 (text) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.6 2006/05/13 23:41:16 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.7 2006/07/02 03:45:33 imp Exp $"); #include #include @@ -45,19 +45,29 @@ #include "uart_if.h" +#define DEFAULT_RCLK AT91C_MASTER_CLOCK +#define USART_BUFFER_SIZE 128 + /* * High-level UART interface. */ +struct at91_usart_rx { + bus_addr_t pa; + uint8_t buffer[USART_BUFFER_SIZE]; + bus_dmamap_t map; +}; + struct at91_usart_softc { struct uart_softc base; bus_dma_tag_t dmatag; /* bus dma tag for mbufs */ bus_dmamap_t tx_map; - bus_dmamap_t rx_map; + uint32_t flags; +#define HAS_TIMEOUT 1 + struct at91_usart_rx ping_pong[2]; + struct at91_usart_rx *ping; + struct at91_usart_rx *pong; }; -#define DEFAULT_RCLK AT91C_MASTER_CLOCK -#define USART_BUFFER_SIZE 128 - #define RD4(bas, reg) \ bus_space_read_4((bas)->bst, (bas)->bsh, uart_regofs(bas, reg)) #define WR4(bas, reg, value) \ @@ -72,6 +82,9 @@ } \ } while (0); +#define BAUD2DIVISOR(b) \ + ((((DEFAULT_RCLK * 10) / ((b) * 16)) + 5) / 10) + /* * Low-level UART interface. */ @@ -147,16 +160,19 @@ } /* - * Or in the stop bits. Note: The hardware supports - * 1.5 stop bits in async mode, but there's no way to - * specify that AFAICT. + * Or in the stop bits. Note: The hardware supports 1.5 stop + * bits in async mode, but there's no way to specify that + * AFAICT. Instead, rely on the convention documented at + * http://www.lammertbies.nl/comm/info/RS-232_specs.html which + * states that 1.5 stop bits are used for 5 bit bytes and + * 2 stop bits only for longer bytes. */ - if (stopbits > 1) + if (stopbits == 1) + mr |= USART_MR_NBSTOP_1; + else if (databits > 5) mr |= USART_MR_NBSTOP_2; else - mr |= USART_MR_NBSTOP_2; - /* else if (stopbits == 1.5) - mr |= USART_MR_NBSTOP_1_5; */ + mr |= USART_MR_NBSTOP_1_5; /* * We want normal plumbing mode too, none of this fancy @@ -167,6 +183,13 @@ mr &= ~USART_MR_MSBF; /* lsb first */ mr &= ~USART_MR_CKLO_SCK; /* Don't drive SCK */ + WR4(bas, USART_MR, mr); + + /* + * Set the baud rate + */ + WR4(bas, USART_BRGR, BAUD2DIVISOR(baudrate)); + /* XXX Need to take possible synchronous mode into account */ return (0); } @@ -188,25 +211,19 @@ } /* - * Initialize this device (I think as the console) + * Initialize this device for use as a console. */ static void at91_usart_init(struct uart_bas *bas, int baudrate, int databits, int stopbits, int parity) { - int cr; at91_usart_param(bas, baudrate, databits, stopbits, parity); - /* Turn on rx and tx */ - cr = USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX; - WR4(bas, USART_CR, cr); + /* Reset the rx and tx buffers and turn on rx and tx */ + WR4(bas, USART_CR, USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX); WR4(bas, USART_CR, USART_CR_RXEN | USART_CR_TXEN); - WR4(bas, USART_IER, USART_CSR_TIMEOUT | - USART_CSR_TXRDY | USART_CSR_RXRDY | - USART_CSR_RXBRK | USART_CSR_ENDRX | USART_CSR_ENDTX); - /* Set the receive timeout to be 1.5 character times. */ - WR4(bas, USART_RTOR, 12); + WR4(bas, USART_IDR, 0xffffffff); } /* @@ -227,8 +244,8 @@ at91_usart_putc(struct uart_bas *bas, int c) { - while (!(RD4(bas, USART_CSR) & - USART_CSR_TXRDY)); + while (!(RD4(bas, USART_CSR) & USART_CSR_TXRDY)) + continue; WR4(bas, USART_THR, c); } @@ -252,8 +269,8 @@ { int c; - while (!(RD4(bas, USART_CSR) & USART_CSR_RXRDY)) - ; + while (!(RD4(bas, USART_CSR) & USART_CSR_RXRDY)) + continue; c = RD4(bas, USART_RHR); c &= 0xff; return (c); @@ -291,14 +308,35 @@ return (0); } +#ifndef SKYEYE_WORKAROUNDS +static void +at91_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error) +{ + if (error != 0) + return; + *(bus_addr_t *)arg = segs[0].ds_addr; +} +#endif + static int at91_usart_bus_attach(struct uart_softc *sc) { - int err; + int err, i; + uint32_t cr; struct at91_usart_softc *atsc; atsc = (struct at91_usart_softc *)sc; + /* + * See if we have a TIMEOUT bit. We disable all interrupts to + * minimize interference. + */ + WR4(&sc->sc_bas, USART_IDR, 0xffffffff); + WR4(&sc->sc_bas, USART_IER, USART_CSR_TIMEOUT); + if (RD4(&sc->sc_bas, USART_IMR) & USART_CSR_TIMEOUT) + atsc->flags |= HAS_TIMEOUT; + WR4(&sc->sc_bas, USART_IDR, 0xffffffff); + sc->sc_txfifosz = USART_BUFFER_SIZE; sc->sc_rxfifosz = USART_BUFFER_SIZE; sc->sc_hwiflow = 0; @@ -314,25 +352,62 @@ err = bus_dmamap_create(atsc->dmatag, 0, &atsc->tx_map); if (err != 0) goto errout; - err = bus_dmamap_create(atsc->dmatag, 0, &atsc->rx_map); - if (err != 0) - goto errout; + if (atsc->flags & HAS_TIMEOUT) { + for (i = 0; i < 2; i++) { + err = bus_dmamap_create(atsc->dmatag, 0, + &atsc->ping_pong[i].map); + if (err != 0) + goto errout; + err = bus_dmamap_load(atsc->dmatag, + atsc->ping_pong[i].map, + atsc->ping_pong[i].buffer, sc->sc_rxfifosz, + at91_getaddr, &atsc->ping_pong[i].pa, 0); + if (err != 0) + goto errout; + bus_dmamap_sync(atsc->dmatag, atsc->ping_pong[i].map, + BUS_DMASYNC_PREREAD); + } + atsc->ping = &atsc->ping_pong[0]; + atsc->pong = &atsc->ping_pong[1]; + } + + /* + * Prime the pump with the RX buffer. We use two 64 byte bounce + * buffers here to avoid data overflow. + */ + + /* Turn on rx and tx */ + cr = USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX; + WR4(&sc->sc_bas, USART_CR, cr); + WR4(&sc->sc_bas, USART_CR, USART_CR_RXEN | USART_CR_TXEN); + + /* + * Setup the PDC to receive data. We use the ping-pong buffers + * so that we can more easily bounce between the two and so that + * we get an interrupt 1/2 way through the software 'fifo' we have + * to avoid overruns. + */ + if (atsc->flags & HAS_TIMEOUT) { + WR4(&sc->sc_bas, PDC_RPR, atsc->ping->pa); + WR4(&sc->sc_bas, PDC_RCR, sc->sc_rxfifosz); + WR4(&sc->sc_bas, PDC_RNPR, atsc->pong->pa); + WR4(&sc->sc_bas, PDC_RNCR, sc->sc_rxfifosz); + WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_RXTEN); + + /* Set the receive timeout to be 1.5 character times. */ + WR4(&sc->sc_bas, USART_RTOR, 12); + WR4(&sc->sc_bas, USART_CR, USART_CR_STTTO); + WR4(&sc->sc_bas, USART_IER, USART_CSR_TIMEOUT | + USART_CSR_RXBUFF | USART_CSR_ENDRX); + } else { + WR4(&sc->sc_bas, USART_IER, USART_CSR_RXRDY); + } + WR4(&sc->sc_bas, USART_IER, USART_CSR_RXBRK); errout:; // XXX bad return (err); } -#ifndef SKYEYE_WORKAROUNDS -static void -at91_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error) -{ - if (error != 0) - return; - *(bus_addr_t *)arg = segs[0].ds_addr; -} -#endif - - static int at91_usart_bus_transmit(struct uart_softc *sc) { @@ -359,6 +434,7 @@ WR4(&sc->sc_bas, PDC_TPR, addr); WR4(&sc->sc_bas, PDC_TCR, sc->sc_txdatasz); WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_TXTEN); + WR4(&sc->sc_bas, USART_IER, USART_CSR_ENDTX); uart_unlock(sc->sc_hwmtx); #else for (int i = 0; i < sc->sc_txdatasz; i++) @@ -387,9 +463,7 @@ } while (!atomic_cmpset_32(&sc->sc_hwsig, old, new)); bas = &sc->sc_bas; uart_lock(sc->sc_hwmtx); - cr = RD4(bas, USART_CR); - cr &= ~(USART_CR_DTREN | USART_CR_DTRDIS | USART_CR_RTSEN | - USART_CR_RTSDIS); + cr = 0; if (new & SER_DTR) cr |= USART_CR_DTREN; else @@ -405,16 +479,14 @@ static int at91_usart_bus_receive(struct uart_softc *sc) { - - uart_lock(sc->sc_hwmtx); - uart_rx_put(sc, at91_usart_getc(&sc->sc_bas, NULL)); - uart_unlock(sc->sc_hwmtx); + return (0); } static int at91_usart_bus_param(struct uart_softc *sc, int baudrate, int databits, int stopbits, int parity) { + return (at91_usart_param(&sc->sc_bas, baudrate, databits, stopbits, parity)); } @@ -422,8 +494,9 @@ at91_usart_bus_ipend(struct uart_softc *sc) { int csr = RD4(&sc->sc_bas, USART_CSR); - int ipend = 0; + int ipend = 0, i, len; struct at91_usart_softc *atsc; + struct at91_usart_rx *p; atsc = (struct at91_usart_softc *)sc; if (csr & USART_CSR_ENDTX) { @@ -432,12 +505,85 @@ bus_dmamap_unload(atsc->dmatag, atsc->tx_map); } uart_lock(sc->sc_hwmtx); - if (csr & USART_CSR_TXRDY && sc->sc_txbusy) - ipend |= SER_INT_TXIDLE; - if (csr & USART_CSR_ENDTX && sc->sc_txbusy) - ipend |= SER_INT_TXIDLE; - if (csr & (USART_CSR_RXRDY /* | USART_CSR_ENDRX | USART_CSR_TIMEOUT */)) + if (csr & USART_CSR_TXRDY) { + if (sc->sc_txbusy) + ipend |= SER_INT_TXIDLE; + WR4(&sc->sc_bas, USART_IDR, USART_CSR_TXRDY); + } + if (csr & USART_CSR_ENDTX) { + if (sc->sc_txbusy) + ipend |= SER_INT_TXIDLE; + WR4(&sc->sc_bas, USART_IDR, USART_CSR_ENDTX); + } + + /* + * Due to the contraints of the DMA engine present in the + * atmel chip, I can't just say I have a rx interrupt pending + * and do all the work elsewhere. I need to look at the CSR + * bits right now and do things based on them to avoid races. + */ + if ((atsc->flags & HAS_TIMEOUT) && (csr & USART_CSR_RXBUFF)) { + // Have a buffer overflow. Copy all data from both + // ping and pong. Insert overflow character. Reset + // ping and pong and re-enable the PDC to receive + // characters again. + bus_dmamap_sync(atsc->dmatag, atsc->ping->map, + BUS_DMASYNC_POSTREAD); + bus_dmamap_sync(atsc->dmatag, atsc->pong->map, + BUS_DMASYNC_POSTREAD); + for (i = 0; i < sc->sc_rxfifosz; i++) + uart_rx_put(sc, atsc->ping->buffer[i]); + for (i = 0; i < sc->sc_rxfifosz; i++) + uart_rx_put(sc, atsc->pong->buffer[i]); + uart_rx_put(sc, UART_STAT_OVERRUN); + csr &= ~(USART_CSR_ENDRX | USART_CSR_TIMEOUT); + WR4(&sc->sc_bas, PDC_RPR, atsc->ping->pa); + WR4(&sc->sc_bas, PDC_RCR, sc->sc_rxfifosz); + WR4(&sc->sc_bas, PDC_RNPR, atsc->pong->pa); + WR4(&sc->sc_bas, PDC_RNCR, sc->sc_rxfifosz); + WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_RXTEN); + ipend |= SER_INT_RXREADY; + } + if ((atsc->flags & HAS_TIMEOUT) && (csr & USART_CSR_ENDRX)) { + // Shuffle data from 'ping' of ping pong buffer, but + // leave current 'pong' in place, as it has become the + // new 'ping'. We need to copy data and setup the old + // 'ping' as the new 'pong' when we're done. + bus_dmamap_sync(atsc->dmatag, atsc->ping->map, + BUS_DMASYNC_POSTREAD); + for (i = 0; i < sc->sc_rxfifosz; i++) + uart_rx_put(sc, atsc->ping->buffer[i]); + p = atsc->ping; + atsc->ping = atsc->pong; + atsc->pong = p; + WR4(&sc->sc_bas, PDC_RNPR, atsc->pong->pa); + WR4(&sc->sc_bas, PDC_RNCR, sc->sc_rxfifosz); + ipend |= SER_INT_RXREADY; + } + if ((atsc->flags & HAS_TIMEOUT) && (csr & USART_CSR_TIMEOUT)) { + // We have one partial buffer. We need to stop the + // PDC, get the number of characters left and from + // that compute number of valid characters. We then + // need to reset ping and pong and reenable the PDC. + // Not sure if there's a race here at fast baud rates + // we need to worry about. + WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_RXTDIS); + len = sc->sc_rxfifosz - RD4(&sc->sc_bas, PDC_RCR); + for (i = 0; i < len; i++) + uart_rx_put(sc, atsc->ping->buffer[i]); + WR4(&sc->sc_bas, PDC_RPR, atsc->ping->pa); + WR4(&sc->sc_bas, PDC_RCR, sc->sc_rxfifosz); + WR4(&sc->sc_bas, USART_CR, USART_CR_STTTO); + WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_RXTEN); + ipend |= SER_INT_RXREADY; + } + if (!(atsc->flags & HAS_TIMEOUT) && (csr & USART_CSR_RXRDY)) { + // We have another charater in a device that doesn't support + // timeouts, so we do it one character at a time. + uart_rx_put(sc, RD4(&sc->sc_bas, USART_RHR) & 0xff); ipend |= SER_INT_RXREADY; + } + if (csr & USART_CSR_RXBRK) { unsigned int cr = USART_CR_RSTSTA; @@ -479,6 +625,15 @@ static int at91_usart_bus_ioctl(struct uart_softc *sc, int request, intptr_t data) { + switch (request) { + case UART_IOCTL_BREAK: + case UART_IOCTL_IFLOW: + case UART_IOCTL_OFLOW: + break; + case UART_IOCTL_BAUD: + WR4(&sc->sc_bas, USART_BRGR, BAUD2DIVISOR(*(int *)data)); + return (0); + } return (EINVAL); } struct uart_class at91_usart_class = { ==== //depot/projects/bike_sched/sys/bsm/audit_kevents.h#2 (text) ==== @@ -30,8 +30,8 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#20 $ - * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.5 2006/02/06 01:12:46 rwatson Exp $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#23 $ + * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.6 2006/07/03 14:45:43 rwatson Exp $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ @@ -384,7 +384,24 @@ #define AUE_ACL_DELETE_FD 403 /* FreeBSD. */ #define AUE_ACL_CHECK_FILE 404 /* FreeBSD. */ #define AUE_ACL_CHECK_FD 405 /* FreeBSD. */ -#define AUE_SYSARCH 406 /* FreeBSD. */ +#define AUE_ACL_GET_LINK 406 /* FreeBSD. */ +#define AUE_ACL_SET_LINK 407 /* FreeBSD. */ +#define AUE_ACL_DELETE_LINK 408 /* FreeBSD. */ +#define AUE_ACL_CHECK_LINK 409 /* FreeBSD. */ +#define AUE_SYSARCH 410 /* FreeBSD. */ +#define AUE_EXTATTRCTL 411 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FILE 412 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FILE 413 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FILE 414 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FILE 415 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FD 416 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FD 417 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FD 418 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FD 419 /* FreeBSD. */ +#define AUE_EXTATTR_GET_LINK 420 /* FreeBSD. */ +#define AUE_EXTATTR_SET_LINK 421 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_LINK 422 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_LINK 423 /* FreeBSD. */ /* * Darwin BSM uses a number of AUE_O_* definitions, which are aliased to the ==== //depot/projects/bike_sched/sys/bsm/audit_record.h#3 (text) ==== @@ -31,12 +31,14 @@ * @APPLE_BSD_LICENSE_HEADER_END@ * * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#13 $ - * $FreeBSD: src/sys/bsm/audit_record.h,v 1.2 2006/06/05 13:00:52 rwatson Exp $ + * $FreeBSD: src/sys/bsm/audit_record.h,v 1.3 2006/07/03 14:44:13 rwatson Exp $ */ #ifndef _BSM_AUDIT_RECORD_H_ #define _BSM_AUDIT_RECORD_H_ +#include /* struct timeval */ + /* * Token type identifiers. */ ==== //depot/projects/bike_sched/sys/compat/svr4/Makefile#2 (text+ko) ==== @@ -1,8 +1,6 @@ # Makefile for syscall tables # -# $FreeBSD: src/sys/compat/svr4/Makefile,v 1.7 2001/09/13 22:02:48 julian Exp $ - -MAINTAINER= newton@freebsd.org +# $FreeBSD: src/sys/compat/svr4/Makefile,v 1.8 2006/07/01 10:51:54 markm Exp $ all: @echo "make sysent only" ==== //depot/projects/bike_sched/sys/conf/kmod.mk#2 (text+ko) ==== @@ -1,5 +1,5 @@ # From: @(#)bsd.prog.mk 5.26 (Berkeley) 6/25/91 -# $FreeBSD: src/sys/conf/kmod.mk,v 1.208 2006/05/27 16:32:05 netchild Exp $ +# $FreeBSD: src/sys/conf/kmod.mk,v 1.209 2006/06/30 19:35:35 jkim Exp $ # # The include file handles building and installing loadable # kernel modules. @@ -85,8 +85,10 @@ .if ${CC} == "icc" NOSTDINC= -X .else +C_DIALECT= -std=c99 NOSTDINC= -nostdinc .endif +CFLAGS+= ${C_DIALECT} CFLAGS:= ${CFLAGS:N-I*} ${NOSTDINC} -I- ${INCLMAGIC} ${CFLAGS:M-I*} .if defined(KERNBUILDDIR) CFLAGS+= -DHAVE_KERNEL_OPTION_HEADERS -include ${KERNBUILDDIR}/opt_global.h ==== //depot/projects/bike_sched/sys/dev/atkbdc/atkbdc_isa.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbdc_isa.c,v 1.35 2006/06/12 14:46:44 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbdc_isa.c,v 1.36 2006/07/03 23:40:58 jkim Exp $"); #include "opt_kbd.h" @@ -112,15 +112,21 @@ * The AT keyboard controller uses two ports (a command/data port * 0x60 and a status port 0x64), which may be given to us in * one resource (0x60 through 0x64) or as two separate resources - * (0x60 and 0x64). Furthermore, /boot/device.hints may contain - * just one port, 0x60. We shall adjust resource settings - * so that these two ports are available as two separate resources. + * (0x60 and 0x64). Some brain-damaged ACPI BIOS has reversed + * command/data port and status port. Furthermore, /boot/device.hints + * may contain just one port, 0x60. We shall adjust resource settings + * so that these two ports are available as two separate resources + * in correct order. */ device_quiet(dev); rid = 0; if (bus_get_resource(dev, SYS_RES_IOPORT, rid, &start, &count) != 0) return ENXIO; - if (count > 1) /* adjust the count */ + if (start == IO_KBD + KBD_STATUS_PORT) { + start = IO_KBD; + count++; + } + if (count > 1) /* adjust the count and/or start port */ bus_set_resource(dev, SYS_RES_IOPORT, rid, start, 1); port0 = bus_alloc_resource_any(dev, SYS_RES_IOPORT, &rid, RF_ACTIVE); if (port0 == NULL) ==== //depot/projects/bike_sched/sys/dev/bktr/CHANGELOG.TXT#2 (text+ko) ==== @@ -1,9 +1,4 @@ -/* $FreeBSD: src/sys/dev/bktr/CHANGELOG.TXT,v 1.20 2004/12/31 09:18:29 julian Exp $ */ -/* - * MAINTAINER = Roger Hardiman - * Newsflash: Roger is temorararily out of touch and unable - * to maintain this.. - */ +/* $FreeBSD: src/sys/dev/bktr/CHANGELOG.TXT,v 1.21 2006/07/01 10:51:54 markm Exp $ */ /* * This is part of the Driver for Video Capture Cards (Frame grabbers) ==== //depot/projects/bike_sched/sys/dev/isp/isp.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ */ #ifdef __FreeBSD__ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp.c,v 1.119 2006/04/21 18:46:35 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp.c,v 1.121 2006/07/03 20:56:48 mjacob Exp $"); #endif /* @@ -100,7 +100,7 @@ static const char swrej[] = "Fabric Nameserver rejected %s (Reason=0x%x Expl=0x%x) for Port ID 0x%x"; static const char finmsg[] = - "(%d.%d.%d): FIN dl%d resid %d STS 0x%x SKEY %c XS_ERR=0x%x"; + "%d.%d.%d: FIN dl%d resid %d STS 0x%x SKEY %c XS_ERR=0x%x"; static const char sc0[] = "%s CHAN %d FTHRSH %d IID %d RESETD %d RETRYC %d RETRYD %d ASD 0x%x"; static const char sc1[] = @@ -129,7 +129,7 @@ static int isp_getpdb(ispsoftc_t *, int, isp_pdb_t *); static uint64_t isp_get_portname(ispsoftc_t *, int, int); static int isp_fclink_test(ispsoftc_t *, int); -static char *isp2100_fw_statename(int); +static const char *isp2100_fw_statename(int); static int isp_pdb_sync(ispsoftc_t *); static int isp_scan_loop(ispsoftc_t *); static int isp_fabric_mbox_cmd(ispsoftc_t *, mbreg_t *); @@ -639,18 +639,20 @@ dodnld = 0; } - if (IS_23XX(isp)) + if (IS_23XX(isp)) { code_org = ISP_CODE_ORG_2300; - else + } else { code_org = ISP_CODE_ORG; + } + if (dodnld) { + uint16_t *ptr = isp->isp_mdvec->dv_ispfw; - if (dodnld) { - isp->isp_mbxworkp = (void *) &isp->isp_mdvec->dv_ispfw[1]; - isp->isp_mbxwrk0 = isp->isp_mdvec->dv_ispfw[3] - 1; + isp->isp_mbxworkp = &ptr[1]; + isp->isp_mbxwrk0 = ptr[3] - 1; isp->isp_mbxwrk1 = code_org + 1; mbs.param[0] = MBOX_WRITE_RAM_WORD; mbs.param[1] = code_org; - mbs.param[2] = isp->isp_mdvec->dv_ispfw[0]; + mbs.param[2] = ptr[0]; isp_mboxcmd(isp, &mbs, MBLOGNONE); if (mbs.param[0] != MBOX_COMMAND_COMPLETE) { isp_prt(isp, ISP_LOGERR, @@ -659,6 +661,7 @@ dodnld = 0; goto again; } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jul 4 03:54:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5921616A4E1; Tue, 4 Jul 2006 03:54:25 +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 1C36C16A4DD for ; Tue, 4 Jul 2006 03:54:25 +0000 (UTC) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9738643D45 for ; Tue, 4 Jul 2006 03:54:18 +0000 (GMT) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k643sIGZ079144 for ; Tue, 4 Jul 2006 03:54:18 GMT (envelope-from swhitman@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k643sI5o079141 for perforce@freebsd.org; Tue, 4 Jul 2006 03:54:18 GMT (envelope-from swhitman@FreeBSD.org) Date: Tue, 4 Jul 2006 03:54:18 GMT Message-Id: <200607040354.k643sI5o079141@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swhitman@FreeBSD.org using -f From: Spencer Whitman To: Perforce Change Reviews Cc: Subject: PERFORCE change 100539 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 03:54:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=100539 Change 100539 by swhitman@swhitman_joethecat on 2006/07/04 03:53:22 More commenting. (The "XXX HERE" comments are placemarks) Affected files ... .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/TODO#1 add .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#6 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/file.c#5 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#7 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.h#5 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#5 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/string.c#5 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/test.c#4 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/token_data.c#4 edit Differences ... ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#6 (text+ko) ==== @@ -4,6 +4,7 @@ #include #include #include + #include "k.h" #undef CPP_DEBUG @@ -55,7 +56,9 @@ const char *mag_line, *mag_file; /* -------------------------------------------------------------------*/ - +/* Returns pointer to the end of a (potential) comment starting at b and ending + * before e + */ static const char * skipcomment(struct cppfilestate *cfs, const char *b, const char *e) { @@ -71,23 +74,27 @@ } /* -------------------------------------------------------------------*/ - +/* Returns a pointer to first non whitespace, non comment character after s but + * before e + */ static const char * skipspace(struct cppfilestate *cfs, const char *s, const char *e) { - /* skip leading space, including line continuation */ + /* skip leading spaces, including line continuation */ while (s < e) { - if (*s == '\\' && s + 1 < e && isvert(s[1])) { - s++; - continue; - } - if (*s == '/') { - s = skipcomment(cfs, s, e); - s++; - } - if (!isspace(*s)) - break; - s++; + /* XXX This code will choke on single \'s or /'s */ + /* XXX Not sure if this is what needs to be edited */ + if (*s == '\\' && s + 1 < e && isvert(s[1])) { + s++; + continue; + } + if (*s == '/') { + s = skipcomment(cfs, s, e); + s++; + } + if (!isspace(*s)) + break; + s++; } return (s); } @@ -141,12 +148,13 @@ cpp_expand(struct cppfilestate *cfs, struct ref *rr __unused, const char *s, const char *e) { - assert(s != NULL); - assert(e != NULL); - if (s == e) - return; - D(0x10, "expand <%V>\n", String(s, e)); - Lexer(cfs->h->tokens, s, e); + assert(s != NULL); + assert(e != NULL); + if (s == e) + return; + D(0x10, "expand <%V>\n", String(s, e)); + /* XXX HERE */ + Lexer(cfs->h->tokens, s, e); } /* -------------------------------------------------------------------*/ @@ -213,29 +221,30 @@ static void cppchunk(struct cppfilestate *cfs, const char *s, const char *e) { - - if (s != NULL && s == cfs->e) { - cfs->e = e; - return; - } - if (cfs->s != NULL) - cpp_expand(cfs, cfs->r, cfs->s, cfs->e); - cfs->s = s; - cfs->e = e; + /* NOTE: cfs-> is uninitalized for first call to cppchunk */ + if (s != NULL && s == cfs->e) { + cfs->e = e; + return; + } + if (cfs->s != NULL) + /* XXX HERE */ + cpp_expand(cfs, cfs->r, cfs->s, cfs->e); + cfs->s = s; + cfs->e = e; } static struct cpp_kw { - const char *q; - unsigned l; - cpp_func *func; + const char *q; + unsigned l; /* Length of key word */ + cpp_func *func; } cpp_kw[] = { - { "define", 0, NULL }, - { "error", 0, cpp_error }, - { "include", 0, cpp_include }, - { "pragma", 0, cpp_pragma }, - { "warning", 0, cpp_warning }, - { NULL, 0, NULL } + { "define", 0, NULL }, + { "error", 0, cpp_error }, + { "include", 0, cpp_include }, + { "pragma", 0, cpp_pragma }, + { "warning", 0, cpp_warning }, + { NULL, 0, NULL } }; static void @@ -244,6 +253,7 @@ const char *p; struct cpp_kw *kw; + /* Set up length argument for cpp_kw[] if necessary */ if (cpp_kw[0].l == 0) for (kw = cpp_kw; kw->q != NULL; kw++) kw->l = strlen(kw->q); @@ -252,23 +262,31 @@ /* skip leading space, including line continuation */ p = skipspace(cfs, s, e); + if (!cfs->hash) { - if (p >= e || *p != '#') { - if (!cfs->off) - cppchunk(cfs, s, e); - return; - } - cppchunk(cfs, NULL, NULL); + /* If we have reached the end of the mmaped space or we are not + * pointing to a preparser function... + */ + if (p >= e || *p != '#') { + /* XXX off from cppfilestate is only used here and will always be + true */ + if (!cfs->off) + /* XXX HERE */ + cppchunk(cfs, s, e); + return; + } - assert(*p == '#'); - cfs->hash = s; - p = skipspace(cfs, p + 1, e); - e = trimspace(p, e); - if (p == e) { - return; - } + cppchunk(cfs, NULL, NULL); + + assert(*p == '#'); + cfs->hash = s; + p = skipspace(cfs, p + 1, e); + e = trimspace(p, e); + if (p == e) { + return; + } } - + D(1, "line <%V>\n", String(p, e)); for (kw = cpp_kw; kw->q != NULL; kw++) { if (*p < *kw->q) @@ -301,7 +319,6 @@ assert(r != NULL); assert(r->sf != NULL); - /* For debug only */ D(1, "cppfile(%s)\n", r->sf->filename); memset(&cfs, 0, sizeof cfs); @@ -309,12 +326,12 @@ cfs.h = h; cfs.r = r; - p = r->s.b; - e = r->s.e; - /* XXX HERE */ + p = r->s.b; /* p = the first mmaped address */ + e = r->s.e; /* e = the end of the mmaped space */ + /* Scan through r's s struct*/ for (q = p; q < e; q++) { - /* find NL */ + /* find the end of the line, skipping any comments */ while (q < e && *q != '\n') { if (*q != '/') { q++; @@ -326,8 +343,9 @@ } if (q == e) { - cppline(&cfs, p, q); - break; + /* XXX HERE */ + cppline(&cfs, p, q); + break; } /* back up over any CRs */ t = q; @@ -382,6 +400,7 @@ h->r = NewRef(h); h->r->type = ARG; h->r->sf = LoadFile(filename); + /* set the head refrence s struct to that of the sourcefile's */ h->r->s = h->r->sf->s; cppfile(h, h->r); /* XXX HERE */ ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/file.c#5 (text+ko) ==== @@ -1,9 +1,10 @@ +#include +#include + #include #include #include #include -#include -#include #include "k.h" @@ -17,7 +18,8 @@ struct stat st; void *p; int fd; - + + /* Add filename to the list of strings */ filename = String(filename, NULL); /* Check if this file has been loaded already */ ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#7 (text+ko) ==== @@ -178,7 +178,8 @@ PushSymScope(hf); } else errx(1, "Unknown filename suffix %Q", p); - + + /* XXX HERE */ Cpp(hf, argv[ch]); if (0) ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.h#5 (text+ko) ==== @@ -1,6 +1,7 @@ +#include + #include "token_defs.h" -#include /* -------------------------------------------------------------------*/ ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#5 (text+ko) ==== @@ -1,3 +1,5 @@ +#include + #include #include #include @@ -6,7 +8,6 @@ #include #include #include -#include #include "k.h" @@ -62,17 +63,17 @@ t->b = b; t->e = e; if (tok == CSTR) { - tt = TAILQ_LAST(&ts->tokens, tokenhead); - if (tt != NULL && tt->tok == CSTR) { - while (tt->chain != NULL) - tt = tt->chain; - tt->chain = t; - return (t); - } + tt = TAILQ_LAST(&ts->tokens, tokenhead); + if (tt != NULL && tt->tok == CSTR) { + while (tt->chain != NULL) + tt = tt->chain; + tt->chain = t; + return (t); + } } TAILQ_INSERT_TAIL(&ts->tokens, t, list); -if (0) -printf("Add_Token \t%p %#T\n", ts, t); + if (0) + printf("Add_Token \t%p %#T\n", ts, t); return (t); } @@ -174,134 +175,136 @@ void Lexer(struct tokens *ts, const char *b, const char *e) { - const char *posf; - char buf[BUFSIZ]; - const char *p, *s; - char *q; - unsigned u; - int i; - unsigned tok; - struct token *t; - - if (b == NULL) { - add_token(ts, EOI, NULL, NULL); - return; + const char *posf; + char buf[BUFSIZ]; + const char *p, *s; + char *q; + unsigned u; + int i; + unsigned tok; + struct token *t; + + if (b == NULL) { + /* XXX HERE */ + add_token(ts, EOI, NULL, NULL); + return; + } + if (e == NULL) + e = strchr(b, '\0'); + assert(e != NULL); + if (1) { + printf("LEX1 %V\n", String(b, e)); + } + p = un_hash(b, e); + if (p != NULL) { + b = p; + e = strchr(b, '\0'); + assert(e != NULL); + } + if (1) { + printf("LEX2 %V\n", String(b, e)); + } + while (b < e) { + + switch(*b) { + case '\n': case '\r': case '\v': case '\f': + b++; + continue; + case '\\': + if (b[1] == '\n') { + b += 2; + continue; + } + break; + case '/': + if (b[1] == '*') { + /* Ignore comments */ + for (b += 2; b + 1 < e; b++) { + if (b[0] == '*' && b[1] == '/') { + b += 2; + break; + } } - if (e == NULL) - e = strchr(b, '\0'); - assert(e != NULL); -if (1) { - printf("LEX1 %V\n", String(b, e)); -} - p = un_hash(b, e); - if (p != NULL) { - b = p; - e = strchr(b, '\0'); - assert(e != NULL); - } -if (1) { - printf("LEX2 %V\n", String(b, e)); -} - while (b < e) { - - switch(*b) { - case '\n': case '\r': case '\v': case '\f': - b++; - continue; - case '\\': - if (b[1] == '\n') { - b += 2; - continue; - } - break; - case '/': - if (b[1] == '*') { - for (b += 2; b + 1 < e; b++) { - if (b[0] == '*' && b[1] == '/') { - b += 2; - break; - } - } - continue; - } - if (b[1] == '/') - errx(1, "// comment"); - break; - case '\t': - case ' ': - b++; - continue; - case '\'': - if (b[1] != '\\' && b[2] == '\'') { - t = add_token(ts, CNUM, b, b + 3); + continue; + } + if (b[1] == '/') + errx(1, "// comment"); + break; + case '\t': + case ' ': + b++; + continue; + case '\'': + if (b[1] != '\\' && b[2] == '\'') { + t = add_token(ts, CNUM, b, b + 3); t->name = String(b, b + 3); b += 3; continue; - } - if (b[1] == '\\') { - i = BackSlash(b + 2, &p); - if (i >= 0 && *p == '\'') { - p++; - t = add_token(ts, CNUM, b, p); - t->name = String(b, p); - b = p; - continue; - } - } - break; - case '"': - s = StringEnd(b, e); - assert(s != NULL); -printf("Lex: \"%V\"\n", String(b, s)); - t = add_token(ts, CSTR, b, s); + } + if (b[1] == '\\') { + i = BackSlash(b + 2, &p); + if (i >= 0 && *p == '\'') { + p++; + t = add_token(ts, CNUM, b, p); + t->name = String(b, p); + b = p; + continue; + } + } + break; + case '"': + s = StringEnd(b, e); + assert(s != NULL); + printf("Lex: \"%V\"\n", String(b, s)); + t = add_token(ts, CSTR, b, s); b = s; continue; - case '#': -printf("# %V\n", String(b, e)); - u = strtoul(b + 1, &q, 0); - if (q == NULL) - errx(1, "Preproc b鴕k1"); - while (isspace(*q) && !isvert(*q)) - q++; - if (*q != '"') - printf("Preproc b鴕k2 (%02x) %V\n", - *q, String(b, e)); - s = StringEnd(q, e); - posf = String(q, s); - while (s < e && !isvert(*s)) - s++; - b = s; - continue; - case '.': - case '0': case '1': case '2': case '3': case '4': - case '5': case '6': case '7': case '8': case '9': - s = NumberEnd(b); - if (s != NULL) { - t = add_token(ts, CNUM, b, s); - t->name = String(b, s); - b = s; - continue; - } - break; - default: - break; - } - tok = fixed_token(b, &s); - if (tok > 0) { - t = add_token(ts, tok, b, s); - b = s; - continue; - } - if (isident1(b[0])) { - for (p = b + 1; isident(*p); p++) - continue; - t = add_token(ts, ID, b, p); - t->name = String(b, p); - b += (p - b); - continue; - } - strncpy(buf, b, 20); - printf("Unknown: >>>>%V\n", buf); - exit (0); - } + case '#': + printf("# %V\n", String(b, e)); + u = strtoul(b + 1, &q, 0); + if (q == NULL) + errx(1, "Preproc b鴕k1"); + while (isspace(*q) && !isvert(*q)) + q++; + if (*q != '"') + printf("Preproc b鴕k2 (%02x) %V\n", + *q, String(b, e)); + s = StringEnd(q, e); + posf = String(q, s); + while (s < e && !isvert(*s)) + s++; + b = s; + continue; + case '.': + case '0': case '1': case '2': case '3': case '4': + case '5': case '6': case '7': case '8': case '9': + s = NumberEnd(b); + if (s != NULL) { + t = add_token(ts, CNUM, b, s); + t->name = String(b, s); + b = s; + continue; + } + break; + default: + break; + } + tok = fixed_token(b, &s); + if (tok > 0) { + t = add_token(ts, tok, b, s); + b = s; + continue; + } + if (isident1(b[0])) { + for (p = b + 1; isident(*p); p++) + continue; + t = add_token(ts, ID, b, p); + t->name = String(b, p); + b += (p - b); + continue; + } + strncpy(buf, b, 20); + printf("Unknown: >>>>%V\n", buf); + exit (0); + } } ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/string.c#5 (text+ko) ==== @@ -36,30 +36,39 @@ { struct string *s; struct string_head *h; - unsigned l, hash; /* XXX hash is unused here */ + unsigned l; /* hash; */ /* XXX hash is unused here */ assert(b != NULL); + if (e == NULL) { e = strchr(b, '\0'); assert(e != NULL); } + + /* If the end is equal to the begining, it's an empty string */ if (e == b) return (""); + assert(e > b); l = e - b; - hash = *b; + + /* hash = *b; if (l > 1) - hash = (hash << 8) | b[1]; + hash = (hash << 8) | b[1]; */ + /* Have we already inserted this string into the hash table? */ h = &strings[*b % NHASH]; LIST_FOREACH(s, h, list) { if (b == s->string) return (s->string); + /* Not the same string if they are of different lengths */ if (s->l != l) continue; if (!memcmp(s->string, b, l)) return (s->string); } + + /* Add this string to the list */ s = calloc(sizeof *s, 1); assert(s != NULL); s->string = malloc(l + 1); @@ -68,6 +77,7 @@ s->string[l] = '\0'; s->l = l; LIST_INSERT_HEAD(h, s, list); + return (s->string); } ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/test.c#4 (text+ko) ==== @@ -33,3 +33,4 @@ putchar (i & 0x01 ? '*' : ' '); } } + ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/token_data.c#4 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Tue Jul 4 05:04:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 54D5016A4E1; Tue, 4 Jul 2006 05:04:45 +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 184F716A4DD for ; Tue, 4 Jul 2006 05:04:45 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC74843D45 for ; Tue, 4 Jul 2006 05:04:44 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6454iT0092365 for ; Tue, 4 Jul 2006 05:04:44 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6454iGt092362 for perforce@freebsd.org; Tue, 4 Jul 2006 05:04:44 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 4 Jul 2006 05:04:44 GMT Message-Id: <200607040504.k6454iGt092362@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100540 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 05:04:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=100540 Change 100540 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/04 05:04:40 bump up ipi timeout Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/pmap.c#7 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/pmap.c#7 (text+ko) ==== @@ -1271,9 +1271,9 @@ (uint64_t)arg2, (uint64_t *)&ackmask); while (ackmask != curactive) { - DELAY(1); + membar(Sync); i++; - if (i > 1000000) + if (i > 10000000) panic(" ackmask=0x%x active=0x%x\n", ackmask, curactive); } From owner-p4-projects@FreeBSD.ORG Tue Jul 4 05:35:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2C37E16A4E2; Tue, 4 Jul 2006 05:35:23 +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 E2F4A16A4E1 for ; Tue, 4 Jul 2006 05:35:22 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6420E43D4C for ; Tue, 4 Jul 2006 05:35:22 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k645ZMeA093671 for ; Tue, 4 Jul 2006 05:35:22 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k645ZMYp093668 for perforce@freebsd.org; Tue, 4 Jul 2006 05:35:22 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 4 Jul 2006 05:35:22 GMT Message-Id: <200607040535.k645ZMYp093668@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100541 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 05:35:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=100541 Change 100541 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/04 05:34:21 be a bit more permissive with TSB sizing until I have time to implement dynamic resizing Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/tsb.c#3 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/tsb.c#3 (text+ko) ==== @@ -58,7 +58,7 @@ CTASSERT(sizeof(tte_t) == sizeof(uint64_t)); #define TSB_MASK(tsb) ((tsb->hvtsb_ntte) - 1) /* make TSB start off at the same size as the hash */ -#define TSB_SIZE (1 << HASH_ENTRY_SHIFT) +#define TSB_SIZE 8 #ifdef DEBUG_TSB #define DPRINTF printf From owner-p4-projects@FreeBSD.ORG Tue Jul 4 07:09:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9907016A4E5; Tue, 4 Jul 2006 07:09:20 +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 5B89016A4DD for ; Tue, 4 Jul 2006 07:09:20 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A6C8843D4C for ; Tue, 4 Jul 2006 07:09:19 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6479JW3004664 for ; Tue, 4 Jul 2006 07:09:19 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6479Jcr004661 for perforce@freebsd.org; Tue, 4 Jul 2006 07:09:19 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 4 Jul 2006 07:09:19 GMT Message-Id: <200607040709.k6479Jcr004661@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100544 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 07:09:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=100544 Change 100544 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/04 07:09:14 save others the trial and error of modifying their loader.conf performance with 32 cpus at 1000Hz is _not_ good Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/conf/GENERIC#4 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/conf/GENERIC#4 (text+ko) ==== @@ -211,3 +211,4 @@ device ccd options SPIN_PROFILING +options HZ=100 From owner-p4-projects@FreeBSD.ORG Tue Jul 4 07:11:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5415616A4E2; Tue, 4 Jul 2006 07:11:24 +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 F12C816A4DA for ; Tue, 4 Jul 2006 07:11:23 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B510243D45 for ; Tue, 4 Jul 2006 07:11:23 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k647BNHr004830 for ; Tue, 4 Jul 2006 07:11:23 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k647BNGn004827 for perforce@freebsd.org; Tue, 4 Jul 2006 07:11:23 GMT (envelope-from ryanb@FreeBSD.org) Date: Tue, 4 Jul 2006 07:11:23 GMT Message-Id: <200607040711.k647BNGn004827@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 100545 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 07:11:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100545 Change 100545 by ryanb@ryanb_yuki on 2006/07/04 07:10:31 In sound_oss_sysinfo and dsp_oss_audioinfo, add lock wrappers when iterating over PCM devices and audio channels. Fixed bug in dsp_oss_audioinfo where ai->dev was always set to 0, regardless of the real number of the channel probed. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#9 edit .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#7 edit Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#9 (text+ko) ==== @@ -1315,6 +1315,9 @@ * opened in read+write) and then assigns them to the si_drv[12] private * data fields. As a result, any information returned linking a channel to * a specific character device isn't really accurate. + * + * @note + * Calling threads must not hold any snddev_info or pcm_channel locks. * * @param dev device on which the ioctl was issued * @param ai ioctl request data container @@ -1336,7 +1339,7 @@ struct pcm_channel *ch; struct snddev_info *d; struct cdev *t_cdev; - int i, nchan; + int i, nchan, ret; /* If probing handling device, make sure it's a DSP device. */ if ((ai->dev == -1) && (i_dev->si_devsw != &dsp_cdevsw)) @@ -1345,15 +1348,20 @@ ch = NULL; t_cdev = NULL; nchan = 0; - + ret = 0; + /* Search for the requested audio device. */ for (i = 0; i < devclass_get_maxunit(pcm_devclass); i++) { d = devclass_get_softc(pcm_devclass, i); if (d == NULL) continue; + pcm_inprog(d, 1); + pcm_lock(d); + SLIST_FOREACH(sce, &d->channels, link) { ch = sce->channel; + CHN_LOCK(ch); if (ai->dev == -1) { if ((ch == i_dev->si_drv1) || (ch == i_dev->si_drv2)) { @@ -1364,12 +1372,32 @@ t_cdev = sce->dsp_devt; goto dspfound; } + CHN_UNLOCK(ch); ++nchan; } + + pcm_unlock(d); + pcm_inprog(d, -1); } + + /* Exhausted the search -- nothing is locked, so return. */ + return EINVAL; + dspfound: - if (t_cdev == NULL) - return EINVAL; + /* Should've found the device, but something isn't right */ + if (t_cdev == NULL) { + ret = EINVAL; + goto out; + } + + /* + * At this point, the following synchronization stuff has happened: + * - a specific PCM device is locked and its "in progress + * operations" counter has been incremented, so be sure to unlock + * and decrement when exiting; + * - a specific audio channel has been locked, so be sure to unlock + * when exiting; + */ caps = chn_getcaps(ch); @@ -1379,6 +1407,7 @@ */ bzero((void *)ai, sizeof(oss_audioinfo)); + ai->dev = nchan; strlcpy(ai->name, ch->name, sizeof(ai->name)); if ((ch->flags & CHN_F_BUSY) == 0) @@ -1450,6 +1479,11 @@ ai->min_rate = caps->minspeed; ai->max_rate = caps->maxspeed; - return 0; +out: + CHN_UNLOCK(ch); + pcm_unlock(d); + pcm_inprog(d, -1); + + return ret; } #endif /* !OSSV4_EXPERIMENT */ ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#7 (text+ko) ==== @@ -1132,6 +1132,9 @@ * Also includes a bitmask showing which of the above types of devices * are open (busy). * + * @note + * Calling threads must not hold any snddev_info or pcm_channel locks. + * * @author Ryan Beasley */ void @@ -1167,6 +1170,11 @@ d = devclass_get_softc(pcm_devclass, i); if (!d) continue; + + /* Increment device's "operations in progress" */ + pcm_inprog(d, 1); + pcm_lock(d); + si->numaudios += d->devcount; ++ncards; @@ -1179,6 +1187,9 @@ CHN_UNLOCK(c); j++; } + + pcm_unlock(d); + pcm_inprog(d, -1); } } From owner-p4-projects@FreeBSD.ORG Tue Jul 4 07:33:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C7CC316A4E0; Tue, 4 Jul 2006 07:33:56 +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 6F1A316A4E5 for ; Tue, 4 Jul 2006 07:33:56 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 100AD43D46 for ; Tue, 4 Jul 2006 07:33:56 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k647XtPS005917 for ; Tue, 4 Jul 2006 07:33:55 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k647XpKQ005914 for perforce@freebsd.org; Tue, 4 Jul 2006 07:33:51 GMT (envelope-from kmacy@freebsd.org) Date: Tue, 4 Jul 2006 07:33:51 GMT Message-Id: <200607040733.k647XpKQ005914@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100546 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 07:33:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=100546 Change 100546 by kmacy@kmacy_storage:sun4v_work_experimental_sux on 2006/07/04 07:33:12 IF _stable Affected files ... .. //depot/projects/kmacy_sun4v_experimental/src/MAINTAINERS#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/include/malloc_np.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/lib/libc/stdlib/malloc.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/share/man/man4/ng_netflow.4#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/share/man/man4/ng_tag.4#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/share/man/man4/sched_core.4#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/amd64/amd64/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/amd64/amd64/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/amd64/amd64/vm_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/arm/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/arm/vm_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/sa11x0/assabet_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/arm/xscale/i80321/iq31244_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/boot/sparc64/loader/main.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/conf/files#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/conf/kmod.mk#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/conf/options#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/ddb/db_ps.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/em/if_em.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/isp/isp_pci.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mfi/mfi.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/ciphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/nsgphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/rgephy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/mpt/mpt_pci.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/ofw/openfirm.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/pci/pci_pci.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/pci/pcireg.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/sio/sio.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/usb/if_ural.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/dev/usb/ohci_pci.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/i386/intr_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/i386/local_apic.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/i386/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/i386/pmap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/i386/sys_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/i386/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/i386/vm_machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/include/apicvar.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/include/intr_machdep.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/i386/isa/atpic.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/ia64/ia64/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/ia64/ia64/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/init_main.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/init_sysent.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_clock.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_fork.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_idle.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_intr.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_kse.c#2 delete .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_poll.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_proc.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_resource.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_sig.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_subr.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_switch.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_synch.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_thr.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/kern_thread.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/sched_4bsd.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/sched_core.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/sched_ule.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/subr_bus.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/subr_rman.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/subr_trap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/sys_process.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/syscalls.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/syscalls.master#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/kern/tty.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/modules/streams/Makefile#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/modules/svr4/Makefile#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/netinet6/in6_cksum.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/pc98/pc98/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/posix4/ksched.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/powerpc/powerpc/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/powerpc/powerpc/mmu_oea.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/powerpc/powerpc/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sparc64/sparc64/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sparc64/sparc64/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sun4v/sun4v/machdep.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sun4v/sun4v/pmap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sun4v/sun4v/trap.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sys/bus.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sys/proc.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sys/rtprio.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sys/sched.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sys/syscall.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sys/syscall.mk#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/sys/sysproto.h#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/ufs/ffs/ffs_vfsops.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/vm/swap_pager.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/vm/vm_glue.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/vm/vm_init.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/vm/vm_map.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/vm/vm_meter.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/vm/vm_page.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/vm/vm_pageq.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/sys/vm/vm_zeroidle.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/tools/tools/net80211/wlanwatch/wlanwatch.c#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/usr.bin/tail/tail.1#2 integrate .. //depot/projects/kmacy_sun4v_experimental/src/usr.bin/tail/tail.c#2 integrate Differences ... ==== //depot/projects/kmacy_sun4v_experimental/src/MAINTAINERS#2 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.135 2006/06/03 01:52:11 scottl Exp $ +$FreeBSD: src/MAINTAINERS,v 1.136 2006/07/01 10:51:54 markm Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -35,10 +35,6 @@ NEWCARD imp Pre-commit review requested. OLDCARD imp Pre-commit review requested. pci bus imp,jhb Pre-commit review requested. -telnet markm Heads-up appreciated. Try not to break it. -secure/* markm Heads-up appreciated. Try not to break it. -kerberos5 nectar Pre-commit review requested. -heimdal nectar Pre-commit review requested. cdboot jhb Pre-commit review requested. pxeboot jhb Pre-commit review requested. witness jhb Pre-commit review requested. @@ -91,8 +87,6 @@ libufs jmallett Willing to handle problems, help with work. fdc(4) joerg Just keep me informed of changes, try not to break it. sppp(4) joerg Just keep me informed of changes, try not to break it. -libc nectar Opportuntity for pre-commit review appreciated for - nsdispatch(3) and its consumers. unifdef(1) fanf Pre-commit review requested. ntp roberto Pre-commit review requested. inetd dwmalone Recommends pre-commit review. @@ -147,12 +141,7 @@ games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch sbin/dhclient/Makefile.inc:MAINTAINER= mbr -sys/compat/svr4/Makefile:MAINTAINER= newton@freebsd.org -sys/dev/bktr/CHANGELOG.TXT: * MAINTAINER = Roger Hardiman sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org -sys/modules/bktr/bktr_mem/Makefile:MAINTAINER= roger@freebsd.org -sys/modules/streams/Makefile:MAINTAINER= newton@atdot.dotat.org -sys/modules/svr4/Makefile:MAINTAINER= newton@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org usr.bin/locate/Makefile:MAINTAINER= wosch ==== //depot/projects/kmacy_sun4v_experimental/src/include/malloc_np.h#2 (text) ==== @@ -26,12 +26,16 @@ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/include/malloc_np.h,v 1.1 2006/03/28 22:16:03 jasone Exp $ + * $FreeBSD: src/include/malloc_np.h,v 1.2 2006/06/30 20:57:41 jasone Exp $ */ #ifndef _MALLOC_NP_H_ #define _MALLOC_NP_H_ +#include +#include +__BEGIN_DECLS size_t malloc_usable_size(const void *ptr); +__END_DECLS #endif /* _MALLOC_NP_H_ */ ==== //depot/projects/kmacy_sun4v_experimental/src/lib/libc/stdlib/malloc.c#2 (text+ko) ==== @@ -185,7 +185,7 @@ #endif #include -__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.127 2006/06/20 20:38:25 jasone Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.129 2006/07/01 16:51:10 jasone Exp $"); #include "libc_private.h" #ifdef MALLOC_DEBUG @@ -659,9 +659,6 @@ * Data. */ -/* Used as a special "nil" return value for malloc(0). */ -static const int nil; - /* Number of CPUs. */ static unsigned ncpus; @@ -1565,82 +1562,82 @@ static inline void arena_run_reg_dalloc(arena_run_t *run, arena_bin_t *bin, void *ptr, size_t size) { + /* + * To divide by a number D that is not a power of two we multiply + * by (2^21 / D) and then right shift by 21 positions. + * + * X / D + * + * becomes + * + * (size_invs[(D >> QUANTUM_2POW_MIN) - 3] * D) >> SIZE_INV_SHIFT + */ +#define SIZE_INV_SHIFT 21 +#define SIZE_INV(s) (((1 << SIZE_INV_SHIFT) / (s << QUANTUM_2POW_MIN)) + 1) + static const unsigned size_invs[] = { + SIZE_INV(3), + SIZE_INV(4), SIZE_INV(5), SIZE_INV(6), SIZE_INV(7), + SIZE_INV(8), SIZE_INV(9), SIZE_INV(10), SIZE_INV(11), + SIZE_INV(12),SIZE_INV(13), SIZE_INV(14), SIZE_INV(15), + SIZE_INV(16),SIZE_INV(17), SIZE_INV(18), SIZE_INV(19), + SIZE_INV(20),SIZE_INV(21), SIZE_INV(22), SIZE_INV(23), + SIZE_INV(24),SIZE_INV(25), SIZE_INV(26), SIZE_INV(27), + SIZE_INV(28),SIZE_INV(29), SIZE_INV(30), SIZE_INV(31) + }; unsigned diff, regind, elm, bit; assert(run->magic == ARENA_RUN_MAGIC); + assert(((sizeof(size_invs)) / sizeof(unsigned)) + 3 + >= (SMALL_MAX_DEFAULT >> QUANTUM_2POW_MIN)); /* - * Avoid doing division with a variable divisor if possible. This - * single operation can reduce allocator throughput by around 20%! + * Avoid doing division with a variable divisor if possible. Using + * actual division here can reduce allocator throughput by over 20%! */ -#define POW2_CASE(p) \ - case (1 << (p)): \ - regind = diff >> (p); \ - break; -#define QUANTUM_CASE(n) \ - case ((n) << QUANTUM_2POW_MIN): \ - regind = diff / ((n) << QUANTUM_2POW_MIN); \ - break; - - /* - * These assertions make sure that the switch statement matches - * compile-time configuration. - */ - assert(tiny_min_2pow >= 1); - assert(QUANTUM_2POW_MIN >= 3 && QUANTUM_2POW_MIN <= 4); - assert(SMALL_MAX_2POW_DEFAULT == 9); - diff = (unsigned)((uintptr_t)ptr - (uintptr_t)run - bin->reg0_offset); - switch (size) { - POW2_CASE(1) - POW2_CASE(2) -#if (QUANTUM_2POW_MIN > 3) - POW2_CASE(3) -#endif - QUANTUM_CASE(1) - QUANTUM_CASE(2) - QUANTUM_CASE(3) - QUANTUM_CASE(4) - QUANTUM_CASE(5) - QUANTUM_CASE(6) - QUANTUM_CASE(7) - QUANTUM_CASE(8) - QUANTUM_CASE(9) - QUANTUM_CASE(10) - QUANTUM_CASE(11) - QUANTUM_CASE(12) - QUANTUM_CASE(13) - QUANTUM_CASE(14) - QUANTUM_CASE(15) - QUANTUM_CASE(16) - QUANTUM_CASE(17) - QUANTUM_CASE(18) - QUANTUM_CASE(19) - QUANTUM_CASE(20) - QUANTUM_CASE(21) - QUANTUM_CASE(22) - QUANTUM_CASE(23) - QUANTUM_CASE(24) - QUANTUM_CASE(25) - QUANTUM_CASE(26) - QUANTUM_CASE(27) - QUANTUM_CASE(28) - QUANTUM_CASE(29) - QUANTUM_CASE(30) - QUANTUM_CASE(31) - QUANTUM_CASE(32) + if ((size & (size - 1)) == 0) { + /* + * log2_table allows fast division of a power of two in the + * [1..128] range. + * + * (x / divisor) becomes (x >> log2_table[divisor - 1]). + */ + static const unsigned char log2_table[] = { + 0, 1, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7 + }; -#if (QUANTUM_2POW_MIN <= 3) - POW2_CASE(9) -#endif - POW2_CASE(10) - POW2_CASE(11) - POW2_CASE(12) /* Handle up to 8 kB pages. */ - default: + if (size <= 128) + regind = (diff >> log2_table[size - 1]); + else if (size <= 32768) + regind = diff >> (8 + log2_table[(size >> 8) - 1]); + else { + /* + * The page size is too large for us to use the lookup + * table. Use real division. + */ regind = diff / size; - } -#undef POW2_CASE -#undef QUANTUM_CASE + } + } else if (size <= ((sizeof(size_invs) / sizeof(unsigned)) + << QUANTUM_2POW_MIN) + 2) { + regind = size_invs[(size >> QUANTUM_2POW_MIN) - 3] * diff; + regind >>= SIZE_INV_SHIFT; + } else { + /* + * size_invs isn't large enough to handle this size class, so + * calculate regind using actual division. This only happens + * if the user increases small_max via the 'S' runtime + * configuration option. + */ + regind = diff / size; + }; + assert(regind == diff / size); assert(regind < bin->nregs); elm = regind >> (SIZEOF_INT_2POW + 3); @@ -1649,6 +1646,8 @@ bit = regind - (elm << (SIZEOF_INT_2POW + 3)); assert((run->regs_mask[elm] & (1 << bit)) == 0); run->regs_mask[elm] |= (1 << bit); +#undef SIZE_INV +#undef SIZE_INV_SHIFT } static void @@ -2239,7 +2238,6 @@ arena_chunk_map_t mapelm; assert(ptr != NULL); - assert(ptr != &nil); assert(CHUNK_ADDR2BASE(ptr) != ptr); /* @@ -2281,8 +2279,7 @@ == (QUANTUM_CEILING(oldsize) >> opt_quantum_2pow)) goto IN_PLACE; } else { - if (oldsize > small_max && - pow2_ceil(size) == pow2_ceil(oldsize)) + if (oldsize > small_max && pow2_ceil(size) == oldsize) goto IN_PLACE; } @@ -2320,7 +2317,6 @@ assert(arena->magic == ARENA_MAGIC); assert(chunk->arena == arena); assert(ptr != NULL); - assert(ptr != &nil); assert(CHUNK_ADDR2BASE(ptr) != ptr); pageind = (((uintptr_t)ptr - (uintptr_t)chunk) >> pagesize_2pow); @@ -2353,6 +2349,7 @@ /* Medium allocation. */ size = mapelm.npages << pagesize_2pow; + assert((((uintptr_t)ptr) & (size - 1)) == 0); if (opt_junk) memset(ptr, 0x5a, size); @@ -2666,29 +2663,36 @@ ipalloc(size_t alignment, size_t size) { void *ret; - size_t pow2_size; + size_t alloc_size; /* - * Round up to the nearest power of two that is >= alignment and - * >= size. + * Take advantage of the fact that for each size class, every object is + * aligned at the smallest power of two that is non-zero in the base + * two representation of the size. For example: + * + * Size | Base 2 | Minimum alignment + * -----+----------+------------------ + * 96 | 1100000 | 32 + * 144 | 10100000 | 32 + * 192 | 11000000 | 64 + * + * Depending on runtime settings, it is possible that arena_malloc() + * will further round up to a power of two, but that never causes + * correctness issues. */ - if (size > alignment) - pow2_size = pow2_ceil(size); - else - pow2_size = alignment; - pow2_size = QUANTUM_CEILING(pow2_size); - if (pow2_size < size) { + alloc_size = (size + (alignment - 1)) & (-alignment); + if (alloc_size < size) { /* size_t overflow. */ return (NULL); } - if (pow2_size <= arena_maxclass) - ret = arena_malloc(choose_arena(), pow2_size); + if (alloc_size <= arena_maxclass) + ret = arena_malloc(choose_arena(), alloc_size); else { if (alignment <= chunk_size) ret = huge_malloc(size); else { - size_t chunksize, alloc_size, offset; + size_t chunksize, offset; chunk_node_t *node; /* @@ -2815,7 +2819,6 @@ arena_chunk_t *chunk; assert(ptr != NULL); - assert(ptr != &nil); chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(ptr); if (chunk != ptr) { @@ -2850,7 +2853,6 @@ size_t oldsize; assert(ptr != NULL); - assert(ptr != &nil); assert(size != 0); oldsize = isalloc(ptr); @@ -2869,7 +2871,6 @@ arena_chunk_t *chunk; assert(ptr != NULL); - assert(ptr != &nil); chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(ptr); if (chunk != ptr) { @@ -3404,10 +3405,11 @@ if (size == 0) { if (opt_sysv == false) - ret = (void *)&nil; - else + size = 1; + else { ret = NULL; - goto RETURN; + goto RETURN; + } } ret = imalloc(size); @@ -3486,10 +3488,11 @@ num_size = num * size; if (num_size == 0) { if (opt_sysv == false) - ret = (void *)&nil; - else + num_size = 1; + else { ret = NULL; - goto RETURN; + goto RETURN; + } /* * Try to avoid division here. We know that it isn't possible to * overflow during multiplication if neither operand uses any of the @@ -3524,44 +3527,49 @@ { void *ret; - if (size != 0) { - if (ptr != &nil && ptr != NULL) { - assert(malloc_initialized); + if (size == 0) { + if (opt_sysv == false) + size = 1; + else { + if (ptr != NULL) + idalloc(ptr); + ret = NULL; + goto RETURN; + } + } - ret = iralloc(ptr, size); + if (ptr != NULL) { + assert(malloc_initialized); - if (ret == NULL) { - if (opt_xmalloc) { - malloc_printf("%s: (malloc) Error in" - " ralloc(%p, %zu): out of memory\n", - _getprogname(), ptr, size); - abort(); - } - errno = ENOMEM; - } - } else { - if (malloc_init()) - ret = NULL; - else - ret = imalloc(size); + ret = iralloc(ptr, size); - if (ret == NULL) { - if (opt_xmalloc) { - malloc_printf("%s: (malloc) Error in" - " ralloc(%p, %zu): out of memory\n", - _getprogname(), ptr, size); - abort(); - } - errno = ENOMEM; + if (ret == NULL) { + if (opt_xmalloc) { + malloc_printf("%s: (malloc) Error in" + " realloc(%p, %zu): out of memory\n", + _getprogname(), ptr, size); + abort(); } + errno = ENOMEM; } } else { - if (ptr != &nil && ptr != NULL) - idalloc(ptr); + if (malloc_init()) + ret = NULL; + else + ret = imalloc(size); - ret = (void *)&nil; + if (ret == NULL) { + if (opt_xmalloc) { + malloc_printf("%s: (malloc) Error in" + " realloc(%p, %zu): out of memory\n", + _getprogname(), ptr, size); + abort(); + } + errno = ENOMEM; + } } +RETURN: UTRACE(ptr, size, ret); return (ret); } @@ -3571,7 +3579,7 @@ { UTRACE(ptr, 0, 0); - if (ptr != &nil && ptr != NULL) { + if (ptr != NULL) { assert(malloc_initialized); idalloc(ptr); @@ -3592,10 +3600,7 @@ assert(ptr != NULL); - if (ptr == &nil) - return (0); - else - return (isalloc(ptr)); + return (isalloc(ptr)); } /* ==== //depot/projects/kmacy_sun4v_experimental/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#2 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.951 2006/06/26 12:12:09 keramida Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.953 2006/07/02 01:58:33 bmah Exp $ 2000 @@ -366,11 +366,11 @@ A new loader tunable comconsole_speed to change the serial console speed has been added. - If the previous stage boot loader requested a serial console + If the previous stage boot loader requested a serial console, then the default speed is determined from the current serial port - speed, and otherwise it is set to 9600 or the value of - the kernel option BOOT_COMCONSOLE_SPEED - at compile time. &merged; + speed. Otherwise it is set to 9600 or the value of + the BOOT_COMCONSOLE_SPEED kernel option. + &merged; @@ -391,7 +391,7 @@ &man.pccbb.4;, and &man.exca.4; drivers are now buildable as kernel modules. - A &man.acpi.dock.4; driver has been added to provide + An &man.acpi.dock.4; driver has been added to provide support for controlling laptop docking station functions via ACPI. @@ -416,9 +416,11 @@ Support for the PadLock Security Co-processor in VIA C3 processors has been added to the &man.crypto.9; subsystem. + More information can be found in the &man.padlock.4; manual + page. &merged; - A bug which prevents the &man.ichsmb.4; kernel module + A bug which prevented the &man.ichsmb.4; kernel module from unloading has been fixed. Dual-core processors (such as the Intel @@ -440,7 +442,7 @@ or at runtime via &man.kldload.8; and releasing the active keyboard. &merged; - The &man.kbdmux.4; driver has been included in the + The &man.kbdmux.4; driver is now included in the GENERIC kernel by default. Also, the Boot FreeBSD with USB keyboard menu item in the boot loader menu has been removed @@ -461,22 +463,22 @@ The smbios(4) driver support for amd64 has been added. - The tnt4882(4) driver which supports National Instruments - PCI-GPIB card has been added. + The tnt4882(4) driver, which supports the National Instruments + PCI-GPIB card, has been added. The &man.uart.4; driver has been included in the GENERIC kernel by default. - When both &man.sio.4; and &man.uart.4; can handle a serial port, + When both &man.sio.4; and &man.uart.4; can handle a given serial port, &man.sio.4; will claim it. The &man.uart.4; driver now supports LOM (Lights Out Management) - and RSC (Remote System Control) devices as console. + and RSC (Remote System Control) devices as consoles. A new loader tunable hw.apic.enable_extint has been added. - This tunable can be used not to mask the ExtINT pin on the first - I/O APIC. At least one chipset for Intel Pentium III seems - to need this even though all of the pins in the 8259A's are masked. + This tunable can be used to disable masking of the ExtINT pin on the first + I/O APIC. At least one chipset for the Intel Pentium III seems + to need this, even though all of the pins in the 8259As are masked. The default is still to mask the ExtINT pin. Support has been improved for @@ -487,7 +489,7 @@ Multimedia Support - The &man.agp.4; driver now supports ATI IGP chipsets. + The &man.agp.4; driver now supports ATI AGP chipsets. &merged; The new midi(4) driver which is based on NetBSD's one @@ -561,7 +563,7 @@ The &man.ed.4; driver is now MPSAFE. - The &man.el.4; driver has been removed. + The &man.el.4; driver has been removed due to lack of use. The &man.em.4; driver now supports big-endian architectures such as sparc64. &merged; @@ -583,11 +585,12 @@ architectures such as sparc64. The &man.le.4; driver, which supports AMD Am7900 LANCE - and Am79C9xx PCnet NICs and is based on NetBSD's implementation, + and Am79C9xx PCnet NICs, has been added. While the &man.lnc.4; driver also supports these NICs, this driver has several advantages over it such as MPSAFE, ALTQ, VLAN_MTU, ifmedia, and 32-bit DMA for PCI - variants. &merged; + variants. This driver is based on NetBSD's implementation. + &merged; The &man.lge.4; driver is now MPSAFE. &merged; @@ -597,7 +600,7 @@ The &man.my.4; driver is now MPSAFE. &merged; - The &man.my.4; driver now supports &man.altq.4; + The &man.my.4; driver now supports &man.altq.4;. The &man.mxge.4; driver, which supports Myricom Myri10GE 10 Gigabit Ethernet @@ -647,14 +650,14 @@ Network Protocols - The &man.arp.8; retransmission algorithm has been - rewritten as that ARP requests are retransmitted without + The &man.arp.4; retransmission algorithm has been + rewritten so that ARP requests are retransmitted without suppression, while there is demand for such ARP entry. Due to this change, a sysctl variable net.link.ether.inet.host_down_time has been removed. &merged; - The &man.arp.8; now supports a sysctl variable + The &man.arp.4; protocol now supports a sysctl variable net.link.ether.inet.log_arp_permanent_modify to suppress logging of attempts to modify permanent ARP entries. &merged; @@ -674,7 +677,7 @@ found in RFC 1701 and RFC 1702, now supports IPv6 over GRE. The &man.if.bridge.4; driver now supports - creating span ports, which transmit a copy of every frame + creating SPAN ports, which transmit a copy of every frame received by the bridge. This feature can be enabled by using &man.ifconfig.8;. &merged; @@ -689,15 +692,15 @@ memberships (formerly 20) has been removed. The path MTU discovery for multicast packets in the &os; - &man.ip6.4; stack has been disabled by default because - notifying path MTU by a lot of routers in multicast + IPv6 stack has been disabled by default. + Path MTU notification from a large number of multicast routers can be a kind of distributed Denial-of-Service attack to a router. This feature can be re-enabled by using a new sysctl variable net.inet6.ip6.mcast_pmtu. &merged; The &man.ipfw.4; IP packet filter now supports IPv6. &merged; - The &man.ipfw.4; now supports substitution of the action + The &man.ipfw.4; firewall system now supports substitution of the action argument with the value obtained from table lookup, which allows some optimization of rulesets. This is now applicable only to pipe, @@ -776,25 +779,25 @@ A new socket option IP_MINTTL has been added. This may be used to set the minimum acceptable TTL a packet must have when received on a socket. - All packets with a lower TTL are silently dropped, - and this works on already connected/connecting and + All packets with a lower TTL are silently dropped. + This works on already connected/connecting and listening sockets for RAW, UDP, and TCP. This option - is only really useful when set to 255 preventing packets + is only really useful when set to 255, preventing packets from outside the directly connected networks reaching local listeners on sockets. Also, this option allows userland implementation of The Generalized TTL Security Mechanism (GTSM) found in RFC 3682. - The stealth forwarding now supports IPv6 as well as IPv4. + Stealth forwarding now supports IPv6 as well as IPv4. This behavior can be controlled by using a new sysctl variable net.inet6.ip6.stealth. - A bug that IPV6_V6ONLY socket option - does not work for UDP has been fixed. + The IPV6_V6ONLY socket option + now works for UDP. The TCP bandwidth-delay product limiting feature has been disabled when the RTT is below a certain threshold. - This optimization does not make sense on a LAN as it has + This optimization does not make sense on a LAN, as it has trouble figuring out the maximal bandwidth due to the coarse tick granularity. A new sysctl variable net.inet.tcp.inflight.rttthresh specifies @@ -831,16 +834,16 @@ Fasttrak TX4300. &merged; - The &man.ata.4; driver now supports DMA for kernel crash dumps - and crash dumping to an &man.ataraid.4; device. + The &man.ata.4; driver now supports DMA for kernel crash dumps, + as well as crash dumping to an &man.ataraid.4; device. &merged; The &man.ata.4; driver now supports USB mass storage class devices. To enable it, a line device atausb in the kernel configuration file or loading the atausb kernel module is needed. - Note that this conflicts with &man.umass.4; and cannot coexist with - each other. + Note that this functionality cannot coexist with the + &man.umass.4; driver. The &man.ataraid.4; driver now supports JMicron ATA RAID metadata. &merged; @@ -870,12 +873,12 @@ &merged; The GEOM_MIRROR and GEOM_RAID3 - classes now use parallel I/O request for synchronization + classes now use parallel I/O requests for synchronization to improve the performance. New sysctl variables kern.geom.mirror.sync_requests and kern.geom.raid3.sync_requests define how many parallel I/O requests should be used. - Also, sysctl variables + Also, the sysctl variables kern.geom.mirror.reqs_per_sync, kern.geom.mirror.syncs_per_sec, kern.geom.raid3.reqs_per_sync, and @@ -920,7 +923,7 @@ and supports different cryptographic algorithms. See &man.geli.8; for more information. &merged; - The &man.geli.8; now supports loading keyfiles before the root + The &man.geli.8; disk encryption system now supports loading keyfiles before the root file system is mounted. &merged; For example, the following entries can be used in /boot/loader.conf to enable @@ -981,8 +984,8 @@ in struct addrinfo has been removed, which was originally for the ABI compatibility. For example, this change breaks the ABI compatibility of the - &man.getaddrinfo.3; function on 64-bit architecture including - &os;/alpha, &os;/amd64, &os;/ia64, and &os;/sparc64. + &man.getaddrinfo.3; function on 64-bit architectures, including + &os;/amd64, &os;/ia64, and &os;/sparc64. The &man.arp.8; utility now allows the option together with the and options @@ -1016,7 +1019,7 @@ kernel configuration file if it exists in the current directory before the specified configuration file. &merged; - The &man.csh.1; utility now supports NLS catalog. + The &man.csh.1; utility now supports NLS catalogs. Note that this requires installing the shells/tcsh_nls port. &merged; @@ -1070,7 +1073,7 @@ to rename objects and to move a subdisk from one drive to another. &merged; - The &man.gvinum.8; utility now supports + The &man.gvinum.8; utility now supports the resetconfig sub-command. An implementation of Generic Security Service API (GSS-API) @@ -1097,8 +1100,8 @@ The parameter to &man.ifconfig.8; no longer requires a network interface as its argument. The - argument still is supported for backward compatibility, but now - it is deprecated and its use is discouraged. + argument still is supported for backward compatibility, but + is now deprecated and its use is discouraged. The &man.iostat.8; utility now supports a flag (inspired by Solaris) to print @@ -1160,8 +1163,8 @@ for the allocators. &merged; The &man.ln.1; utility now supports - an flag which allows to delete existing - empty directories, when creating symbolic links. + an flag, which deletes existing + empty directories when creating symbolic links. &merged; The &man.locate.1; utility now supports @@ -1187,10 +1190,10 @@ userland code, although most of the &os; base system and common ports have been tested and/or fixed. - The &man.mdconfig.8; utility now supports XML - output of the device listing. Currently + The &man.mdconfig.8; utility now supports producing + device listings formatted as XML. Currently, the list and query - sub-command support this feature. + sub-commands support this feature. The &man.mdconfig.8; utility's option now supports specifying multiple devices separated @@ -1224,7 +1227,7 @@ has been fixed. The &man.moused.8; daemon now supports an flag - to enable horizontal virtual scrolling similar to a + to enable horizontal virtual scrolling similar to the flag for vertical virtual scrolling. &merged; @@ -1273,7 +1276,7 @@ each matching process. The &man.powerd.8; program now supports a - option which allows to specify pidfile. + option, which specifies a pidfile to use. The DNS resolver library in &os;'s libc has been updated to BIND9's one. @@ -1284,7 +1287,7 @@ LAN (LAN Access Using PPP), and SP (Serial Port). &merged; The &man.rpcgen.1; utility now generates headers and stub files - which can be used with ANSI C compilers by default. + that can be used with ANSI C compilers by default. The &man.rtld.1; runtime linker now supports ELF symbol versioning using GNU semantics. This implementation aims to be compatible @@ -1298,7 +1301,7 @@ incorrect calculation of pattern space length in some cases has been fixed. - The &man.sh.1; utility now supports times + The &man.sh.1; utility now supports a times built-in command. &merged; The &man.snapinfo.8; utility, which shows snapshot locations @@ -1338,7 +1341,7 @@ The shared library version number of all libraries has been updated due to some possible ABI changes. The libraries - include: snmp_*, libdialog, libg2c, libobjc, + include: snmp_*, libdialog, libg2c, libobjc, libreadline, libregex, libstdc++, libkrb5, libalias, libarchive, libbegemot, libbluetooth, libbsnmp, libbz2, libc_r, libcrypt, libdevstat, libedit, libexpat, libfetch, libftpio, libgpib, @@ -1414,8 +1417,9 @@ mdconfig_md1="-t vnode -f /var/foo.img" The netif script now supports - ipv4_addrs_ifn, - which adds one or more IPv4 address from a ranged list in + ipv4_addrs_ifn + variables, + which add one or more IPv4 address from a ranged list in CIDR notation. &merged; For example: ipv4_addrs_ed0="192.168.0.1/24 192.168.1.1-5/28" @@ -1427,7 +1431,8 @@ The rc.initdiskless script now uses &man.tar.1; instead of &man.pax.1; because &man.pax.1; needs a writable >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jul 4 08:31:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1C04916A4ED; Tue, 4 Jul 2006 08:31:23 +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 E8B9616A4DD for ; Tue, 4 Jul 2006 08:31:22 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E04F343D96 for ; Tue, 4 Jul 2006 08:31:10 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k648V9Se009649 for ; Tue, 4 Jul 2006 08:31:09 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k648V9nu009646 for perforce@freebsd.org; Tue, 4 Jul 2006 08:31:09 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 08:31:09 GMT Message-Id: <200607040831.k648V9nu009646@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100549 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 08:31:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=100549 Change 100549 by piso@piso_newluxor on 2006/07/04 08:30:30 Turn on -Werror Affected files ... .. //depot/projects/soc2005/libalias/lib/libalias/lib-libalias/Makefile#2 edit Differences ... ==== //depot/projects/soc2005/libalias/lib/libalias/lib-libalias/Makefile#2 (text+ko) ==== @@ -9,6 +9,5 @@ SRCS= alias.c alias_db.c alias_proxy.c alias_util.c alias_old.c alias_mod.c INCS= alias.h alias_mod.h WARNS?= 6 -NO_WERROR= .include From owner-p4-projects@FreeBSD.ORG Tue Jul 4 08:33:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6D09716A4E7; Tue, 4 Jul 2006 08:33:13 +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 4741516A4E2 for ; Tue, 4 Jul 2006 08:33:13 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EF1C843D68 for ; Tue, 4 Jul 2006 08:33:12 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k648XCYJ009760 for ; Tue, 4 Jul 2006 08:33:12 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k648XCgR009757 for perforce@freebsd.org; Tue, 4 Jul 2006 08:33:12 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 08:33:12 GMT Message-Id: <200607040833.k648XCgR009757@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100550 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 08:33:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=100550 Change 100550 by piso@piso_newluxor on 2006/07/04 08:32:31 Fixes a bunch of warnings: -axe empty if statement -axe unused vars -include "err.h" -return 1 if the function is supposed to return an int Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#4 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#4 (text+ko) ==== @@ -137,6 +137,7 @@ #include #include #else +#include #include "alias.h" #include "alias_local.h" #include "alias_mod.h" @@ -741,8 +742,6 @@ /* Walk out chain. */ error = find_handler(IN, UDP, la, pip, &ad); - if (error == EHDNOF) - ; /* If UDP checksum is not zero, then adjust since destination port */ /* is being unaliased and destination address is being altered. */ @@ -803,8 +802,6 @@ /* Walk out chain. */ error = find_handler(OUT, UDP, la, pip, &ad); - if (error == EHDNOF) - ; /* If UDP checksum is not zero, adjust since source port is */ /* being aliased and source address is being altered */ @@ -870,8 +867,6 @@ /* Walk out chain. */ error = find_handler(IN, TCP, la, pip, &ad); - if (error == EHDNOF) - ; alias_address = GetAliasAddress(lnk); original_address = GetOriginalAddress(lnk); @@ -1031,8 +1026,6 @@ /* Walk out chain. */ error = find_handler(OUT, TCP, la, pip, &ad); - if (error == EHDNOF) - ; /* Adjust TCP checksum since source port is being aliased */ /* and source address is being altered */ @@ -1247,8 +1240,6 @@ /* Walk out chain. */ error = find_handler(IN, IP, la, pip, &ad); - if (error == EHDNOF) - ; if (error == OK) iresult = PKT_ALIAS_OK; else @@ -1374,8 +1365,6 @@ }; /* Walk out chain. */ error = find_handler(OUT, IP, la, pip, &ad); - if (error == EHDNOF) - ; if (error == OK) iresult = PKT_ALIAS_OK; else @@ -1505,8 +1494,6 @@ LibAliasRefreshModules(void) { char buf[256], conf[] = "/etc/libalias.conf"; FILE *fd; - struct dll *t; - struct proto_handler *p; int len; fd = fopen(conf, "r"); @@ -1584,6 +1571,7 @@ dlclose(t->handle); free(t); } + return (1); } #endif From owner-p4-projects@FreeBSD.ORG Tue Jul 4 08:43:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D023816A4E1; Tue, 4 Jul 2006 08:43:26 +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 864F616A4E0 for ; Tue, 4 Jul 2006 08:43:26 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2222043D46 for ; Tue, 4 Jul 2006 08:43:26 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k648hQ4D010132 for ; Tue, 4 Jul 2006 08:43:26 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k648hPTM010129 for perforce@freebsd.org; Tue, 4 Jul 2006 08:43:25 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 08:43:25 GMT Message-Id: <200607040843.k648hPTM010129@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100551 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 08:43:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=100551 Change 100551 by piso@piso_newluxor on 2006/07/04 08:43:23 Fix compilation adding Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_proxy.c#3 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_proxy.c#3 (text+ko) ==== @@ -85,6 +85,7 @@ #include #include #else +#include #include "alias.h" /* Public API functions for libalias */ #include "alias_local.h" /* Functions used by alias*.c */ #endif From owner-p4-projects@FreeBSD.ORG Tue Jul 4 09:00:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 10A0A16A4DD; Tue, 4 Jul 2006 09:00:49 +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 C5DD016A4E7 for ; Tue, 4 Jul 2006 09:00:48 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 85FBD43D55 for ; Tue, 4 Jul 2006 09:00:48 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6490mtk018603 for ; Tue, 4 Jul 2006 09:00:48 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6490mpA018599 for perforce@freebsd.org; Tue, 4 Jul 2006 09:00:48 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 09:00:48 GMT Message-Id: <200607040900.k6490mpA018599@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100552 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 09:00:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=100552 Change 100552 by piso@piso_newluxor on 2006/07/04 08:59:58 Style: fix comments and whitespaces Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#4 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#4 (text+ko) ==== @@ -24,7 +24,7 @@ * SUCH DAMAGE. */ -/*- +/* * Alias_mod.h defines the outside world interfaces for the packet aliasing * modular framework */ @@ -32,13 +32,13 @@ #ifndef _ALIAS_MOD_H_ #define _ALIAS_MOD_H_ -/* protocol handlers struct & function*/ +/* Protocol handlers struct & function. */ -/* packet flow direction */ +/* Packet flow direction. */ #define IN 1 #define OUT 2 -/* working protocol */ +/* Working protocol. */ #define IP 1 #define TCP 2 #define UDP 4 @@ -47,17 +47,16 @@ /* * Data passed to protocol handler module, it must be filled * right before calling find_handler() to determine which - * module is elegible to be called + * module is elegible to be called. */ -struct alias_data { - +struct alias_data { struct alias_link *lnk; struct in_addr *original_address; struct in_addr *alias_address; - u_short *alias_port; - u_int16_t *sport, *dport; - int maxpacketsize; + uint16_t *alias_port; + uint16_t *sport, *dport; + uint16_t maxpacketsize; }; /* @@ -66,29 +65,26 @@ */ struct proto_handler { - - u_int pri; /* handler priority */ - int16_t dir; /* flow direction */ - int16_t proto; /* working protocol */ - int (*fingerprint)(struct libalias *la, /* fingerprint * function */ + uint pri; /* Handler priority. */ + int16_t dir; /* Flow direction. */ + int16_t proto; /* Working protocol. */ + int (*fingerprint)(struct libalias *la, /* Fingerprint * function. */ struct ip *pip, struct alias_data *ah); - int (*protohandler)(struct libalias *la, /* aliasing * function */ + int (*protohandler)(struct libalias *la, /* Aliasing * function. */ struct ip *pip, struct alias_data *ah); struct proto_handler *next; }; #if __FreeBSD_version >= 500000 struct chain { - void *chain; - struct mtx mtx; /* lock guarding list */ - int busy_count; /* busy count for rw locks */ + struct mtx mtx; /* Lock guarding list. */ + int busy_count; /* Busy count for rw locks. */ int want_write; struct cv cv; }; #else struct chain { - void *chain; int spl; }; @@ -97,23 +93,22 @@ /* * Used only in userland when libalias needs to keep track of all * module loaded. In kernel land (kld mode) we don't need to care - * care about libalias modules cause it's kld to do it for us + * care about libalias modules cause it's kld to do it for us. */ #define DLL_LEN 32 -struct dll { - - char name[DLL_LEN]; /* name of module */ +struct dll { + char name[DLL_LEN]; /* Name of module. */ void *handle; /* - * ptr to shared obj obtained through + * Ptr to shared obj obtained through * dlopen() - use this ptr to get access * to any symbols from a loaded module - * via dlsym() + * via dlsym(). */ struct dll *next; }; -/* functions used with protocol handlers */ +/* Functions used with protocol handlers. */ void handler_chain_init(void); void handler_chain_destroy(void); @@ -124,7 +119,7 @@ struct ip *, struct alias_data *); struct proto_handler *first_handler(void); -/* functions used with dll module */ +/* Functions used with dll module. */ void dll_chain_init(void); void dll_chain_destroy(void); @@ -132,31 +127,31 @@ void *detach_dll(char *); struct dll *walk_dll_chain(void); -/* general condition of success & failure */ +/* General condition of success & failure. */ #define OK 1 #define NOK -1 -/* end of handlers */ +/* End of handlers. */ #define EOH -1 /* - * handler/dll conflict - tried to attach a protocol handleror a dll, + * Handler/dll conflict - tried to attach a protocol handleror a dll, * but found another one with same priority, direction and working - * protocol(proto handler) or name (dll) already in chain + * protocol(proto handler) or name (dll) already in chain. */ #define EHDCON 2 /* - * handler/dll not found - tried to detach/search a protocol module - * handler or a dll not present in chain + * Handler/dll not found - tried to detach/search a protocol module + * handler or a dll not present in chain. */ #define EHDNOF 3 /* * Some defines borrowed from sys/module.h used to compile a kld - * in userland as a shared lib + * in userland as a shared lib. */ #ifndef _KERNEL From owner-p4-projects@FreeBSD.ORG Tue Jul 4 09:30:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B96D916A4DE; Tue, 4 Jul 2006 09:30:27 +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 7477716A4DA for ; Tue, 4 Jul 2006 09:30:27 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 473E443D46 for ; Tue, 4 Jul 2006 09:30:27 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k649UR7a021422 for ; Tue, 4 Jul 2006 09:30:27 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k649UQ12021419 for perforce@freebsd.org; Tue, 4 Jul 2006 09:30:26 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 09:30:26 GMT Message-Id: <200607040930.k649UQ12021419@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100555 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 09:30:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=100555 Change 100555 by piso@piso_newluxor on 2006/07/04 09:30:26 Fix typo. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#5 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#5 (text+ko) ==== @@ -65,7 +65,7 @@ */ struct proto_handler { - uint pri; /* Handler priority. */ + u_int pri; /* Handler priority. */ int16_t dir; /* Flow direction. */ int16_t proto; /* Working protocol. */ int (*fingerprint)(struct libalias *la, /* Fingerprint * function. */ From owner-p4-projects@FreeBSD.ORG Tue Jul 4 09:45:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E254A16A4E0; Tue, 4 Jul 2006 09:45:46 +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 AC9F916A4DA for ; Tue, 4 Jul 2006 09:45:46 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7DB2F43D45 for ; Tue, 4 Jul 2006 09:45:46 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k649jkOu022082 for ; Tue, 4 Jul 2006 09:45:46 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k649jkPG022079 for perforce@freebsd.org; Tue, 4 Jul 2006 09:45:46 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 09:45:46 GMT Message-Id: <200607040945.k649jkPG022079@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100556 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 09:45:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=100556 Change 100556 by piso@piso_newluxor on 2006/07/04 09:45:26 Axe 4.x support. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#5 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#5 (text+ko) ==== @@ -66,10 +66,6 @@ #ifdef _KERNEL -#if __FreeBSD_version >= 500000 - -/* Fine grained locking for 5.x, 6.x and 7.x */ - #define LIBALIAS_LOCK_INIT(_chain) \ mtx_init(&(_chain)->mtx, "libalias list of proto-handlers", NULL, \ MTX_DEF | MTX_RECURSE) @@ -127,57 +123,7 @@ if (mtx_initialized(&c->mtx)) LIBALIAS_LOCK_DESTROY(c); } -#else - -/* Good old spl*() locking for 4.x */ -/* - * XXX - i'm not sure about mutex & conditional var - * conversion that i did using spl*()... - */ - -#define LIBALIAS_LOCK_INIT(_chain) (_chain)->spl = 0 -#define LIBALIAS_LOCK_DESTROY(_chain) -#define LIBALIAS_WLOCK_ASSERT(_chain) do { \ - KASSERT(_chain->spl != 0, ("chain not locked")); \ -} while (0) - -static __inline void -LIBALIAS_RLOCK(struct chain *chain) -{ - chain->spl = splimp(); -} - -static __inline void -LIBALIAS_RUNLOCK(struct chain *chain) -{ - splx(chain->spl); -} - -static __inline void -LIBALIAS_WLOCK(struct chain *chain) -{ - LIBALIAS_RLOCK(chain); -} - -static __inline void -LIBALIAS_WUNLOCK(struct chain *chain) -{ - LIBALIAS_RUNLOCK(chain); -} -static void -_handler_chain_init(struct chain *c) { - - c->spl = 0; -} - -static void -_handler_chain_destroy(struct chain *c) { - - ; -} - -#endif #else #define LIBALIAS_LOCK_INIT(_chain) ; From owner-p4-projects@FreeBSD.ORG Tue Jul 4 09:45:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 73BC816A569; Tue, 4 Jul 2006 09:45:47 +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 5189216A566 for ; Tue, 4 Jul 2006 09:45:47 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CE46543D45 for ; Tue, 4 Jul 2006 09:45:46 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k649jk0A022088 for ; Tue, 4 Jul 2006 09:45:46 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k649jkPw022085 for perforce@freebsd.org; Tue, 4 Jul 2006 09:45:46 GMT (envelope-from clem1@FreeBSD.org) Date: Tue, 4 Jul 2006 09:45:46 GMT Message-Id: <200607040945.k649jkPw022085@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100557 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 09:45:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=100557 Change 100557 by clem1@clem1_ipv6vulns on 2006/07/04 09:45:27 ndp-sk allows to manipulate remote neighbor cache. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/attacking-tools/ndp-sk/DESCRIPTION#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/attacking-tools/ndp-sk/ndp-sk.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Jul 4 10:15:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4591616A4E2; Tue, 4 Jul 2006 10:15:31 +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 DFCA716A4E5 for ; Tue, 4 Jul 2006 10:15:30 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1CCB743D6A for ; Tue, 4 Jul 2006 10:15:24 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64AFNfZ024498 for ; Tue, 4 Jul 2006 10:15:23 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64AFNin024495 for perforce@freebsd.org; Tue, 4 Jul 2006 10:15:23 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 10:15:23 GMT Message-Id: <200607041015.k64AFNin024495@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100558 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 10:15:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=100558 Change 100558 by piso@piso_newluxor on 2006/07/04 10:14:51 Use libkern.h for strncmp() prototype instead of redefining it by myself. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#6 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#6 (text+ko) ==== @@ -26,6 +26,7 @@ */ #ifdef _KERNEL +#include #include #include #else @@ -56,11 +57,6 @@ #include -#if __FreeBSD_version >= 500000 -/* XXX - make the compiler happy... */ -int strncmp(const char *s1, const char *s2, size_t len); -#endif - /* protocol and userland module handlers chains */ struct chain handler_chain, dll_chain; From owner-p4-projects@FreeBSD.ORG Tue Jul 4 12:54:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E4B416A4E8; Tue, 4 Jul 2006 12:54:42 +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 E2F6416A4E6 for ; Tue, 4 Jul 2006 12:54:41 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BC23C43D6A for ; Tue, 4 Jul 2006 12:54:40 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64CseKu043773 for ; Tue, 4 Jul 2006 12:54:40 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64Csem4043770 for perforce@freebsd.org; Tue, 4 Jul 2006 12:54:40 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 12:54:40 GMT Message-Id: <200607041254.k64Csem4043770@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100559 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 12:54:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=100559 Change 100559 by piso@piso_newluxor on 2006/07/04 12:54:39 Axe the last vestiges of 4.x support in libalias modules. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#7 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#6 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#7 (text+ko) ==== ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#6 (text+ko) ==== @@ -75,7 +75,8 @@ struct proto_handler *next; }; -#if __FreeBSD_version >= 500000 +#ifdef _KERNEL +// XXX - convert it to use queue(3) and rwlock(9) struct chain { void *chain; struct mtx mtx; /* Lock guarding list. */ @@ -84,9 +85,9 @@ struct cv cv; }; #else +// XXX - convert it to use queue(3) struct chain { void *chain; - int spl; }; #endif From owner-p4-projects@FreeBSD.ORG Tue Jul 4 13:56:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 98D5216A4DF; Tue, 4 Jul 2006 13:56:59 +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 13D1416A4DD for ; Tue, 4 Jul 2006 13:56:59 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CF62843D49 for ; Tue, 4 Jul 2006 13:56:58 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64Duw5t047874 for ; Tue, 4 Jul 2006 13:56:58 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64DuwF5047871 for perforce@freebsd.org; Tue, 4 Jul 2006 13:56:58 GMT (envelope-from piso@freebsd.org) Date: Tue, 4 Jul 2006 13:56:58 GMT Message-Id: <200607041356.k64DuwF5047871@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100560 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 13:56:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=100560 Change 100560 by piso@piso_newluxor on 2006/07/04 13:56:03 Use rwlock(9) instead of my own read-write lock. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#8 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#7 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#8 (text+ko) ==== @@ -28,6 +28,8 @@ #ifdef _KERNEL #include #include +#include +#include #include #else #include @@ -63,61 +65,47 @@ #ifdef _KERNEL #define LIBALIAS_LOCK_INIT(_chain) \ - mtx_init(&(_chain)->mtx, "libalias list of proto-handlers", NULL, \ - MTX_DEF | MTX_RECURSE) -#define LIBALIAS_LOCK_DESTROY(_chain) mtx_destroy(&(_chain)->mtx) -#define LIBALIAS_WLOCK_ASSERT(_chain) do { \ - mtx_assert(&(_chain)->mtx, MA_OWNED); \ - NET_ASSERT_GIANT(); \ -} while (0) + rw_init(&_chain->rw, "Libalias_rwlock") +#define LIBALIAS_LOCK_DESTROY(_chain) rw_destroy(&_chain->rw) +#define LIBALIAS_WLOCK_ASSERT(_chain) \ + rw_assert(&_chain->rw, RA_WLOCKED) static __inline void LIBALIAS_RLOCK(struct chain *chain) { - mtx_lock(&chain->mtx); - chain->busy_count++; - mtx_unlock(&chain->mtx); + rw_rlock(&chain->rw); } static __inline void LIBALIAS_RUNLOCK(struct chain *chain) { - mtx_lock(&chain->mtx); - chain->busy_count--; - if (chain->busy_count == 0 && chain->want_write) - cv_signal(&chain->cv); - mtx_unlock(&chain->mtx); + rw_runlock(&chain->rw); } static __inline void LIBALIAS_WLOCK(struct chain *chain) { - mtx_lock(&chain->mtx); - chain->want_write++; - while (chain->busy_count > 0) - cv_wait(&chain->cv, &chain->mtx); + rw_wlock(&chain->rw); } static __inline void LIBALIAS_WUNLOCK(struct chain *chain) { - chain->want_write--; - cv_signal(&chain->cv); - mtx_unlock(&chain->mtx); + rw_wunlock(&chain->rw); } static void -_handler_chain_init(struct chain *c) { +_handler_chain_init(struct chain *chain) { - if (!mtx_initialized(&c->mtx)) - LIBALIAS_LOCK_INIT(c); + if (!rw_initialized(&chain->rw)) + LIBALIAS_LOCK_INIT(chain); } static void -_handler_chain_destroy(struct chain *c) { +_handler_chain_destroy(struct chain *chain) { - if (mtx_initialized(&c->mtx)) - LIBALIAS_LOCK_DESTROY(c); + if (rw_initialized(&chain->rw)) + LIBALIAS_LOCK_DESTROY(chain); } #else ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#7 (text+ko) ==== @@ -32,6 +32,10 @@ #ifndef _ALIAS_MOD_H_ #define _ALIAS_MOD_H_ +#include +#include +#include + /* Protocol handlers struct & function. */ /* Packet flow direction. */ @@ -76,13 +80,10 @@ }; #ifdef _KERNEL -// XXX - convert it to use queue(3) and rwlock(9) +// XXX - convert it to use queue(3) struct chain { void *chain; - struct mtx mtx; /* Lock guarding list. */ - int busy_count; /* Busy count for rw locks. */ - int want_write; - struct cv cv; + struct rwlock rw; }; #else // XXX - convert it to use queue(3) From owner-p4-projects@FreeBSD.ORG Tue Jul 4 17:40:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E44C416A4E0; Tue, 4 Jul 2006 17:40:43 +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 C01FB16A4DE for ; Tue, 4 Jul 2006 17:40:43 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6D40D43D49 for ; Tue, 4 Jul 2006 17:40:43 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64HehnQ070500 for ; Tue, 4 Jul 2006 17:40:43 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64Hehrh070497 for perforce@freebsd.org; Tue, 4 Jul 2006 17:40:43 GMT (envelope-from bushman@freebsd.org) Date: Tue, 4 Jul 2006 17:40:43 GMT Message-Id: <200607041740.k64Hehrh070497@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 100566 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 17:40:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=100566 Change 100566 by bushman@bushman_nss_ldap_cached on 2006/07/04 17:39:57 gethostby***() regression test finished - some issues with host aliases left, though. The test can be possibly extended by adding support for snapshot file for hostents received via gethostbyaddr(). Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.c#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.t#2 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#5 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.c#2 (text+ko) ==== @@ -30,6 +30,8 @@ #include #include +#include +#include #include #include #include @@ -40,11 +42,14 @@ #include #include "testutil.h" +#ifndef min +#define min(a,b) (((a)<(b))?(a):(b)) +#endif + enum test_methods { TEST_GETHOSTBYNAME2, TEST_GETHOSTBYADDR, TEST_GETHOSTBYNAME2_GETADDRINFO, - TEST_GETHOSTBYADDR_GETNAMEINFO, TEST_BUILD_SNAPSHOT }; @@ -183,28 +188,34 @@ c1 = ht1->h_aliases; c2 = ht2->h_aliases; - if ((ht1->h_aliases == NULL) || (ht2->h_aliases == NULL)) + if (((ht1->h_aliases == NULL) || (ht2->h_aliases == NULL)) && + (ht1->h_aliases != ht2->h_aliases)) goto errfin; - for (;*c1 && *c2; ++c1, ++c2) - if (strcmp(*c1, *c2) != 0) - goto errfin; + if ((c1 != NULL) && (c2 != NULL)) { + for (;*c1 && *c2; ++c1, ++c2) + if (strcmp(*c1, *c2) != 0) + goto errfin; if ((*c1 != NULL) || (*c2 != NULL)) goto errfin; + } c1 = ht1->h_addr_list; c2 = ht2->h_addr_list; - if ((ht1->h_addr_list == NULL) || (ht2->h_addr_list== NULL)) + if (((ht1->h_addr_list == NULL) || (ht2->h_addr_list== NULL)) && + (ht1->h_addr_list != ht2->h_addr_list)) goto errfin; - for (;*c1 && *c2; ++c1, ++c2) - if (memcmp(*c1, *c2, ht1->h_length) != 0) + if ((c1 != NULL) && (c2 != NULL)) { + for (;*c1 && *c2; ++c1, ++c2) + if (memcmp(*c1, *c2, ht1->h_length) != 0) + goto errfin; + + if ((*c1 != NULL) || (*c2 != NULL)) goto errfin; - - if ((*c1 != NULL) || (*c2 != NULL)) - goto errfin; + } return 0; @@ -218,6 +229,64 @@ return (-1); } +static int +check_addrinfo_for_name(struct addrinfo *ai, char const *name) +{ + struct addrinfo *ai2; + + for (ai2 = ai; ai2 != NULL; ai2 = ai2->ai_next) { + if (strcmp(ai2->ai_canonname, name) == 0) + return (0); + } + + return (-1); +} + +static int +check_addrinfo_for_addr(struct addrinfo *ai, char const *addr, + socklen_t addrlen, int af) +{ + struct addrinfo *ai2; + +/* char buffer[100]; + memset(buffer, 0, sizeof(buffer)); + + char *res = inet_ntop(af, addr, buffer, + sizeof(buffer)); + if (res != NULL) + printf("===he %s %s\n", buffer, ai->ai_canonname); + +*/ + for (ai2 = ai; ai2 != NULL; ai2 = ai2->ai_next) { + if (af != ai2->ai_family) + continue; + +/* res = inet_ntop(ai2->ai_family, (void *)&((struct sockaddr_in *)ai2->ai_addr)->sin_addr, buffer, + sizeof(buffer)); + if (res != NULL) + printf("===ai %s\n", buffer);*/ + + switch (af) { + case AF_INET: + if (memcmp(addr, + (void *)&((struct sockaddr_in *)ai2->ai_addr)->sin_addr, + min(addrlen, ai2->ai_addrlen)) == 0) + return (0); + break; + case AF_INET6: + if (memcmp(addr, + (void *)&((struct sockaddr_in6 *)ai2->ai_addr)->sin6_addr, + min(addrlen, ai2->ai_addrlen)) == 0) + return (0); + break; + default: + break; + } + } + + return (-1); +} + static int is_hostent_equal(struct hostent *he, struct addrinfo *ai) { @@ -225,10 +294,42 @@ char **cp; int rv; + if (debug) + printf("checking equality of he and ai\n"); + + rv = check_addrinfo_for_name(ai, he->h_name); + if (rv != 0) { + if (debug) + printf("not equal - he->h_name couldn't be found\n"); + + return (rv); + } + + /* getaddrinfo doesn't provide the aliases information */ /* for (cp = he->h_aliases; *cp; ++cp) { - for (ai2 = ai; ai2 != NULL; ai2 = ai2->ai_next) - if (strcmp( + rv = check_addrinfo_for_name(ai, *cp); + if (rv != 0) { + if (debug) + printf("not equal - one of he->h_aliases couldn't be found\n"); + + return (rv); + } }*/ + + for (cp = he->h_addr_list; *cp; ++cp) { + rv = check_addrinfo_for_addr(ai, *cp, he->h_length, + he->h_addrtype); + if (rv != 0) { + if (debug) + printf("not equal - one of he->h_addr_list couldn't be found\n"); + + return (rv); + } + } + + if (debug) + printf("equal\n"); + return (0); } @@ -323,7 +424,7 @@ if (result != NULL) { if (debug) printf("found\n"); - + rv = hostent_test_correctness(result, NULL); if (rv != 0) return (rv); @@ -553,6 +654,12 @@ result = gethostbyaddr(cp, he->h_length, he->h_addrtype); + if (result == NULL) { + if (debug) + printf("warning: reverse lookup failed\n"); + + continue; + } rv = hostent_test_correctness(result, NULL); if (rv != 0) return (rv); @@ -573,7 +680,8 @@ ai = NULL; memset(&hints, 0, sizeof(struct addrinfo)); - hints.ai_flags = af_type; + hints.ai_family = af_type; + hints.ai_flags = AI_CANONNAME; if (debug) printf("using getaddrinfo() to resolve %s\n", he->h_name); @@ -595,15 +703,152 @@ return (-1); } -// rv = + rv = is_hostent_equal(he, ai); + if (rv != 0) { + if (debug) + printf("not ok - addrinfo and hostent are not equal\n"); + return (-1); + } + } return (0); } +static void +usage(void) +{ + (void)fprintf(stderr, + "Usage: %s [-dna2] [-s ] -f \n", + getprogname()); + exit(1); +} + int main(int argc, char **argv) { + struct hostent_test_data td, td_snap; + char *snapshot_file, *hostlist_file; + int rv; + int c; + + if (argc < 2) + usage(); + + snapshot_file = NULL; + hostlist_file = NULL; + while ((c = getopt(argc, argv, "na2ds:f:")) != -1) + switch (c) { + case 'd': + debug++; + break; + case 'n': + method = TEST_GETHOSTBYNAME2; + break; + case 'a': + method = TEST_GETHOSTBYADDR; + break; + case '2': + method = TEST_GETHOSTBYNAME2_GETADDRINFO; + break; + case 's': + snapshot_file = strdup(optarg); + break; + case 'f': + hostlist_file = strdup(optarg); + break; + default: + usage(); + } + + TEST_DATA_INIT(hostent, &td, clone_hostent, free_hostent); + TEST_DATA_INIT(hostent, &td_snap, clone_hostent, free_hostent); + + if (hostlist_file == NULL) + usage(); + + if (access(hostlist_file, R_OK) != 0) { + if (debug) + printf("can't access the hostlist file %s\n", + hostlist_file); + + usage(); + } + + if (debug) + printf("building host lists from %s\n", hostlist_file); + rv = TEST_SNAPSHOT_FILE_READ(hostent, hostlist_file, &td, + hostent_read_hostlist_func); + if (rv != 0) + goto fin; + + if (snapshot_file != NULL) { + if (access(snapshot_file, W_OK | R_OK) != 0) { + if (errno == ENOENT) + method = TEST_BUILD_SNAPSHOT; + else { + if (debug) + printf("can't access the snapshot file %s\n", + snapshot_file); + + rv = -1; + goto fin; + } + } else { + if (method == TEST_BUILD_SNAPSHOT) { + rv = 0; + goto fin; + } + + TEST_SNAPSHOT_FILE_READ(hostent, snapshot_file, + &td_snap, hostent_read_snapshot_func); + } + } + + switch (method) { + case TEST_GETHOSTBYNAME2: + if (snapshot_file != NULL) + rv = DO_2PASS_TEST(hostent, &td, &td_snap, + compare_hostent, NULL); + break; + case TEST_GETHOSTBYADDR: + if (snapshot_file == NULL) + rv = DO_1PASS_TEST(hostent, &td, + hostent_test_gethostbyaddr, (void *)&td); + else + rv = DO_1PASS_TEST(hostent, &td_snap, + hostent_test_gethostbyaddr, (void *)&td_snap); + break; + case TEST_GETHOSTBYNAME2_GETADDRINFO: + if (snapshot_file == NULL) + rv = DO_1PASS_TEST(hostent, &td, + hostent_test_getaddrinfo_eq, (void *)&td); + else + rv = DO_1PASS_TEST(hostent, &td_snap, + hostent_test_getaddrinfo_eq, (void *)&td); + break; + case TEST_BUILD_SNAPSHOT: + if (snapshot_file != NULL) + rv = TEST_SNAPSHOT_FILE_WRITE(hostent, snapshot_file, &td, + sdump_hostent); + break; + default: + rv = 0; + break; + }; + +fin: + TEST_DATA_DESTROY(hostent, &td_snap); + TEST_DATA_DESTROY(hostent, &td); + free(hostlist_file); + free(snapshot_file); + return (rv); +} + + +/*int +main(int argc, char **argv) +{ struct hostent_test_data td; debug = 1; @@ -611,7 +856,7 @@ hostent_fill_gethostbyname2_data("../resolv/mach", &td); TEST_DATA_DESTROY(hostent, &td); return (0); -} +}*/ /*int main(int argc, char **argv) ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.t#2 (text+ko) ==== @@ -1,0 +1,29 @@ +#!/bin/sh +# $FreeBSD$ + +do_test() { + number=$1 + comment=$2 + opt=$3 + if ./$executable $opt; then + echo "ok $number - $comment" + else + echo "not ok $number - $comment" + fi +} + +cd `dirname $0` + +executable=`basename $0 .t` + +make $executable 2>&1 > /dev/null + +echo 1..8 +do_test 1 'gethostbyname2()' '-n -f ../resolv/mach' +do_test 2 'gethostbyaddr()' '-a -f ../resolv/mach' +do_test 3 'gethostbyname()-getaddrinfo()' '-2 -f ../resolv/mach' +do_test 5 'building snapshot, if needed' '-s snapshot_ht -f ../resolv/mach' +do_test 6 'gethostbyname2() snapshot' '-n -s snapshot_serv -f ../resolv/mach' +do_test 7 'gethostbyaddr() snapshot' '-a -s snapshot_serv -f ../resolv/mach' +do_test 8 'gethostbyname2()-getaddrinfo snapshot'\ + '-2 -s snapshot_serv -f ../resolv/mach' From owner-p4-projects@FreeBSD.ORG Tue Jul 4 19:19:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5D50216A4E6; Tue, 4 Jul 2006 19:19:49 +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 3A0AC16A4E0 for ; Tue, 4 Jul 2006 19:19:49 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 048C143D45 for ; Tue, 4 Jul 2006 19:19:49 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64JJmN8080037 for ; Tue, 4 Jul 2006 19:19:48 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64JJm3W080034 for perforce@freebsd.org; Tue, 4 Jul 2006 19:19:48 GMT (envelope-from clem1@FreeBSD.org) Date: Tue, 4 Jul 2006 19:19:48 GMT Message-Id: <200607041919.k64JJm3W080034@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100569 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 19:19:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=100569 Change 100569 by clem1@clem1_ipv6vulns on 2006/07/04 19:19:25 Fix prefix field size in prefix information icmp6 option message. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/pcs/pcs/packets/icmpv6.py#5 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/pcs/pcs/packets/icmpv6.py#5 (text+ko) ==== @@ -157,7 +157,7 @@ vlf = pcs.Field("valid_lifetime" + str(op), 32) plf = pcs.Field("preferred_lifetime" + str(op), 32) reserved2 = pcs.Field("reserved2" + str(op), 32) - prefix = pcs.Field("prefix" + str(op), 48) + prefix = pcs.Field("prefix" + str(op), 128) pcs.Packet.__add__(self, [ty, length, plength, l, a, reserved1, vlf, plf, reserved2, prefix]) # Redirected Header. elif type == 4: From owner-p4-projects@FreeBSD.ORG Tue Jul 4 19:28:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 090BD16A4DF; Tue, 4 Jul 2006 19:28:00 +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 D3A1216A4DD for ; Tue, 4 Jul 2006 19:27:59 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7DED243D46 for ; Tue, 4 Jul 2006 19:27:59 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64JRxWT080498 for ; Tue, 4 Jul 2006 19:27:59 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64JRxAX080495 for perforce@freebsd.org; Tue, 4 Jul 2006 19:27:59 GMT (envelope-from clem1@FreeBSD.org) Date: Tue, 4 Jul 2006 19:27:59 GMT Message-Id: <200607041927.k64JRxAX080495@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100570 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 19:28:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=100570 Change 100570 by clem1@clem1_ipv6vulns on 2006/07/04 19:27:45 Some improvements around icmpsicng.c (mainly for rtadvd and rtsol fuzzing) Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/ChangeLog#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/icmpsicng.c#3 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/ChangeLog#2 (text+ko) ==== @@ -1,8 +1,17 @@ +ISICNG (v0.0.2) 04/07/03, by Cl閙ent Lecigne (clem1@FreeBSD.org) + + o Some new feature added to icmpsicng.c + o new parameters related to packet size + -z minsize -Z maxsize -K multiple + o support of icmp option for neighbor discovery + related icmp message. + o bug fix around checksum calculation. + -ISICNG (v0.1) 06/07/03, by Cl閙ent Lecigne (clem1@FreeBSD.org) +ISICNG (v0.0.1) 03/07/03, by Cl閙ent Lecigne (clem1@FreeBSD.org) - - Port of all *sic.c to IPv6 - isicng.c supports IPv6 and extension headers fuzzing. - tcpsicng.c is used to exercise the `TCPv6 stack'. - udpsicng.c is used to exercise the `UDPv6 stack'. - icmpsicng.c is used to exercise the `ICMPv6 stack'. + o Port of all *sic.c to IPv6 + isicng.c supports IPv6 and extension headers fuzzing. + tcpsicng.c is used to exercise the `TCPv6 stack'. + udpsicng.c is used to exercise the `UDPv6 stack'. + icmpsicng.c is used to exercise the `ICMPv6 stack'. ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/icmpsicng.c#3 (text+ko) ==== @@ -26,12 +26,18 @@ main(int argc, char **argv) { int c; + u_int a; u_char *buf = NULL; u_short *payload = NULL; u_int payload_s = 0; struct libnet_icmpv6_hdr *icmp = NULL; + struct icmp_option_base_header { + u_int8_t type; + u_int8_t length; + } *icmp_opt; + /* libnet variables */ char errbuf[LIBNET_ERRBUF_SIZE]; libnet_t *l; @@ -41,8 +47,8 @@ struct libnet_ipv6_hdr *ip6; struct libnet_in6_addr ip_src, ip_dst; u_int32_t flow; - u_int8_t tc, hl, ver, *nx, eo; - + u_int8_t tc, hl = 0, ver, *nx, eo; + u_int32_t maxsize, minsize, multiple; struct libnet_ipv6_frag_hdr *ip6f = NULL; #ifdef LIBNET_BSDISH_OS @@ -74,13 +80,18 @@ float ND = 15; float RT = 15; float NI = 15; + float IcmpOpt = 0; + + maxsize = 1279; + minsize = 128; + multiple = 1; /* Not crypto strong randomness but we don't really care. And this * * gives us a way to determine the seed while the program is running * * if we need to repeat the results */ seed = getpid(); - while((c = getopt(argc, argv, "hd:i:s:r:m:k:D:S:p:V:F:I:T:R:E:U:M:O:N:W:vx:")) != EOF) + while((c = getopt(argc, argv, "hd:i:s:r:m:k:D:S:p:H:V:F:I:T:R:E:U:M:O:N:W:P:z:Z:K:vx:")) != EOF) { switch (c) { @@ -93,6 +104,9 @@ case 'R': Redir = atof(optarg); break; + case 'P': + IcmpOpt = atof(optarg); + break; case 'E': Echo = atof(optarg); break; @@ -111,10 +125,22 @@ case 'W': NI = atof(optarg); break; + case 'z': + minsize = atoi(optarg); + break; + case 'Z': + maxsize = atoi(optarg); + break; + case 'K': + multiple = atoi(optarg); + break; case 'h': usage(argv[0]); exit(0); break; + case 'H': + hl = atoi(optarg); + break; case 'd': dst_ok = 1; if (strncmp(optarg, "rand", sizeof("rand")) == 0) @@ -242,7 +268,7 @@ if (smac == NULL) memcpy(buf + 6, libnet_get_hwaddr(l), 6); else - memcpy(buf + 6, smac, 6); + memcpy(buf + 6, libnet_mac2eth(smac), 6); memcpy(buf + 12, "\x86\xdd", 2); eo = 0xe; #else /* !BSD */ @@ -266,7 +292,7 @@ BadIPVer /= 100; FragPct /= 100; ICMPCksm /= 100; - + IcmpOpt /= 100; TooBig /= 100; Redir = Redir / 100 + TooBig; Echo = Echo / 100 + Redir; @@ -287,7 +313,8 @@ off = eo; memset(buf + eo, 0x0, IP_MAXPACKET - eo); - hl = rand() & 0xff; + if (!hl) + hl = rand() & 0xff; flow = rand(); tc = rand() & 0xff; @@ -300,7 +327,9 @@ ver = rand() & 0xf; else ver = 6; - payload_s = rand() & 0x4ff; /* length of 1279 */ + do{ + payload_s = (rand() % maxsize) + minsize; /* length of 1279 */ + }while (payload_s % multiple); /* build ipv6 header */ ip6 = (struct libnet_ipv6_hdr *) (buf + off); @@ -328,6 +357,7 @@ ip6f->ip_frag = rand() & 0xffff; ip6f->ip_id = (rand() % 10) ? rand() : getpid(); off += 8; + payload_s -= 8; } icmp = (struct libnet_icmpv6_hdr *)(buf + off); @@ -339,6 +369,7 @@ icmp->icmp_code = (rand() % 2) ? 0 : rand() & 0xff; icmp->icmp_mtu = rand(); off += 8; + payload_s -= 8; } else if (what <= (RAND_MAX * Redir)) { @@ -354,6 +385,7 @@ } icmp->icmp_dst = randipv6(); off += 36; + payload_s -= 36; } else if (what <= (RAND_MAX * Echo)) @@ -362,6 +394,7 @@ icmp->icmp_code = (rand() % 2) ? 0 : rand() & 0xff; icmp->icmp_unused = rand(); /* seq + id */ off += 8; + payload_s -= 8; } else if (what <= (RAND_MAX * Unreach)) { @@ -369,6 +402,7 @@ icmp->icmp_code = (rand() % 2) ? rand() % 5 : rand() & 0xff; icmp->icmp_unused = (rand() % 2) ? 0 : rand(); off += 8; + payload_s -= 8; } else if (what <= (RAND_MAX * MLD)) { @@ -384,6 +418,7 @@ icmp->icmp_mcast2[c] = rand() & 0xff; } off += 24; + payload_s -= 24; } else if (what <= (RAND_MAX * ND)) { @@ -398,6 +433,7 @@ icmp->icmp_target2[c] = rand() & 0xff; } off += 24; + payload_s -= 24; } else if (what <= (RAND_MAX * RT)) { @@ -408,6 +444,7 @@ /* solicitation msg */ icmp->icmp_unused = (rand() % 2) ? rand() : 0; off += 8; + payload_s -= 8; } else { @@ -417,7 +454,8 @@ icmp->icmp_rlf = rand() & 0xffff; icmp->icmp_rct = rand(); icmp->icmp_rtt = rand(); - off += 14; + off += 16; + payload_s -= 16; } } else if (what <= (RAND_MAX * NI)) @@ -429,30 +467,44 @@ for (c = 0; c < 8; c++) icmp->icmp_nonce[c] = rand() & 0xff; off += 14; + payload_s -= 14; } else { icmp->icmp_type = rand() & 0xff; icmp->icmp_code = rand() & 0xff; off += 4; + payload_s -= 4; } - -#ifdef LIBNET_BSDISH_OS - if ((payload_s - off + 0xe + 40) > payload_s) - payload_s = 0; - else - payload_s -= (off - 0xe - 40); -#else /* !BSD */ - if ((payload_s - off) > payload_s) - payload_s = 0; - else - payload_s -= (off - 40); -#endif - - payload = (short int *)(buf + off); - for(cx = 0; cx <= (payload_s >> 1); cx+=1) - (u_short) payload[cx] = rand() & 0xffff; - + + if (rand() <= (RAND_MAX * IcmpOpt)) + { + while (payload_s >= 24) + { + icmp_opt = (struct icmp_option_base_header *)(buf + off); + icmp_opt->type = rand() % 5; + icmp_opt->length = (rand() % 2) + 1; + off += 2; + payload = (short int *)(buf + off); + for (a = 0; a < 6; a++) + payload[a] = rand() & 0xff; + if (icmp_opt->length > 1) + { + for (; (signed)a < 6 + ((icmp_opt->length - 1) * 8); a++) + payload[a] = rand() & 0xff; + } + off += ((8 * icmp_opt->length) - 2); + payload_s -= (8 * icmp_opt->length); + } + /* padding */ + payload = (short int *)(buf + off); + for (a = 0; a < payload_s; a++) + payload[a] = rand() & 0xff; + }else{ + payload = (short int *)(buf + off); + for(cx = 0; cx <= (payload_s >> 1); cx+=1) + (u_short) payload[cx] = rand() & 0xffff; + } if (rand() <= (RAND_MAX * ICMPCksm)) icmp->icmp_sum = rand() & 0xffff; @@ -494,7 +546,7 @@ - (tv.tv_usec - tv2.tv_usec) / 1000000.0; if ((datapushed / sec) >= max_pushed) usleep(10); /* 10 should give up our timeslice */ - usleep(500); + sleep(1); } @@ -514,17 +566,19 @@ void usage(u_char *name) { fprintf(stderr, - "usage: %s [-v] [-D] -s -d " + "usage: %s [-v] -s -d " #ifdef LIBNET_BSDISH_OS - "-i -D \n [-S ]" + " -i -D \n [-S ]" #else /* !BSD */ "[-i \n " #endif " [-r seed] [-m ]\n" " [-p ] [-k ] [-x ]\n" + " [-z ] [-Z ] [-K ]\n" "\n" " Percentage Opts: [-F frags] [-V Bad IP Version]\n" - " [-I Bad checksum>]\n" + " [-H hop limit] [-I Bad checksum]\n" + " [-P IcmpOpt]\n" " [-T Toobig] [-R Redirect] [-E Echo]\n" " [-U Unreach] [-M MLD] [-O Router]\n" " [-N Neighbor] [-W node info]\n" From owner-p4-projects@FreeBSD.ORG Tue Jul 4 19:57:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8DE5C16A4E1; Tue, 4 Jul 2006 19:57:36 +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 6713516A4DA for ; Tue, 4 Jul 2006 19:57:36 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D49443D45 for ; Tue, 4 Jul 2006 19:57:36 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64Jva8p086019 for ; Tue, 4 Jul 2006 19:57:36 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64JvZAW086016 for perforce@freebsd.org; Tue, 4 Jul 2006 19:57:35 GMT (envelope-from ryanb@FreeBSD.org) Date: Tue, 4 Jul 2006 19:57:35 GMT Message-Id: <200607041957.k64JvZAW086016@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 100571 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 19:57:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=100571 Change 100571 by ryanb@ryanb_yuki on 2006/07/04 19:57:31 Add a few mtx_assert()s for extra sanity checking goodness. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#10 edit .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#8 edit Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/dsp.c#10 (text+ko) ==== @@ -1356,11 +1356,14 @@ if (d == NULL) continue; + /* See the note in function docblock */ + mtx_assert(d->lock, MA_NOTOWNED); pcm_inprog(d, 1); pcm_lock(d); SLIST_FOREACH(sce, &d->channels, link) { ch = sce->channel; + mtx_assert(ch->lock, MA_NOTOWNED); CHN_LOCK(ch); if (ai->dev == -1) { if ((ch == i_dev->si_drv1) || ==== //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#8 (text+ko) ==== @@ -1171,6 +1171,8 @@ if (!d) continue; + /* See note in function's docblock */ + mtx_assert(d->lock, MA_NOTOWNED); /* Increment device's "operations in progress" */ pcm_inprog(d, 1); pcm_lock(d); @@ -1180,6 +1182,7 @@ SLIST_FOREACH(sce, &d->channels, link) { c = sce->channel; + mtx_assert(c->lock, MA_NOTOWNED); CHN_LOCK(c); if (c->flags & CHN_F_BUSY) si->openedaudio[j / intnbits] |= From owner-p4-projects@FreeBSD.ORG Tue Jul 4 20:14:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 375F916A4E6; Tue, 4 Jul 2006 20:14:21 +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 CC22416A4DE for ; Tue, 4 Jul 2006 20:14:20 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CA65D43D55 for ; Tue, 4 Jul 2006 20:13:58 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64KDv2x089495 for ; Tue, 4 Jul 2006 20:13:57 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64K5kQN088056 for perforce@freebsd.org; Tue, 4 Jul 2006 20:05:46 GMT (envelope-from jb@freebsd.org) Date: Tue, 4 Jul 2006 20:05:46 GMT Message-Id: <200607042005.k64K5kQN088056@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100573 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 20:14:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100573 Change 100573 by jb@jb_freebsd2 on 2006/07/04 20:05:07 IFsun4v_stable. This contains experimental scheduler code required to get signals working on sun4v and it is the basis for the performance work proposed to improve scalability for > 4 cpus. The side effect of this is that libpthread is no longer supported for the time being by the dtrace project because it depends on kse in the kernel. Note that the history of Solaris is that scheduler activations were removed in favour of a 1:1 threading model: "more scalable, improved semantics, simpler to maintain and extend" (see http://blogs.sun.com/roller/page/pgdh/20050511 for the history of multithreading in Solaris). Also refer to http://blogs.sun.com/roller/page/pgdh?entry=if_linux_is_faster_it for a philosophy that FreeBSD could follow. Affected files ... .. //depot/projects/dtrace/src/COPYRIGHT#2 integrate .. //depot/projects/dtrace/src/LOCKS#2 integrate .. //depot/projects/dtrace/src/Makefile#7 integrate .. //depot/projects/dtrace/src/Makefile.inc1#11 integrate .. //depot/projects/dtrace/src/ObsoleteFiles.inc#6 integrate .. //depot/projects/dtrace/src/bin/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/Makefile.inc#2 integrate .. //depot/projects/dtrace/src/bin/cat/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/cat/cat.1#2 integrate .. //depot/projects/dtrace/src/bin/cat/cat.c#2 integrate .. //depot/projects/dtrace/src/bin/chflags/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/chflags/chflags.1#2 integrate .. //depot/projects/dtrace/src/bin/chflags/chflags.c#2 integrate .. //depot/projects/dtrace/src/bin/chio/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/chio/chio.1#2 integrate .. //depot/projects/dtrace/src/bin/chio/chio.c#2 integrate .. //depot/projects/dtrace/src/bin/chio/defs.h#2 integrate .. //depot/projects/dtrace/src/bin/chio/pathnames.h#2 integrate .. //depot/projects/dtrace/src/bin/chmod/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/chmod/chmod.1#2 integrate .. //depot/projects/dtrace/src/bin/chmod/chmod.c#2 integrate .. //depot/projects/dtrace/src/bin/cp/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/cp/cp.1#2 integrate .. //depot/projects/dtrace/src/bin/cp/cp.c#2 integrate .. //depot/projects/dtrace/src/bin/cp/extern.h#2 integrate .. //depot/projects/dtrace/src/bin/cp/utils.c#2 integrate .. //depot/projects/dtrace/src/bin/csh/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/csh/USD.doc/csh.1#2 integrate .. //depot/projects/dtrace/src/bin/csh/USD.doc/csh.2#2 integrate .. //depot/projects/dtrace/src/bin/csh/USD.doc/csh.3#2 integrate .. //depot/projects/dtrace/src/bin/csh/USD.doc/csh.4#2 integrate .. //depot/projects/dtrace/src/bin/csh/USD.doc/csh.a#2 integrate .. //depot/projects/dtrace/src/bin/csh/USD.doc/csh.g#2 integrate .. //depot/projects/dtrace/src/bin/csh/USD.doc/tabs#2 integrate .. //depot/projects/dtrace/src/bin/csh/config.h#2 integrate .. //depot/projects/dtrace/src/bin/csh/config_p.h#2 integrate .. //depot/projects/dtrace/src/bin/csh/host.defs#2 integrate .. //depot/projects/dtrace/src/bin/date/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/date/date.1#2 integrate .. //depot/projects/dtrace/src/bin/date/date.c#2 integrate .. //depot/projects/dtrace/src/bin/date/extern.h#2 integrate .. //depot/projects/dtrace/src/bin/date/netdate.c#2 integrate .. //depot/projects/dtrace/src/bin/date/vary.c#2 integrate .. //depot/projects/dtrace/src/bin/date/vary.h#2 integrate .. //depot/projects/dtrace/src/bin/dd/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/dd/args.c#2 integrate .. //depot/projects/dtrace/src/bin/dd/conv.c#2 integrate .. //depot/projects/dtrace/src/bin/dd/conv_tab.c#2 integrate .. //depot/projects/dtrace/src/bin/dd/dd.1#2 integrate .. //depot/projects/dtrace/src/bin/dd/dd.c#2 integrate .. //depot/projects/dtrace/src/bin/dd/dd.h#2 integrate .. //depot/projects/dtrace/src/bin/dd/extern.h#2 integrate .. //depot/projects/dtrace/src/bin/dd/gen.c#2 integrate .. //depot/projects/dtrace/src/bin/dd/misc.c#2 integrate .. //depot/projects/dtrace/src/bin/dd/position.c#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.ascii#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.ebcdic#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.ibm#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.lcase#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.oldascii#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.oldebcdic#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.oldibm#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.pareven#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.parnone#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.parodd#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.parset#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.swab#2 integrate .. //depot/projects/dtrace/src/bin/dd/ref.ucase#2 integrate .. //depot/projects/dtrace/src/bin/df/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/df/df.1#2 integrate .. //depot/projects/dtrace/src/bin/df/df.c#2 integrate .. //depot/projects/dtrace/src/bin/domainname/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/domainname/domainname.1#2 integrate .. //depot/projects/dtrace/src/bin/domainname/domainname.c#2 integrate .. //depot/projects/dtrace/src/bin/echo/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/echo/echo.1#2 integrate .. //depot/projects/dtrace/src/bin/echo/echo.c#2 integrate .. //depot/projects/dtrace/src/bin/ed/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/ed/POSIX#2 integrate .. //depot/projects/dtrace/src/bin/ed/README#2 integrate .. //depot/projects/dtrace/src/bin/ed/buf.c#2 integrate .. //depot/projects/dtrace/src/bin/ed/cbc.c#2 integrate .. //depot/projects/dtrace/src/bin/ed/ed.1#2 integrate .. //depot/projects/dtrace/src/bin/ed/ed.h#2 integrate .. //depot/projects/dtrace/src/bin/ed/glbl.c#2 integrate .. //depot/projects/dtrace/src/bin/ed/io.c#2 integrate .. //depot/projects/dtrace/src/bin/ed/main.c#2 integrate .. //depot/projects/dtrace/src/bin/ed/re.c#2 integrate .. //depot/projects/dtrace/src/bin/ed/sub.c#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/=.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/README#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/TODO#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/a.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/a.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/a.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/a1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/a2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/addr.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/addr.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/addr.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/addr1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/addr2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/ascii.d.uu#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/ascii.r.uu#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/ascii.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/bang1.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/bang1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/bang1.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/bang1.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/bang2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/c.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/c.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/c.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/c1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/c2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/ckscripts.sh#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/d.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/d.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/d.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/d.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e1.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e1.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e1.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e2.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e2.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e2.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e3.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e3.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e3.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e3.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e4.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e4.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/e4.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/f1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/f2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g1.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g1.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g1.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g2.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g2.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g2.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g3.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g3.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g3.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g3.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g4.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g4.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g4.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g5.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g5.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/g5.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/h.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/i.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/i.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/i.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/i1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/i2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/i3.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/j.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/j.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/j.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/k.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/k.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/k.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/k1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/k2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/k3.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/k4.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/l.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/l.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/l.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/m.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/m.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/m.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/m.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/mkscripts.sh#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/n.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/n.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/n.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/nl.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/nl1.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/nl1.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/nl1.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/nl2.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/nl2.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/nl2.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/p.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/p.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/p.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/q.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/q.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/q.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/q1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r1.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r1.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r1.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r2.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r2.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r2.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r3.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r3.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/r3.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s1.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s1.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s1.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s10.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s2.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s2.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s2.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s3.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s3.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s3.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s3.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s4.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s5.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s6.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s7.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s8.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/s9.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t1.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t1.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t1.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t2.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t2.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/t2.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/u.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/u.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/u.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/u.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/v.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/v.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/v.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/w.d#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/w.r#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/w.t#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/w1.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/w2.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/w3.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/x.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/test/z.err#2 integrate .. //depot/projects/dtrace/src/bin/ed/undo.c#2 integrate .. //depot/projects/dtrace/src/bin/expr/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/expr/expr.1#2 integrate .. //depot/projects/dtrace/src/bin/expr/expr.y#2 integrate .. //depot/projects/dtrace/src/bin/getfacl/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/getfacl/getfacl.1#2 integrate .. //depot/projects/dtrace/src/bin/getfacl/getfacl.c#2 integrate .. //depot/projects/dtrace/src/bin/hostname/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/hostname/hostname.1#2 integrate .. //depot/projects/dtrace/src/bin/hostname/hostname.c#2 integrate .. //depot/projects/dtrace/src/bin/kenv/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/kenv/kenv.1#2 integrate .. //depot/projects/dtrace/src/bin/kenv/kenv.c#2 integrate .. //depot/projects/dtrace/src/bin/kill/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/kill/kill.1#2 integrate .. //depot/projects/dtrace/src/bin/kill/kill.c#2 integrate .. //depot/projects/dtrace/src/bin/ln/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/ln/ln.1#2 integrate .. //depot/projects/dtrace/src/bin/ln/ln.c#2 integrate .. //depot/projects/dtrace/src/bin/ln/symlink.7#2 integrate .. //depot/projects/dtrace/src/bin/ls/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/ls/cmp.c#2 integrate .. //depot/projects/dtrace/src/bin/ls/extern.h#2 integrate .. //depot/projects/dtrace/src/bin/ls/ls.1#2 integrate .. //depot/projects/dtrace/src/bin/ls/ls.c#2 integrate .. //depot/projects/dtrace/src/bin/ls/ls.h#2 integrate .. //depot/projects/dtrace/src/bin/ls/print.c#2 integrate .. //depot/projects/dtrace/src/bin/ls/util.c#2 integrate .. //depot/projects/dtrace/src/bin/mkdir/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/mkdir/mkdir.1#2 integrate .. //depot/projects/dtrace/src/bin/mkdir/mkdir.c#2 integrate .. //depot/projects/dtrace/src/bin/mv/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/mv/mv.1#2 integrate .. //depot/projects/dtrace/src/bin/mv/mv.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/pax/ar_io.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/ar_subs.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/buf_subs.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/cache.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/cache.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/cpio.1#2 integrate .. //depot/projects/dtrace/src/bin/pax/cpio.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/cpio.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/extern.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/file_subs.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/ftree.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/ftree.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/gen_subs.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/getoldopt.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/options.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/options.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/pat_rep.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/pat_rep.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/pax.1#3 integrate .. //depot/projects/dtrace/src/bin/pax/pax.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/pax.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/sel_subs.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/sel_subs.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/tables.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/tables.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/tar.1#2 integrate .. //depot/projects/dtrace/src/bin/pax/tar.c#2 integrate .. //depot/projects/dtrace/src/bin/pax/tar.h#2 integrate .. //depot/projects/dtrace/src/bin/pax/tty_subs.c#2 integrate .. //depot/projects/dtrace/src/bin/ps/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/ps/extern.h#2 integrate .. //depot/projects/dtrace/src/bin/ps/fmt.c#2 integrate .. //depot/projects/dtrace/src/bin/ps/keyword.c#2 integrate .. //depot/projects/dtrace/src/bin/ps/nlist.c#2 integrate .. //depot/projects/dtrace/src/bin/ps/print.c#2 integrate .. //depot/projects/dtrace/src/bin/ps/ps.1#2 integrate .. //depot/projects/dtrace/src/bin/ps/ps.c#2 integrate .. //depot/projects/dtrace/src/bin/ps/ps.h#2 integrate .. //depot/projects/dtrace/src/bin/pwd/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/pwd/pwd.1#2 integrate .. //depot/projects/dtrace/src/bin/pwd/pwd.c#2 integrate .. //depot/projects/dtrace/src/bin/rcp/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/rcp/extern.h#2 integrate .. //depot/projects/dtrace/src/bin/rcp/rcp.1#2 integrate .. //depot/projects/dtrace/src/bin/rcp/rcp.c#2 integrate .. //depot/projects/dtrace/src/bin/rcp/util.c#2 integrate .. //depot/projects/dtrace/src/bin/realpath/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/realpath/realpath.1#2 integrate .. //depot/projects/dtrace/src/bin/realpath/realpath.c#2 integrate .. //depot/projects/dtrace/src/bin/rm/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/rm/rm.1#2 integrate .. //depot/projects/dtrace/src/bin/rm/rm.c#3 integrate .. //depot/projects/dtrace/src/bin/rmail/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/rmdir/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/rmdir/rmdir.1#2 integrate .. //depot/projects/dtrace/src/bin/rmdir/rmdir.c#2 integrate .. //depot/projects/dtrace/src/bin/setfacl/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/setfacl/file.c#2 integrate .. //depot/projects/dtrace/src/bin/setfacl/mask.c#2 integrate .. //depot/projects/dtrace/src/bin/setfacl/merge.c#2 integrate .. //depot/projects/dtrace/src/bin/setfacl/remove.c#2 integrate .. //depot/projects/dtrace/src/bin/setfacl/setfacl.h#2 integrate .. //depot/projects/dtrace/src/bin/setfacl/util.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/Makefile#3 integrate .. //depot/projects/dtrace/src/bin/sh/TOUR#3 integrate .. //depot/projects/dtrace/src/bin/sh/alias.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/alias.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/arith.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/arith.y#2 integrate .. //depot/projects/dtrace/src/bin/sh/arith_lex.l#2 integrate .. //depot/projects/dtrace/src/bin/sh/bltin/bltin.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/bltin/echo.1#2 integrate .. //depot/projects/dtrace/src/bin/sh/bltin/echo.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/builtins.def#2 integrate .. //depot/projects/dtrace/src/bin/sh/cd.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/error.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/error.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/eval.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/exec.c#3 integrate .. //depot/projects/dtrace/src/bin/sh/exec.h#3 integrate .. //depot/projects/dtrace/src/bin/sh/expand.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/expand.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/funcs/cmv#2 integrate .. //depot/projects/dtrace/src/bin/sh/funcs/dirs#2 integrate .. //depot/projects/dtrace/src/bin/sh/funcs/kill#2 integrate .. //depot/projects/dtrace/src/bin/sh/funcs/login#2 integrate .. //depot/projects/dtrace/src/bin/sh/funcs/newgrp#2 integrate .. //depot/projects/dtrace/src/bin/sh/funcs/popd#2 integrate .. //depot/projects/dtrace/src/bin/sh/funcs/pushd#2 integrate .. //depot/projects/dtrace/src/bin/sh/funcs/suspend#2 integrate .. //depot/projects/dtrace/src/bin/sh/histedit.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/init.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/input.c#3 integrate .. //depot/projects/dtrace/src/bin/sh/input.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/jobs.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/jobs.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/mail.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/mail.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/main.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/main.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/memalloc.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/memalloc.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/miscbltin.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/mkbuiltins#2 integrate .. //depot/projects/dtrace/src/bin/sh/mkinit.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/mknodes.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/mksyntax.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/mktokens#2 integrate .. //depot/projects/dtrace/src/bin/sh/myhistedit.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/mystring.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/mystring.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/nodes.c.pat#2 integrate .. //depot/projects/dtrace/src/bin/sh/nodetypes#2 integrate .. //depot/projects/dtrace/src/bin/sh/options.c#3 integrate .. //depot/projects/dtrace/src/bin/sh/options.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/output.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/output.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/parser.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/parser.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/redir.c#2 integrate .. //depot/projects/dtrace/src/bin/sh/redir.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/shell.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/show.c#3 integrate .. //depot/projects/dtrace/src/bin/sh/show.h#2 integrate .. //depot/projects/dtrace/src/bin/sh/trap.c#3 integrate .. //depot/projects/dtrace/src/bin/sh/trap.h#2 integrate .. //depot/projects/dtrace/src/bin/sleep/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/sleep/sleep.1#2 integrate .. //depot/projects/dtrace/src/bin/sleep/sleep.c#2 integrate .. //depot/projects/dtrace/src/bin/stty/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/stty/cchar.c#2 integrate .. //depot/projects/dtrace/src/bin/stty/extern.h#2 integrate .. //depot/projects/dtrace/src/bin/stty/gfmt.c#2 integrate .. //depot/projects/dtrace/src/bin/stty/key.c#2 integrate .. //depot/projects/dtrace/src/bin/stty/modes.c#2 integrate .. //depot/projects/dtrace/src/bin/stty/print.c#2 integrate .. //depot/projects/dtrace/src/bin/stty/stty.1#2 integrate .. //depot/projects/dtrace/src/bin/stty/stty.c#2 integrate .. //depot/projects/dtrace/src/bin/stty/stty.h#2 integrate .. //depot/projects/dtrace/src/bin/stty/util.c#2 integrate .. //depot/projects/dtrace/src/bin/sync/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/sync/sync.8#2 integrate .. //depot/projects/dtrace/src/bin/sync/sync.c#2 integrate .. //depot/projects/dtrace/src/bin/test/Makefile#2 integrate .. //depot/projects/dtrace/src/bin/test/TEST.README#2 integrate .. //depot/projects/dtrace/src/bin/test/TEST.csh#2 integrate .. //depot/projects/dtrace/src/bin/test/TEST.sh#2 integrate .. //depot/projects/dtrace/src/bin/test/test.1#2 integrate .. //depot/projects/dtrace/src/bin/test/test.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/AUTHORS#2 integrate .. //depot/projects/dtrace/src/contrib/amd/BUGS#2 integrate .. //depot/projects/dtrace/src/contrib/amd/COPYING#2 integrate .. //depot/projects/dtrace/src/contrib/amd/ChangeLog#2 integrate .. //depot/projects/dtrace/src/contrib/amd/FREEBSD-Xlist#2 integrate .. //depot/projects/dtrace/src/contrib/amd/FREEBSD-upgrade#2 integrate .. //depot/projects/dtrace/src/contrib/amd/INSTALL#2 integrate .. //depot/projects/dtrace/src/contrib/amd/MIRRORS.html#2 integrate .. //depot/projects/dtrace/src/contrib/amd/MIRRORS.txt#2 integrate .. //depot/projects/dtrace/src/contrib/amd/NEWS#2 integrate .. //depot/projects/dtrace/src/contrib/amd/README#2 integrate .. //depot/projects/dtrace/src/contrib/amd/README.ldap#2 integrate .. //depot/projects/dtrace/src/contrib/amd/README.y2k#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/am_ops.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amd.8#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amd.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amd.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_auto.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_direct.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_error.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_host.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_inherit.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_link.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_linkx.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_nfsl.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_nfsx.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_program.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_root.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_toplvl.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amfs_union.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amq_subr.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/amq_svc.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/autil.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/clock.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/conf.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/conf_parse.y#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/conf_tok.l#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/get_args.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/info_file.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/info_hesiod.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/info_ldap.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/info_ndbm.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/info_nis.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/info_nisplus.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/info_passwd.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/info_union.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/map.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/mapc.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/mntfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/nfs_prot_svc.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/nfs_start.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/nfs_subr.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_TEMPLATE.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_cachefs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_cdfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_efs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_lofs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_mfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_nfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_nfs3.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_nullfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_pcfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_tfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_tmpfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_ufs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_umapfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_unionfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/ops_xfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/opts.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/restart.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/rpc_fwd.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/sched.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/srvr_amfs_auto.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amd/srvr_nfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amq/amq.8#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amq/amq.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amq/amq.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amq/amq_clnt.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amq/amq_xdr.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amq/pawd.1#2 integrate .. //depot/projects/dtrace/src/contrib/amd/amq/pawd.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/aux_conf.h.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/bootstrap#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/checkmount/checkmount_bsd44.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/fh_dref/fh_dref_freebsd22.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/mtab/mtab_bsd.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/nfs_prot/nfs_prot_freebsd2.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/nfs_prot/nfs_prot_freebsd3.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/sa_dref/sa_dref_bsd44.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/transp/transp_sockets.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/trap/trap_default.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/conf/umount/umount_bsd44.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/doc/am-utils.texi#2 integrate .. //depot/projects/dtrace/src/contrib/amd/doc/texinfo.tex#2 integrate .. //depot/projects/dtrace/src/contrib/amd/doc/version.texi#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fixmount/fixmount.8#3 integrate .. //depot/projects/dtrace/src/contrib/amd/fixmount/fixmount.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsi_analyze.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsi_data.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsi_dict.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsi_gram.y#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsi_lex.l#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsi_util.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsinfo.8#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsinfo.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/fsinfo.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/wr_atab.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/wr_bparam.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/wr_dumpset.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/wr_exportfs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/fsinfo/wr_fstab.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/hlfsd/hlfsd.8#2 integrate .. //depot/projects/dtrace/src/contrib/amd/hlfsd/hlfsd.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/hlfsd/hlfsd.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/hlfsd/homedir.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/hlfsd/nfs_prot_svc.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/hlfsd/stubs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/include/am_compat.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/include/am_defs.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/include/am_utils.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/include/am_xdr_func.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/include/amq_defs.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/include/mount_headers1.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/include/mount_headers2.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/ldap-id.ms#2 integrate .. //depot/projects/dtrace/src/contrib/amd/ldap-id.txt#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/alloca.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/amu.h#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/hasmntopt.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/misc_rpc.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/mount_fs.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/mtab.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/nfs_prot_xdr.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/strerror.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/util.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/wire.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/xdr_func.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/libamu/xutil.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/GNUmakefile#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/amdgrep#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/amindent#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/autopat#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/chop-aclocal.pl#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/copy-if-newbig#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/macros/HEADER#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/macros/TRAILER#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/mk-aclocal#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/mkconf#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/rmtspc#2 integrate .. //depot/projects/dtrace/src/contrib/amd/m4/update_build_version#2 integrate .. //depot/projects/dtrace/src/contrib/amd/mk-amd-map/mk-amd-map.8#2 integrate .. //depot/projects/dtrace/src/contrib/amd/mk-amd-map/mk-amd-map.c#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/Makefile.am#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/am-eject.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/amd.conf-sample#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/amd.conf.5#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/amd2ldif.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/amd2sun.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/automount2amd.8#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/automount2amd.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/ctl-amd.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/ctl-hlfsd.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/expn.1#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/expn.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/fix-amd-map.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/fixrmtab.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/redhat-ctl-amd.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/wait4amd.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/scripts/wait4amd2die.in#2 integrate .. //depot/projects/dtrace/src/contrib/amd/tasks#2 integrate .. //depot/projects/dtrace/src/contrib/amd/wire-test/wire-test.8#2 integrate .. //depot/projects/dtrace/src/contrib/amd/wire-test/wire-test.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/AUTHORS#2 integrate .. //depot/projects/dtrace/src/contrib/bc/ChangeLog#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Examples/ckbook.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Examples/pi.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Examples/primes.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Examples/twins.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/FAQ#2 integrate .. //depot/projects/dtrace/src/contrib/bc/FREEBSD-upgrade#2 integrate .. //depot/projects/dtrace/src/contrib/bc/INSTALL#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Makefile.am#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bc/NEWS#2 integrate .. //depot/projects/dtrace/src/contrib/bc/README#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/BUG.bc#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/array.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/arrayp.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/aryprm.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/atan.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/checklib.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/div.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/exp.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/fact.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/jn.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/ln.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/mul.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/raise.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/signum#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/sine.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/sqrt.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/sqrt1.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/sqrt2.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/testfn.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/Test/timetest#2 integrate .. //depot/projects/dtrace/src/contrib/bc/acconfig.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/aclocal.m4#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/Makefile.am#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/bc.y#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/bcdefs.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/const.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/execute.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/fix-libmath_h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/global.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/global.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/libmath.b#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/libmath.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/load.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/main.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/proto.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/sbc.y#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/scan.l#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/storage.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/bc/util.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/config.h.in#2 integrate .. //depot/projects/dtrace/src/contrib/bc/configure#2 integrate .. //depot/projects/dtrace/src/contrib/bc/configure.in#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/Makefile.am#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/array.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/dc-proto.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/dc-regdef.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/dc.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/dc.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/eval.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/misc.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/numeric.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/stack.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/dc/string.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/doc/Makefile.am#2 integrate .. //depot/projects/dtrace/src/contrib/bc/doc/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bc/doc/bc.1#2 integrate .. //depot/projects/dtrace/src/contrib/bc/doc/bc.texi#2 integrate .. //depot/projects/dtrace/src/contrib/bc/doc/dc.1#2 integrate .. //depot/projects/dtrace/src/contrib/bc/doc/dc.texi#2 integrate .. //depot/projects/dtrace/src/contrib/bc/h/number.h#2 integrate .. //depot/projects/dtrace/src/contrib/bc/install-sh#2 integrate .. //depot/projects/dtrace/src/contrib/bc/lib/Makefile.am#2 integrate .. //depot/projects/dtrace/src/contrib/bc/lib/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bc/lib/number.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/lib/testmul.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/lib/vfprintf.c#2 integrate .. //depot/projects/dtrace/src/contrib/bc/missing#2 integrate .. //depot/projects/dtrace/src/contrib/bc/mkinstalldirs#2 integrate .. //depot/projects/dtrace/src/contrib/bc/stamp-h.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/CHANGES#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/COPYRIGHT#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/FAQ#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/FAQ.xml#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/FREEBSD-Upgrade#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/FREEBSD-Xlist#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/README#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/acconfig.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/check-tool.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/check-tool.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/named-checkconf.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/named-checkconf.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/named-checkconf.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/named-checkconf.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/named-checkzone.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/named-checkzone.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/named-checkzone.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/check/named-checkzone.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/dig.1#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/dig.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/dig.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/dig.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/dighost.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/host.1#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/host.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/host.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/host.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/include/dig/dig.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/nslookup.1#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/nslookup.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/nslookup.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dig/nslookup.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssec-keygen.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssec-keygen.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssec-keygen.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssec-keygen.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssec-signzone.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssec-signzone.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssec-signzone.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssec-signzone.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssectool.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/dnssec/dnssectool.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/aclconf.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/builtin.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/client.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/config.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/control.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/controlconf.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/aclconf.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/builtin.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/client.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/config.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/control.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/globals.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/interfacemgr.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/listenlist.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/log.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/logconf.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/lwaddr.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/lwdclient.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/lwresd.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/lwsearch.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/main.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/notify.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/ns_smf_globals.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/query.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/server.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/sortlist.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/tkeyconf.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/tsigconf.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/types.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/update.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/xfrout.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/include/named/zoneconf.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/interfacemgr.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/listenlist.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/log.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/logconf.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwaddr.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwdclient.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwderror.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwdgabn.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwdgnba.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwdgrbn.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwdnoop.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwresd.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwresd.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwresd.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwresd.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/lwsearch.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/main.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/named.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/named.conf.5#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/named.conf.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/named.conf.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/named.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/named.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/notify.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/query.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/server.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/sortlist.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/tkeyconf.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/tsigconf.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/unix/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/unix/include/named/os.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/unix/os.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/update.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/xfrout.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/named/zoneconf.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/nsupdate/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/nsupdate/nsupdate.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/nsupdate/nsupdate.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/nsupdate/nsupdate.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/nsupdate/nsupdate.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/include/rndc/os.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc-confgen.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc-confgen.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc-confgen.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc-confgen.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc.8#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc.conf#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc.conf.5#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc.conf.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc.conf.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc.docbook#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/rndc.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/unix/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/unix/os.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/util.c#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/bin/rndc/util.h#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/config.guess#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/config.sub#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/config.threads.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/configure.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM-book.xml#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch01.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch02.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch03.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch04.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch05.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch06.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch07.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch08.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.ch09.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.html#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Bv9ARM.pdf#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/arm/README-SGML#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-baba-dnsext-acl-reqts-01.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-daigle-napstr-04.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-danisch-dns-rr-smtp-03.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-dnsext-opcode-discover-02.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-durand-dnsop-dynreverse-00.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-2929bis-01.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-axfr-clarify-05.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dhcid-rr-09.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dns-name-p-s-00.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-2535typecode-change-06.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-bis-updates-01.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-experiments-01.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-online-signing-00.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-opt-in-07.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-trans-02.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-ecc-key-07.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-insensitive-06.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-interop3597-02.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-keyrr-key-signing-flag-12.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-mdns-43.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-nsec3-02.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2536bis-dsa-06.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2538bis-04.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2539bis-dhk-06.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-signed-nonexistence-requirements-01.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-tkey-renewal-mode-05.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-trustupdate-threshold-00.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-trustupdate-timers-01.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-tsig-sha-04.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsext-wcard-clarify-08.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-bad-dns-res-04.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-dnssec-operational-practices-04.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-inaddr-required-07.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-configuration-06.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-issues-11.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-transport-guidelines-01.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-key-rollover-requirements-02.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-respsize-02.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-dnsop-serverid-04.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-enum-e164-gstn-np-05.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-ipv6-node-requirements-08.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ietf-secsh-dns-05.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-ihren-dnsext-threshold-validation-00.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-kato-dnsop-local-zones-00.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/draft-park-ipv6-extensions-dns-pnp-00.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/draft/update#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/Makefile.in#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/dnssec#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/format-options.pl#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/ipv6#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/migration#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/migration-4to9#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/options#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/rfc-compliance#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/roadmap#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/misc/sdb#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/index#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1032.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1033.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1034.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1035.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1101.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1122.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1123.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1183.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1348.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1535.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1536.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1537.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1591.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1611.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1612.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1706.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1712.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1750.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1876.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1886.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1982.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1995.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc1996.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2052.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2104.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2119.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2133.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2136.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2137.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2163.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2168.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2181.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2230.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2308.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2317.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2373.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2374.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2375.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2418.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2535.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2536.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2537.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2538.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2539.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2540.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2541.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2553.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2671.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2672.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2673.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2782.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2825.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2826.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2845.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2874.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2915.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2929.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2930.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc2931.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3007.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3008.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3071.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3090.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3110.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3123.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3152.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3197.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3225.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3226.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3258.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3363.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3364.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3425.txt#2 integrate .. //depot/projects/dtrace/src/contrib/bind9/doc/rfc/rfc3445.txt#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jul 4 21:59:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F2EC16A4E1; Tue, 4 Jul 2006 21:59:25 +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 C5AFB16A4DE for ; Tue, 4 Jul 2006 21:59:24 +0000 (UTC) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8BA1A43D5F for ; Tue, 4 Jul 2006 21:59:13 +0000 (GMT) (envelope-from ryanb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k64LxDHV010169 for ; Tue, 4 Jul 2006 21:59:13 GMT (envelope-from ryanb@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k64Lx84x010166 for perforce@freebsd.org; Tue, 4 Jul 2006 21:59:08 GMT (envelope-from ryanb@FreeBSD.org) Date: Tue, 4 Jul 2006 21:59:08 GMT Message-Id: <200607042159.k64Lx84x010166@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ryanb@FreeBSD.org using -f From: Ryan Beasley To: Perforce Change Reviews Cc: Subject: PERFORCE change 100577 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Jul 2006 21:59:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=100577 Change 100577 by ryanb@ryanb_yuki on 2006/07/04 21:58:59 IFC. Affected files ... .. //depot/projects/soc2006/rbeasley_sound/sys/Makefile#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/fpu.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/machdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/pmap.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/trap.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/conf/GENERIC#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/conf/NOTES#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/include/md_var.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_dummy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_syscall.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_sysent.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/arm/elf_trampoline.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/arm/locore.S#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/files.at91#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/kb920x_machdep.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/arm/sa11x0/uart_cpu_sa1110.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/boot/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/bsm/audit_kevents.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/bsm/audit_record.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/cam/cam_xpt.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linprocfs/linprocfs.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linux/linux_misc.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/linux/linux_util.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/ndis/kern_ndis.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/ndis/subr_ndis.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/svr4/svr4_ipc.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/svr4/svr4_misc.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/svr4/svr4_proto.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/svr4/svr4_syscall.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/svr4/svr4_syscallnames.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/svr4/svr4_sysent.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/compat/svr4/syscalls.master#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/Makefile.arm#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/NOTES#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/files#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/files.amd64#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/files.i386#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/files.ia64#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/kern.mk#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/kern.post.mk#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/kern.pre.mk#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/kmod.mk#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/conf/options#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ath/if_ath.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ath/if_athvar.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bge/if_bge.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bge/if_bgereg.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/digi/digi.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/isp.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/isp_pci.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/ispmbox.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/ispreg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/isp/ispvar.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mfi/mfi.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mfi/mfi_disk.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mfi/mfireg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mfi/mfivar.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/ciphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/nsgphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/rgephy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt.c#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt.h#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_cam.c#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/mpt/mpt_pci.c#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/nfe/if_nfe.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/dev/puc/puc.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/puc/puc_pccard.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/puc/puc_pci.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/puc/pucdata.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/re/if_re.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sio/sio.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/midi/midi.c#4 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/midi/sequencer.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pci/cmi.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pci/es137x.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pci/ich.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pci/via8233.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/feeder_rate.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/sound.c#9 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/usb/if_ural.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/usb/uhid.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/usb/umodem.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/usb/uplcom.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/usb/usbdevs#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/usb/uscanner.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/usb/uvisor.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/dev/wl/if_wl.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/fs/pseudofs/pseudofs_vnops.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/geom/geom_dev.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/geom/geom_gpt.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/conf/GENERIC#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/conf/NOTES#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/conf/XBOX#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/i386/identcpu.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/i386/pmap.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/i386/trap.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/include/specialreg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/linux/linux_dummy.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/linux/linux_proto.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/linux/linux_syscall.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/linux/linux_sysent.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/i386/linux/syscalls.master#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/conf/GENERIC#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/disasm/disasm.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/disasm/disasm_decode.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/disasm/disasm_extract.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/disasm/disasm_format.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/disasm/disasm_int.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/ia64/machdep.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/ia64/pmap.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/ia64/trap.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/ia64/include/md_var.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/kern_descrip.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/kern_fork.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/kern_ktrace.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/kern_linker.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/kern_module.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/kern_thread.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/link_elf.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/link_elf_obj.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/sched_4bsd.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/sched_core.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/subr_bus.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/subr_firmware.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/subr_kdb.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/syscalls.master#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/sysv_sem.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/uipc_socket.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/uipc_syscalls.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/uipc_usrreq.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/vfs_init.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/vfs_mount.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/vfs_subr.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/kern/vfs_vnops.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/modules/Makefile#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/modules/netgraph/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/modules/nfe/Makefile#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/modules/streams/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/modules/svr4/Makefile#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/bpf.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_atmsubr.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_bridge.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_clone.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_enc.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_gif.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_stf.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_tun.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_types.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_var.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net/if_vlan.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/net80211/ieee80211_freebsd.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netgraph/ng_tag.c#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/netgraph/ng_tag.h#1 branch .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/if_ether.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/in_pcb.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/ip_divert.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/ip_fw2.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/ip_output.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/libalias/libalias.3#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/tcp_input.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/tcp_seq.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/tcp_syncache.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/tcp_usrreq.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet/tcp_var.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet6/in6.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet6/in6_cksum.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet6/in6_pcb.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet6/in6_var.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet6/ipsec.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netinet6/raw_ip6.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netipsec/ipsec.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netipsec/ipsec_input.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netipsec/ipsec_output.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/netipsec/xform_ipip.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/nfsclient/nfs_diskless.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/nfsserver/nfs_srvcache.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/nfsserver/nfsrvcache.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/pc98/conf/GENERIC#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/pci/agp_i810.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/pci/if_rlreg.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/powerpc/conf/GENERIC#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/security/audit/audit.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/security/audit/audit_arg.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sparc64/conf/GENERIC#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sys/gpt.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sys/linker.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sys/rwlock.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sys/sockio.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sys/sx.h#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/sys/syscallsubr.h#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_mmap.c#2 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_page.c#3 integrate .. //depot/projects/soc2006/rbeasley_sound/sys/vm/vm_pageq.c#2 integrate Differences ... ==== //depot/projects/soc2006/rbeasley_sound/sys/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/fpu.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/initcpu.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/machdep.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/pmap.c#3 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.557 2006/06/15 01:01:05 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); /* * Manages physical address maps. @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1664,7 +1661,7 @@ static const struct timeval printinterval = { 60, 0 }; static struct timeval lastprint; static vm_pindex_t colour; - int bit, field; + int bit, field, page_req; pv_entry_t pv; struct pv_chunk *pc; vm_page_t m; @@ -1697,7 +1694,8 @@ } } /* No free items, allocate another chunk */ - m = vm_page_alloc(NULL, colour, VM_ALLOC_SYSTEM | VM_ALLOC_NOOBJ); + page_req = try ? VM_ALLOC_NORMAL : VM_ALLOC_SYSTEM; + m = vm_page_alloc(NULL, colour, page_req | VM_ALLOC_NOOBJ); if (m == NULL) { if (try) { pv_entry_count--; @@ -1978,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2144,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2335,6 +2333,7 @@ vm_page_t m, mpte; vm_pindex_t diff, psize; + VM_OBJECT_LOCK_ASSERT(m_start->object, MA_OWNED); psize = atop(end - start); mpte = NULL; m = m_start; @@ -2376,7 +2375,6 @@ (m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0, ("pmap_enter_quick_locked: managed mapping within the clean submap")); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); /* @@ -2394,7 +2392,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->wire_count++; } else { - retry: /* * Get the page directory entry */ @@ -2412,18 +2409,8 @@ } else { mpte = _pmap_allocpte(pmap, ptepindex, M_NOWAIT); - if (mpte == NULL) { - PMAP_UNLOCK(pmap); - vm_page_busy(m); - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(m->object); - VM_WAIT; - VM_OBJECT_LOCK(m->object); - vm_page_lock_queues(); - vm_page_wakeup(m); - PMAP_LOCK(pmap); - goto retry; - } + if (mpte == NULL) + return (mpte); } } } else { @@ -2446,12 +2433,16 @@ } /* - * Enter on the PV list if part of our managed memory. Note that we - * raise IPL while manipulating pv_table since pmap_enter can be - * called at interrupt time. + * Enter on the PV list if part of our managed memory. */ - if ((m->flags & (PG_FICTITIOUS|PG_UNMANAGED)) == 0) - pmap_insert_entry(pmap, va, m); + if ((m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) == 0 && + !pmap_try_insert_pv_entry(pmap, va, m)) { + if (mpte != NULL) { + pmap_unwire_pte_hold(pmap, va, mpte); + mpte = NULL; + } + return (mpte); + } /* * Increment counters @@ -2588,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2680,7 +2668,7 @@ PHYS_TO_DMAP(VM_PAGE_TO_PHYS(dstmpde)); pde = &pde[pmap_pde_index(addr)]; if (*pde == 0) { - *pde = srcptepaddr; + *pde = srcptepaddr & ~PG_W; dst_pmap->pm_stats.resident_count += NBPDR / PAGE_SIZE; } else @@ -2703,11 +2691,6 @@ * we only virtual copy managed pages */ if ((ptetemp & PG_MANAGED) != 0) { - /* - * We have to check after allocpte for the - * pte still being around... allocpte can - * block. - */ dstmpte = pmap_allocpte(dst_pmap, addr, M_NOWAIT); if (dstmpte == NULL) @@ -2719,14 +2702,16 @@ pmap_try_insert_pv_entry(dst_pmap, addr, PHYS_TO_VM_PAGE(ptetemp & PG_FRAME))) { /* - * Clear the modified and + * Clear the wired, modified, and * accessed (referenced) bits * during the copy. */ - *dst_pte = ptetemp & ~(PG_M | PG_A); + *dst_pte = ptetemp & ~(PG_W | PG_M | + PG_A); dst_pmap->pm_stats.resident_count++; } else - pmap_unwire_pte_hold(dst_pmap, addr, dstmpte); + pmap_unwire_pte_hold(dst_pmap, addr, + dstmpte); if (dstmpte->wire_count >= srcmpte->wire_count) break; } @@ -2805,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2991,7 +2974,7 @@ static __inline void pmap_clear_ptes(vm_page_t m, long bit) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t pbits, *pte; @@ -3061,35 +3044,26 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if (pte != NULL && (*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; if (rtval > 4) { PMAP_UNLOCK(pmap); @@ -3099,7 +3073,6 @@ PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3134,9 +3107,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3160,9 +3131,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3182,9 +3151,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/amd64/trap.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.303 2006/03/13 23:55:31 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.304 2006/06/20 12:44:21 yar Exp $"); /* * AMD64 Trap and System call handling @@ -681,15 +681,9 @@ } #ifdef KDB - if (debugger_on_panic || kdb_active) { - register_t rflags; - rflags = intr_disable(); - if (kdb_trap(type, 0, frame)) { - intr_restore(rflags); + if (debugger_on_panic || kdb_active) + if (kdb_trap(type, 0, frame)) return; - } - intr_restore(rflags); - } #endif printf("trap number = %d\n", type); if (type <= MAX_TRAP_MSG) ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/conf/GENERIC#3 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ cpu HAMMER ident GENERIC ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/conf/NOTES#3 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.56 2006/06/12 20:38:17 jhb Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.57 2006/06/26 23:41:06 obrien Exp $ # # @@ -223,6 +223,7 @@ # (requires miibus) # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters +# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) # nve: nVidia nForce MCP on-board Ethernet Networking # ral: Ralink Technology IEEE 802.11 wireless adapter # ural: Ralink Technology RT2500USB IEEE 802.11 wireless adapter @@ -233,6 +234,7 @@ options ED_SIC device iwi device ipw +device nfe # nVidia nForce MCP on-board Ethernet Networking device nve # nVidia nForce MCP on-board Ethernet Networking device ral device ural ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/include/md_var.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.77 2006/04/21 04:24:50 peter Exp $ + * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.78 2006/06/19 22:36:01 davidxu Exp $ */ #ifndef _MACHINE_MD_VAR_H_ @@ -47,6 +47,7 @@ extern u_int cpu_fxsr; extern u_int cpu_high; extern u_int cpu_id; +extern u_int cpu_mxcsr_mask; extern u_int cpu_procinfo; extern u_int cpu_procinfo2; extern char cpu_vendor[]; ==== //depot/projects/soc2006/rbeasley_sound/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.2 2006/05/10 18:17:28 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_dummy.c,v 1.3 2006/06/21 08:45:40 netchild Exp $"); #include #include @@ -67,6 +67,62 @@ DUMMY(fadvise64); DUMMY(ptrace); DUMMY(settimeofday); +DUMMY(lookup_dcookie); +DUMMY(epoll_create); +DUMMY(epoll_ctl); +DUMMY(epoll_wait); +DUMMY(remap_file_pages); +DUMMY(set_tid_address); +DUMMY(timer_create); +DUMMY(timer_settime); +DUMMY(timer_gettime); +DUMMY(timer_getoverrun); +DUMMY(timer_delete); +DUMMY(clock_settime); +DUMMY(clock_gettime); +DUMMY(clock_getres); +DUMMY(clock_nanosleep); +DUMMY(statfs64); +DUMMY(fstatfs64); +DUMMY(tgkill); +DUMMY(utimes); +DUMMY(fadvise64_64); +DUMMY(mbind); +DUMMY(get_mempolicy); +DUMMY(set_mempolicy); +DUMMY(mq_open); +DUMMY(mq_unlink); +DUMMY(mq_timedsend); +DUMMY(mq_timedreceive); +DUMMY(mq_notify); +DUMMY(mq_getsetattr); +DUMMY(kexec_load); +DUMMY(waitid); +DUMMY(add_key); +DUMMY(request_key); +DUMMY(keyctl); +DUMMY(ioprio_set); +DUMMY(ioprio_get); +DUMMY(inotify_init); +DUMMY(inotify_add_watch); +DUMMY(inotify_rm_watch); +DUMMY(migrate_pages); +DUMMY(openat); +DUMMY(mkdirat); +DUMMY(mknodat); +DUMMY(fchownat); +DUMMY(futimesat); +DUMMY(fstatat64); +DUMMY(unlinkat); +DUMMY(renameat); +DUMMY(linkat); +DUMMY(symlinkat); +DUMMY(readlinkat); +DUMMY(fchmodat); +DUMMY(faccessat); +DUMMY(pselect6); +DUMMY(ppoll); +DUMMY(unshare); #define DUMMY_XATTR(s) \ int \ ==== //depot/projects/soc2006/rbeasley_sound/sys/amd64/linux32/linux32_proto.h#3 (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.12 2006/06/13 18:48:29 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.10 2006/06/13 18:43:55 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -707,6 +707,174 @@ struct linux_fadvise64_args { register_t dummy; }; +struct linux_lookup_dcookie_args { + register_t dummy; +}; +struct linux_epoll_create_args { + register_t dummy; +}; +struct linux_epoll_ctl_args { + register_t dummy; +}; +struct linux_epoll_wait_args { + register_t dummy; +}; +struct linux_remap_file_pages_args { + register_t dummy; +}; +struct linux_set_tid_address_args { + register_t dummy; +}; +struct linux_timer_create_args { + register_t dummy; +}; +struct linux_timer_settime_args { + register_t dummy; +}; +struct linux_timer_gettime_args { + register_t dummy; +}; +struct linux_timer_getoverrun_args { + register_t dummy; +}; +struct linux_timer_delete_args { + register_t dummy; +}; +struct linux_clock_settime_args { + register_t dummy; +}; +struct linux_clock_gettime_args { + register_t dummy; +}; +struct linux_clock_getres_args { + register_t dummy; +}; +struct linux_clock_nanosleep_args { + register_t dummy; +}; +struct linux_statfs64_args { + register_t dummy; +}; +struct linux_fstatfs64_args { + register_t dummy; +}; +struct linux_tgkill_args { + register_t dummy; +}; +struct linux_utimes_args { + register_t dummy; +}; +struct linux_fadvise64_64_args { + register_t dummy; +}; +struct linux_mbind_args { + register_t dummy; +}; +struct linux_get_mempolicy_args { + register_t dummy; +}; +struct linux_set_mempolicy_args { + register_t dummy; +}; +struct linux_mq_open_args { + register_t dummy; +}; +struct linux_mq_unlink_args { + register_t dummy; +}; +struct linux_mq_timedsend_args { + register_t dummy; +}; +struct linux_mq_timedreceive_args { + register_t dummy; +}; +struct linux_mq_notify_args { + register_t dummy; +}; +struct linux_mq_getsetattr_args { + register_t dummy; +}; +struct linux_kexec_load_args { + register_t dummy; +}; +struct linux_waitid_args { + register_t dummy; +}; +struct linux_add_key_args { + register_t dummy; +}; +struct linux_request_key_args { + register_t dummy; +}; +struct linux_keyctl_args { + register_t dummy; +}; +struct linux_ioprio_set_args { + register_t dummy; +}; +struct linux_ioprio_get_args { + register_t dummy; +}; +struct linux_inotify_init_args { + register_t dummy; +}; +struct linux_inotify_add_watch_args { + register_t dummy; +}; +struct linux_inotify_rm_watch_args { + register_t dummy; +}; +struct linux_migrate_pages_args { + register_t dummy; +}; +struct linux_openat_args { + register_t dummy; +}; +struct linux_mkdirat_args { + register_t dummy; +}; +struct linux_mknodat_args { + register_t dummy; +}; +struct linux_fchownat_args { + register_t dummy; +}; +struct linux_futimesat_args { + register_t dummy; +}; +struct linux_fstatat64_args { + register_t dummy; +}; +struct linux_unlinkat_args { + register_t dummy; +}; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:41:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E43B516A4E8; Wed, 5 Jul 2006 01:41:01 +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 C0C2E16A4E0 for ; Wed, 5 Jul 2006 01:41:01 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3B54F43D46 for ; Wed, 5 Jul 2006 01:41:01 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651f1ci032610 for ; Wed, 5 Jul 2006 01:41:01 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651f0xg032607 for perforce@freebsd.org; Wed, 5 Jul 2006 01:41:00 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:41:00 GMT Message-Id: <200607050141.k651f0xg032607@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100586 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:41:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=100586 Change 100586 by jb@jb_freebsd2 on 2006/07/05 01:40:58 Add the KDTRACE option by default. Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/conf/GENERIC#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/conf/GENERIC#3 (text+ko) ==== @@ -65,6 +65,7 @@ options KDB # Enable kernel debugger support. options KDB_TRACE options DDB # Support DDB. +options KDTRACE # Support for DTrace. #options GDB # Support remote GDB. #options INVARIANTS # Enable calls of extra sanity checking #options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:43:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E744816A4EB; Wed, 5 Jul 2006 01:43:04 +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 B7F5316A4E7 for ; Wed, 5 Jul 2006 01:43:04 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 287B943D58 for ; Wed, 5 Jul 2006 01:43:04 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651h4cO032727 for ; Wed, 5 Jul 2006 01:43:04 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651h3cH032724 for perforce@freebsd.org; Wed, 5 Jul 2006 01:43:03 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:43:03 GMT Message-Id: <200607050143.k651h3cH032724@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100587 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:43:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=100587 Change 100587 by jb@jb_freebsd2 on 2006/07/05 01:42:38 Use a more general variable type to ensure that the unsigned integer is large enough to be cast as a void pointer on 64-bit architectures. This is still a hack. Affected files ... .. //depot/projects/dtrace/src/sys/contrib/opensolaris/compat/sys/vmem.h#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/compat/sys/vmem.h#2 (text+ko) ==== @@ -28,7 +28,7 @@ #define VM_BESTFIT 0x00000100 #define VMC_IDENTIFIER 0x00040000 /* not backed by memory */ -typedef u_int32_t vmem_t; +typedef uintptr_t vmem_t; typedef void *(vmem_alloc_t)(vmem_t *, size_t, int); typedef void (vmem_free_t)(vmem_t *, void *, size_t); From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:44:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7BE9116A4E1; Wed, 5 Jul 2006 01:44:06 +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 3FF0D16A4DF for ; Wed, 5 Jul 2006 01:44:06 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EDC7243D45 for ; Wed, 5 Jul 2006 01:44:05 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651i5xB032766 for ; Wed, 5 Jul 2006 01:44:05 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651i5cG032763 for perforce@freebsd.org; Wed, 5 Jul 2006 01:44:05 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:44:05 GMT Message-Id: <200607050144.k651i5cG032763@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100588 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:44:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=100588 Change 100588 by jb@jb_freebsd2 on 2006/07/05 01:43:31 Make libpthread opt-in rather than opt-out from now on. Affected files ... .. //depot/projects/dtrace/src/lib/Makefile#3 edit Differences ... ==== //depot/projects/dtrace/src/lib/Makefile#3 (text+ko) ==== @@ -103,7 +103,7 @@ _libsmb= libsmb .endif -.if ${MK_LIBPTHREAD} != "no" +.if ${MK_LIBPTHREAD} != "yes" _libpthread= libpthread .endif From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:45:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4332016A4EA; Wed, 5 Jul 2006 01:45:08 +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 21EAD16A4E7 for ; Wed, 5 Jul 2006 01:45:08 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C198B43D53 for ; Wed, 5 Jul 2006 01:45:07 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651j7ST032914 for ; Wed, 5 Jul 2006 01:45:07 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651j7Wt032911 for perforce@freebsd.org; Wed, 5 Jul 2006 01:45:07 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:45:07 GMT Message-Id: <200607050145.k651j7Wt032911@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100589 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:45:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=100589 Change 100589 by jb@jb_freebsd2 on 2006/07/05 01:44:18 Just a comment change. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/kern/vmem.c#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/kern/vmem.c#2 (text+ko) ==== @@ -49,7 +49,7 @@ { /* * Hope like hell that the caller only uses the value - * returned as an integer, not a pointer! + * returned as a long integer, not a pointer! */ return ((void *) ++(*vmp)); } From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:51:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 780D816A4DF; Wed, 5 Jul 2006 01:51:16 +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 359A516A4DE for ; Wed, 5 Jul 2006 01:51:16 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DC8B643D49 for ; Wed, 5 Jul 2006 01:51:15 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651pFbv033265 for ; Wed, 5 Jul 2006 01:51:15 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651pFnV033262 for perforce@freebsd.org; Wed, 5 Jul 2006 01:51:15 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:51:15 GMT Message-Id: <200607050151.k651pFnV033262@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100590 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:51:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=100590 Change 100590 by jb@jb_freebsd2 on 2006/07/05 01:51:05 A few kse bits that didn't seem to get updated with the bike_sched integration. Affected files ... .. //depot/projects/dtrace/src/lib/libkvm/kvm_proc.c#3 edit .. //depot/projects/dtrace/src/sys/ddb/db_ps.c#5 edit .. //depot/projects/dtrace/src/usr.bin/kdump/kdump.c#4 edit Differences ... ==== //depot/projects/dtrace/src/lib/libkvm/kvm_proc.c#3 (text+ko) ==== @@ -114,7 +114,7 @@ struct prison pr; struct thread mtd; /*struct kse mke;*/ - struct ksegrp mkg; + /*struct ksegrp mkg;*/ struct proc proc; struct proc pproc; struct timeval tv; @@ -137,6 +137,7 @@ TAILQ_FIRST(&proc.p_threads)); return (-1); } +#if 0 if ((proc.p_flag & P_SA) == 0) { if (KREAD(kd, (u_long)TAILQ_FIRST(&proc.p_ksegrps), @@ -146,7 +147,6 @@ TAILQ_FIRST(&proc.p_ksegrps)); return (-1); } -#if 0 if (KREAD(kd, (u_long)TAILQ_FIRST(&mkg.kg_kseq), &mke)) { _kvm_err(kd, kd->program, @@ -154,8 +154,8 @@ TAILQ_FIRST(&mkg.kg_kseq)); return (-1); } + } #endif - } } if (KREAD(kd, (u_long)proc.p_ucred, &ucred) == 0) { kp->ki_ruid = ucred.cr_ruid; @@ -418,13 +418,13 @@ kp->ki_oncpu = mtd.td_oncpu; if (!(proc.p_flag & P_SA)) { +#if 0 /* stuff from the ksegrp */ kp->ki_slptime = mkg.kg_slptime; kp->ki_pri.pri_class = mkg.kg_pri_class; kp->ki_pri.pri_user = mkg.kg_user_pri; kp->ki_estcpu = mkg.kg_estcpu; -#if 0 /* Stuff from the kse */ kp->ki_pctcpu = mke.ke_pctcpu; kp->ki_rqindex = mke.ke_rqindex; ==== //depot/projects/dtrace/src/sys/ddb/db_ps.c#5 (text+ko) ==== @@ -294,8 +294,7 @@ td = kdb_thread; db_printf("Thread %d at %p:\n", td->td_tid, td); - db_printf(" proc (pid %d): %p ", td->td_proc->p_pid, td->td_proc); - db_printf(" ksegrp: %p\n", td->td_ksegrp); + db_printf(" proc (pid %d): %p\n", td->td_proc->p_pid, td->td_proc); if (td->td_name[0] != '\0') db_printf(" name: %s\n", td->td_name); db_printf(" flags: %#x ", td->td_flags); ==== //depot/projects/dtrace/src/usr.bin/kdump/kdump.c#4 (text+ko) ==== @@ -728,12 +728,6 @@ mountflagsname ((int)*ip); ip++; narg--; - } else if (ktr->ktr_code == SYS_kse_thr_interrupt) { - print_number(ip,narg,c); - (void)putchar(','); - ksethrcmdname ((int)*ip); - ip++; - narg--; } else if (ktr->ktr_code == SYS_thr_create) { print_number(ip,narg,c); print_number(ip,narg,c); From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:53:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 42F9816A4EA; Wed, 5 Jul 2006 01:53:21 +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 1C73616A4E7 for ; Wed, 5 Jul 2006 01:53:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9447B43D53 for ; Wed, 5 Jul 2006 01:53:20 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651rK8D033443 for ; Wed, 5 Jul 2006 01:53:20 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651rKIc033440 for perforce@freebsd.org; Wed, 5 Jul 2006 01:53:20 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:53:20 GMT Message-Id: <200607050153.k651rKIc033440@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100593 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:53:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100593 Change 100593 by jb@jb_freebsd2 on 2006/07/05 01:53:10 Make this file compile again. Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/sun4v/pmap.c#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/sun4v/pmap.c#5 (text+ko) ==== @@ -383,7 +383,6 @@ pmap_activate(struct thread *td) { pmap_t pmap, oldpmap; - int context, err; int err; critical_enter(); @@ -402,14 +401,11 @@ pmap->pm_hashscratch = tte_hash_set_scratchpad_user(pmap->pm_hash, pmap->pm_context); pmap->pm_tsbscratch = tsb_set_scratchpad_user(&pmap->pm_tsb); PCPU_SET(curpmap, pmap); - context = pmap->pm_context; if (pmap->pm_context != 0) if ((err = hv_set_ctxnon0(1, pmap->pm_tsb_ra)) != H_EOK) panic("failed to set TSB 0x%lx - context == %ld\n", pmap->pm_tsb_ra, pmap->pm_context); - panic("failed to set TSB 0x%lx - context == %d\n", - pmap->pm_tsb_ra, context); - stxa(MMU_CID_S, ASI_MMU_CONTEXTID, context); + stxa(MMU_CID_S, ASI_MMU_CONTEXTID, pmap->pm_context); membar(Sync); critical_exit(); } From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:53:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8CFE516A55B; Wed, 5 Jul 2006 01:53:21 +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 1C7F116A4E8 for ; Wed, 5 Jul 2006 01:53:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5115143D45 for ; Wed, 5 Jul 2006 01:53:20 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651rKZk033437 for ; Wed, 5 Jul 2006 01:53:20 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651rKnW033434 for perforce@freebsd.org; Wed, 5 Jul 2006 01:53:20 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:53:20 GMT Message-Id: <200607050153.k651rKnW033434@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100592 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:53:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100592 Change 100592 by jb@jb_freebsd2 on 2006/07/05 01:52:26 Fix a missing variable. Not sure how this got lost in the three-way integration. Affected files ... .. //depot/projects/dtrace/src/sys/kern/uipc_usrreq.c#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/uipc_usrreq.c#5 (text+ko) ==== @@ -201,6 +201,7 @@ static int uipc_connect(struct socket *so, struct sockaddr *nam, struct thread *td) { + struct unpcb *unp; int error; KASSERT(td == curthread, ("uipc_connect: td != curthread")); From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:55:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D4F4116A4DF; Wed, 5 Jul 2006 01:55:24 +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 5C48416A4DD for ; Wed, 5 Jul 2006 01:55:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2C1ED43D4C for ; Wed, 5 Jul 2006 01:55:24 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651tOqv033606 for ; Wed, 5 Jul 2006 01:55:24 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651tNV2033602 for perforce@freebsd.org; Wed, 5 Jul 2006 01:55:23 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:55:23 GMT Message-Id: <200607050155.k651tNV2033602@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100594 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:55:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=100594 Change 100594 by jb@jb_freebsd2 on 2006/07/05 01:54:23 The statically defined trace implementation needs to change to match the way that Sun did. For the time being, just ensure that this file will compile on sun4v. Affected files ... .. //depot/projects/dtrace/src/sys/kern/kern_sdt.c#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/kern_sdt.c#3 (text+ko) ==== @@ -130,17 +130,6 @@ ref->state = SDT_OFFSET_TOO_BIG; return; } -/* XXX This is temporary code to help determine if this strategy is sound. */ -{ -u_int8_t *p1 = (u_int8_t *) ref->probe_start; -u_int8_t *p2 = (u_int8_t *) ref->probe_end; -printf("sdt:%s:%s:%s:\n", ref->mod, ref->func, ref->name); -while (p1 < p2) { - printf("0x%02x ",*p1 & 0xff); - p1++; -} -printf("\n"); -} /* * Point to the instruction after the start probe label. @@ -175,7 +164,7 @@ */ *p = ref->probe_disable; #else -#error "Need machine dependent code!" + printf("%s: Need machine dependent code!\n",__FUNCTION__); #endif sx_xlock(&sdt_sx); From owner-p4-projects@FreeBSD.ORG Wed Jul 5 01:56:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 33ADA16A4E0; Wed, 5 Jul 2006 01:56:26 +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 12AA416A4DD for ; Wed, 5 Jul 2006 01:56:26 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D7A9C43D46 for ; Wed, 5 Jul 2006 01:56:25 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k651uPbZ033674 for ; Wed, 5 Jul 2006 01:56:25 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k651uPvv033671 for perforce@freebsd.org; Wed, 5 Jul 2006 01:56:25 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 01:56:25 GMT Message-Id: <200607050156.k651uPvv033671@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100595 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 01:56:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=100595 Change 100595 by jb@jb_freebsd2 on 2006/07/05 01:55:48 Install symbolic links from libthr to libpthread on all architectures from now on. (Wearing flame suit) Affected files ... .. //depot/projects/dtrace/src/lib/libthr/Makefile#4 edit Differences ... ==== //depot/projects/dtrace/src/lib/libthr/Makefile#4 (text+ko) ==== @@ -42,7 +42,6 @@ .include "${.CURDIR}/sys/Makefile.inc" .include "${.CURDIR}/thread/Makefile.inc" -.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64" SYMLINKS+=lib${LIB}.a ${LIBDIR}/libpthread.a .if !defined(NO_PIC) SYMLINKS+=lib${LIB}.so ${LIBDIR}/libpthread.so @@ -50,6 +49,5 @@ .if ${MK_PROFILE} != "no" SYMLINKS+=lib${LIB}_p.a ${LIBDIR}/libpthread_p.a .endif -.endif .include From owner-p4-projects@FreeBSD.ORG Wed Jul 5 02:45:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 658B516A4F0; Wed, 5 Jul 2006 02:45:29 +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 4239A16A4ED for ; Wed, 5 Jul 2006 02:45:29 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D588D43D5F for ; Wed, 5 Jul 2006 02:45:28 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k652jS0K038383 for ; Wed, 5 Jul 2006 02:45:28 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k652jSNp038378 for perforce@freebsd.org; Wed, 5 Jul 2006 02:45:28 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 02:45:28 GMT Message-Id: <200607050245.k652jSNp038378@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100600 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 02:45:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=100600 Change 100600 by jb@jb_freebsd2 on 2006/07/05 02:45:17 Revise the size of the padding to reflect the additional fields in the machine independent part of the pcpu structure for DTrace. Note: This padding will break if KTR_PERCPU is defined on sun4v because that adds variables to the pcpu structure that don't add up to a multiple of 64 bytes as expected by sun4v/machdep.c. Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/include/pcpu.h#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/include/pcpu.h#2 (text+ko) ==== @@ -79,7 +79,7 @@ struct rwindow pc_tsbwbuf[2]; \ u_int pc_node; \ uint16_t pc_cpulist[MAXCPU]; \ - uint64_t pad[7]; + uint64_t pad[1]; /* XXX SUN4V_FIXME - as we access the *_ra and *_size fields in quick * succession we _really_ want them to be L1 cache line size aligned From owner-p4-projects@FreeBSD.ORG Wed Jul 5 04:54:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1091C16A4E2; Wed, 5 Jul 2006 04:54:08 +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 E060216A4DA for ; Wed, 5 Jul 2006 04:54:07 +0000 (UTC) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9970543D49 for ; Wed, 5 Jul 2006 04:54:07 +0000 (GMT) (envelope-from cdjones@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k654s7se060646 for ; Wed, 5 Jul 2006 04:54:07 GMT (envelope-from cdjones@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k654s7jx060643 for perforce@freebsd.org; Wed, 5 Jul 2006 04:54:07 GMT (envelope-from cdjones@FreeBSD.org) Date: Wed, 5 Jul 2006 04:54:07 GMT Message-Id: <200607050454.k654s7jx060643@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cdjones@FreeBSD.org using -f From: Chris Jones To: Perforce Change Reviews Cc: Subject: PERFORCE change 100602 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 04:54:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=100602 Change 100602 by cdjones@cdjones-impulse on 2006/07/05 04:53:17 Add structure members for handling memory limits. Affected files ... .. //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#9 edit Differences ... ==== //depot/projects/soc2006/cdjones_jail/src/sys/sys/jail.h#9 (text+ko) ==== @@ -93,7 +93,9 @@ struct mtx pr_mtx; unsigned int pr_priority; /* (p) jail priority */ struct proc *pr_scheduler; /* (c) scheduler pid */ - int pr_scheduler_flags; + int pr_scheduler_flags; /* (p) communication to scheduler */ + size_t pr_mem_limit; /* (p) memory allocation limit */ + size_t pr_mem_usage; /* (p) memory in use */ }; #endif /* _KERNEL || _WANT_PRISON */ From owner-p4-projects@FreeBSD.ORG Wed Jul 5 10:43:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7181C16A4E1; Wed, 5 Jul 2006 10:43:44 +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 4B4F516A4DA for ; Wed, 5 Jul 2006 10:43:44 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D8A5543D45 for ; Wed, 5 Jul 2006 10:43:43 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65AhhwK013303 for ; Wed, 5 Jul 2006 10:43:43 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65Ahgfr013300 for perforce@freebsd.org; Wed, 5 Jul 2006 10:43:42 GMT (envelope-from jb@freebsd.org) Date: Wed, 5 Jul 2006 10:43:42 GMT Message-Id: <200607051043.k65Ahgfr013300@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100614 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 10:43:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=100614 Change 100614 by jb@jb_freebsd2 on 2006/07/05 10:43:01 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#12 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/ports/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#11 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/authors.ent#9 integrate .. //depot/projects/dtrace/doc/fr_FR.ISO8859-1/books/handbook/install/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/share/sgml/freebsd.ent#6 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/fdp-primer/book.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/fdp-primer/overview/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/fdp-primer/tools/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/cutting-edge/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/firewalls/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/l10n/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/mirrors/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/multimedia/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/ports/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/converter.sgml#2 integrate .. //depot/projects/dtrace/ports/CHANGES#2 integrate .. //depot/projects/dtrace/ports/MOVED#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.autotools.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.database.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.gcc.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.gnome.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.gstreamer.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.kde.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.php.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.port.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.ruby.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.scons.mk#1 branch .. //depot/projects/dtrace/ports/Mk/bsd.sdl.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.wx.mk#1 branch .. //depot/projects/dtrace/ports/Tools/scripts/addport#2 integrate .. //depot/projects/dtrace/ports/Tools/scripts/rmport#2 integrate .. //depot/projects/dtrace/ports/UPDATING#2 integrate .. //depot/projects/dtrace/src/MAINTAINERS#8 integrate .. //depot/projects/dtrace/src/bin/cp/cp.c#3 integrate .. //depot/projects/dtrace/src/lib/msun/src/e_scalbf.c#3 integrate .. //depot/projects/dtrace/src/sbin/dhclient/dhclient.c#4 integrate .. //depot/projects/dtrace/src/sys/Makefile#5 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/pmap.c#9 integrate .. //depot/projects/dtrace/src/sys/amd64/conf/GENERIC#9 integrate .. //depot/projects/dtrace/src/sys/bsm/audit_kevents.h#3 integrate .. //depot/projects/dtrace/src/sys/bsm/audit_record.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-lowlevel.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-pci.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp_pci.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/isp/ispmbox.h#4 integrate .. //depot/projects/dtrace/src/sys/dev/isp/ispreg.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/isp/ispvar.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/dtrace/src/sys/dev/ispfw/ispfw.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/mii/brgphy.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/mii/mii_physubr.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/sk/if_sk.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/usb/if_aue.c#3 integrate .. //depot/projects/dtrace/src/sys/geom/mirror/g_mirror.c#5 integrate .. //depot/projects/dtrace/src/sys/geom/raid3/g_raid3.c#8 integrate .. //depot/projects/dtrace/src/sys/i386/conf/GENERIC#11 integrate .. //depot/projects/dtrace/src/sys/ia64/include/ieeefp.h#3 integrate .. //depot/projects/dtrace/src/sys/net/bpf.c#6 integrate .. //depot/projects/dtrace/src/sys/net/if_enc.c#2 integrate .. //depot/projects/dtrace/src/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/dtrace/src/sys/security/audit/audit.h#3 integrate .. //depot/projects/dtrace/src/sys/security/audit/audit_arg.c#3 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/Doxyfile#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/Makefile#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Dependencies#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-cam#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-geom#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-kern#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-linux#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-vm#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Makefile#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/README#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/common-Doxyfile#1 branch .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/notreviewed.dox#1 branch .. //depot/projects/dtrace/src/usr.bin/calendar/calendars/calendar.freebsd#4 integrate .. //depot/projects/dtrace/src/usr.sbin/mtree/misc.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/mtree/mtree.8#3 integrate .. //depot/projects/dtrace/src/usr.sbin/mtree/mtree.h#3 integrate .. //depot/projects/dtrace/src/usr.sbin/mtree/spec.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/mtree/test/test05.sh#1 branch .. //depot/projects/dtrace/src/usr.sbin/mtree/verify.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/sade/Makefile#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/command.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/config.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/devices.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/disks.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/dispatch.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/dmenu.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/globals.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/help/partition.hlp#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/help/slice.hlp#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/install.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/keymap.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/label.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/list.h#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/main.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/menus.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/misc.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/msg.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/rtermcap.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/sade.8#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/sade.h#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/system.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/termcap.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/usb.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/variable.c#1 branch .. //depot/projects/dtrace/src/usr.sbin/sade/wizard.c#1 branch .. //depot/projects/dtrace/www/fr/about.sgml#2 integrate .. //depot/projects/dtrace/www/fr/community/webresources.sgml#2 integrate .. //depot/projects/dtrace/www/fr/copyright/trademarks.sgml#2 integrate .. //depot/projects/dtrace/www/fr/docs/man.sgml#2 integrate .. //depot/projects/dtrace/www/fr/gnome/includes.navgnome.sgml#2 integrate .. //depot/projects/dtrace/www/fr/gnome/includes.navgnome.xsl#3 integrate .. //depot/projects/dtrace/www/fr/gnome/index.xsl#3 integrate .. //depot/projects/dtrace/www/fr/index.xsl#3 integrate .. //depot/projects/dtrace/www/fr/logo.sgml#2 integrate .. //depot/projects/dtrace/www/fr/projects/busdma/index.sgml#3 integrate .. //depot/projects/dtrace/www/fr/security/security.sgml#2 integrate .. //depot/projects/dtrace/www/fr/snapshots/index.sgml#3 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#12 (text+ko) ==== @@ -1,4 +1,4 @@ - + @@ -1126,13 +1126,21 @@ &prompt.root; pkg_version -v - - Once you updated your Ports Collection, before - attempting a port upgrade, you should check the - /usr/ports/UPDATING file. This file + + <filename>/usr/ports/UPDATING</filename> + + Once you have updated your Ports Collection, before + attempting a port upgrade, you should check + /usr/ports/UPDATING. This file describes various issues and additional steps users may - encounter and need to perform when updating a port. - + encounter and need to perform when updating a port, including + such things as file format changes, changes in locations of + configuration files, or other such incompatibilities with + previous versions. + + If UPDATING contradicts something you + read here, UPDATING takes precedence. + Upgrading Ports using Portupgrade ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#11 (text+ko) ==== @@ -1,7 +1,7 @@ Want the Apache module or the CGI version of PHP. - - - WANT_PHP_PEAR - - Want the PEAR framework. - - @@ -5660,7 +5653,7 @@ pkg-plist. Include - ${PORTSDIR}/devel/pear-PEAR/Makefile.common + ${PORTSDIR}/devel/pear/bsd.pear.mk on the last line of the Makefile. @@ -5687,7 +5680,7 @@ _DOCSDIR= . .include <bsd.port.pre.mk> -.include "${PORTSDIR}/devel/pear-PEAR/Makefile.common" +.include "${PORTSDIR}/devel/pear/bsd.pear.mk" .include <bsd.port.post.mk> ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/share/sgml/authors.ent#9 (text+ko) ==== @@ -13,7 +13,7 @@ builds for the other languages, and we will poke fun of you in public. - $FreeBSD: doc/en_US.ISO8859-1/share/sgml/authors.ent,v 1.389 2006/06/26 03:18:24 rafan Exp $ + $FreeBSD: doc/en_US.ISO8859-1/share/sgml/authors.ent,v 1.390 2006/07/05 02:00:56 yongari Exp $ --> aaron@FreeBSD.org"> @@ -1002,6 +1002,8 @@ yokota@FreeBSD.org"> +yongari@FreeBSD.org"> + zarzycki@FreeBSD.org"> znerd@FreeBSD.org"> ==== //depot/projects/dtrace/doc/fr_FR.ISO8859-1/books/handbook/install/chapter.sgml#2 (text+ko) ==== @@ -2,7 +2,7 @@ The FreeBSD Documentation Project The FreeBSD French Documentation Project - $FreeBSD: doc/fr_FR.ISO8859-1/books/handbook/install/chapter.sgml,v 1.26 2006/03/20 20:39:05 blackend Exp $ + $FreeBSD: doc/fr_FR.ISO8859-1/books/handbook/install/chapter.sgml,v 1.27 2006/07/03 15:36:58 blackend Exp $ Original revision: 1.331 --> @@ -5944,7 +5944,7 @@ Comme élément de chaque nouvelle version, le projet FreeBSD met à disposition deux images de CDROM - (“images ISO”). Ces images peuvent inscrites + (“images ISO”). Ces images peuvent être inscrites (“gravées”) sur CDs si vous disposez d'un graveur de CD, et puis être utilisées pour installer FreeBSD. Si vous avez un graveur de CD, et comme la bande ==== //depot/projects/dtrace/doc/share/sgml/freebsd.ent#6 (text+ko) ==== @@ -1,7 +1,7 @@ - + ==== //depot/projects/dtrace/doc/zh_TW.Big5/books/fdp-primer/book.sgml#2 (text+ko) ==== @@ -27,7 +27,7 @@ ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/book.sgml,v 1.2 2006/01/31 01:31:00 vanilla Exp $ + $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/book.sgml,v 1.3 2006/07/04 08:28:44 vanilla Exp $ Original revision: 1.27 --> @@ -41,7 +41,7 @@ - FreeBSD Documentation Project Primer for New Contributors + FreeBSD ゅン璸礶も FreeBSD ゅン璸购 @@ -58,23 +58,19 @@ DocEng - $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/book.sgml,v 1.2 2006/01/31 01:31:00 vanilla Exp $ + $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/book.sgml,v 1.3 2006/07/04 08:28:44 vanilla Exp $ - $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/book.sgml,v 1.2 2006/01/31 01:31:00 vanilla Exp $ + $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/book.sgml,v 1.3 2006/07/04 08:28:44 vanilla Exp $ &bookinfo.legalnotice; - 稰谅眤把籔 FreeBSD ゅン璸购眤翴簑癪膍常讽腳禥 + 稰谅眤把籔 FreeBSD ゅン璸购(虏嘿FDP, FreeBSD Documentation Project)眤翴簑癪膍常讽腳禥 - This primer covers everything you will need to know in order - to start contributing to the FreeBSD Documentation Project, from - the tools and software you will be using (both mandatory and - recommended) to the philosophy behind the Documentation - Project. + セもず甧珹秨﹍帝も陆亩兜灿竊の穦ノㄇノㄣ(珹ゲ称ㄣ某ㄣ) + のゅン璸礶﹙Ξ - セゅン临絑﹟ゼЧ絑ゼЧΘ彻竊и穦彻竊嘿娩爹 - * 醚 + セゅン临絑﹟ゼЧ絑ゼЧΘ彻竊и穦彻竊嘿娩爹* 醚 @@ -127,52 +123,57 @@ - The name of commands, files, and directories. On screen - computer output. - Edit your .login - file.Use ls -a to list all - files.You have mail. - +  + ㄏノ ls -a ㄓ┮Τ郎 + + + + 郎 + э .login 郎 - 块棵辊穦瞷癸莱ず甧 + 棵辊穦瞷癟 + You have mail. + + + 块棵辊穦瞷癸莱ず甧 &prompt.user; su -Password: + Password: - 量璶把σ Manual ... + 璶把σ絬も(manual) - Use + su 1 - to change user names. + ㄓち传眀腹 量眀腹(user)竤舱(group)嘿... - Only root can do this. + Τ root 暗硂ンㄆ - 粂眏秸 + 粂眏秸 - You must do this. + ゲ斗硂或暗︽ - ゴ蠢传场(э才诀竟郎砞称┪ㄤ摸场) + ゴ蠢传场 - To delete a file, type rm filename + 璶埃郎杠叫ゴ rm 璶埃郎 吏挂跑计砞﹚ - $HOME is your home directory. + $HOME 琌眀腹產ヘ魁┮矪 @@ -182,37 +183,29 @@ NoteTipImportantWarningExample笲ノ - ゅ琌猔種(Note)мォ(Tip)璶癟(Important)牡(Warning)絛ㄒ(Example)笲ノ + ゅ琌猔種мォ璶癟牡絛ㄒ笲ノ - Notes are represented like this, and contain information that - you should take note of, as it may affect what you do. + ボ惠璶猔種ㄆ兜ㄤい珹眤惠璶猔種ㄆ薄硂ㄇㄆ薄穦紇臫巨挡狦 - Tips are represented like this, and contain information that you - might find useful, or lead to an easier way to do something. + 矗ㄑ癸眤Τノ┪虏て巨よΑмォ弧 - Important information is represented like this. Typically they - flag extra steps you may need to carry out. + ボ璶疭猔種ㄆ薄ㄓ弧ウ穦珹巨惠璶肂把计 - Warnings are represented like this, and contain information - warning you about possible damage if you do not follow the - instructions. This damage may be physical, to your hardware or to - you, or it may be non-physical, such as the inadvertent deletion of - important files. + ボ牡ㄆ兜ゑ狦眤ぃ猔種玥旧璓穕ア硂ㄇ穕ア琌癸眤┪祑砰硑Θ龟悔端甡 + 琌礚猭︳璸穕甡ㄒ波┛τ埃璶郎... 硂琌羭ㄒ弧 - Examples are represented like this, and typically contain - examples you should walk through, or show you what the results of a - particular action should be. + 硂琌羭ㄒ弧τ硄盽莱宽碻絛ㄒ┪陪ボ琘ㄇ疭﹚笆┮祇ネ挡狦 ==== //depot/projects/dtrace/doc/zh_TW.Big5/books/fdp-primer/overview/chapter.sgml#2 (text+ko) ==== @@ -27,7 +27,7 @@ ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/overview/chapter.sgml,v 1.2 2006/01/31 01:31:00 vanilla Exp $ + $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/overview/chapter.sgml,v 1.3 2006/07/04 08:28:44 vanilla Exp $ Original revision: 1.23 --> @@ -68,21 +68,19 @@ - The FreeBSD Documentation Set + FreeBSD ゅン舱Θ场だ FDP 羆璽砫 FreeBSD  4 贺摸ゅン - Manual pages + 絬も(manual) 璣ゅ╰参 manual ぃ琌パ FDP ┮级糶ウ琌妮 base system 场 礛τFDP (纯硂或暗筁)э硂ㄇゅンㄓ琵硂ㄇゅン糶眔睲贰琌吧タ岿粇よ - The translation teams are responsible for translating the - system manual pages into different languages. These translations - are kept within the FDP. + 陆亩刮钉璽砫盢╰参絬も陆亩ぃ粂ē 硂ㄇ亩セ常パ FDP 蝴臔 @@ -96,11 +94,10 @@ - Handbook + ㄏノも(Handbook) - The Handbook aims to be the comprehensive on-line resource and - reference for FreeBSD users. + ㄏノも璶琌倒 FreeBSD ㄏノ矗ㄑ冈荷絬把σ戈 @@ -115,20 +112,13 @@ - These four groups of documentation are all available in the - FreeBSD CVS tree. This means that the logs of changes to these - files are visible to anyone, and anyone can use a program such as - CVSup or - CTM to keep local copies of - this documentation. + 硂ゅン舱Θ场だ常硓筁 FreeBSD CVS tree ㄓ眔碞琌弧硂ㄇゅンэ癘魁癸ヴ常琌そ秨 + τ礚阶琌街常ノ钩琌 CSup, CVSup ┪ + CTM 盢ゅンㄓ(checkout)诀竟暗称┪捌セ把σ单ノ硚 - In addition, many people have written tutorials or other web - sites relating to FreeBSD. Some of these are stored in the CVS - repository as well (where the author has agreed to this). In - other cases the author has decided to keep his documentation - separate from the main FreeBSD repository. The FDP endeavors to - provide links to as much of this documentation as - possible. + 砛穦糶ㄇ毙厩ゅン┪蝴臔Τ闽 FreeBSD ず甧呼(璝種杠)ㄤいΤㄇ戈穦玂 FreeBSD タΑ + CVS repository ずτㄤゅンぃ辨砆 FreeBSD repository ずτ矪 + 羆ぇFDP 穦荷矗ㄑ硂ㄇゅン硈挡 @@ -138,8 +128,8 @@ - 眖 FreeBSD CVS repository 穝筿福 FreeBSD ゅン 场( CVS - ┪ CVSup ┪琌 + 眖 FreeBSD CVS repository 穝筿福 FreeBSD ゅン场( CVS + ┪ CSupCVSup ┪琌 CTM) ┪琌ノ CVSup ㄓ更 checked-out 捌セ @@ -157,43 +147,39 @@ - 杆 textproc/docproj 硂舱 port(meta-port). + 杆 textproc/docproj 硂舱 port(meta-port) &prompt.root; cd /usr/ports/textproc/docproj &prompt.root; make JADETEX=no install - Get a local copy of the FreeBSD doc tree. - Either use CVSup in checkout mode to do this, or - get a full copy of the CVS repository locally. + 更 FreeBSD doc tree セ诀 + 礚阶琌ノ CSup ┪ CVSup  checkout 家Α + ┪琌狡籹Ч俱 CVS repository セ诀常 - If you have the CVS repository locally then as a minimum you - will need to checkout the doc/share, and - doc/en_US.ISO8859-1/share - directories. + 璝稱セ诀禲程 CVS repository 碞ê或ゲ斗璶 + checkout  doc/share の doc/en_US.ISO8859-1/share + 硂ㄢヘ魁︽ &prompt.user; cvs checkout doc/share &prompt.user; cvs checkout doc/en_US.ISO8859-1/share - 璝祑盒丁镑杠êр┮Τ doc 常 check out ㄓ + 璝祑盒丁临衡杠êр┮Τ粂╰ doc 常 check out ㄓ &prompt.user; cvs checkout doc - If you are preparing a change to an existing book or article, - check it out of the repository as necessary. If you are planning on - contributing a new book or article then use an existing one as a - guide. + ㄌ惠璶眖 repository い checkout ㄓ稱э琘瞷Τ膟┪ゅ彻ず甧 + 璝ゴ衡级糶穝┪穝ゅ彻杠把σ瞷Τ场だ龟ㄒㄓ暗 羭ㄒㄓ弧璝稱糶絞穝ゅ彻ず甧琌Τ闽 FreeBSD 籔 Windows 2000 ぇ丁ミ VPN 硈絬 ê或酚摸硂妓猭 - Check out the articles - directory. + Check out articles ヘ魁 &prompt.user; cvs checkout doc/en_US.ISO8859-1/articles @@ -223,19 +209,16 @@ &prompt.user; make lint - When you are ready to actually build the document, you - may specify a single format or a list of formats in the - FORMATS variable. ヘ玡や穿ΑΤ + 讽絪ち常碞狐硂ノ FORMATS + 跑计ㄓ﹚玻ネΑ贺 ヘ玡や穿ΑΤ html, html-split, txt, ps, pdf, rtf  - The most up to date list of supported formats is - listed at the top of the - doc/share/mk/doc.docbook.mk file. Make - sure to use quotes around the list of formats when you build - more than one format with a single command. + ┮や穿Α程穝把σ + doc/share/mk/doc.docbook.mk 郎 叫癘眔 + 虫い璝璶玻ネ贺Α杠莱ㄏノま腹(quotes)ㄓ盢硂ㄇΑ珹癬ㄓ - 羭ㄒㄓ弧璝璶 + 羭ㄒㄓ弧璝璶玻ネ html Α碞ê或碞ゴ &prompt.user; make FORMATS=html ==== //depot/projects/dtrace/doc/zh_TW.Big5/books/fdp-primer/tools/chapter.sgml#2 (text+ko) ==== @@ -27,7 +27,7 @@ ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/tools/chapter.sgml,v 1.2 2006/01/31 01:31:01 vanilla Exp $ + $FreeBSD: doc/zh_TW.Big5/books/fdp-primer/tools/chapter.sgml,v 1.4 2006/07/04 08:28:45 vanilla Exp $ Original revision: 1.32 --> @@ -35,22 +35,20 @@ ㄣ FDP ㄏノ帮ㄣㄓ恨瞶 FreeBSD ゅン锣传ゅンΑ单单 - 璝璶秈︽ FDP 杠ゲ斗璶厩穦硂ㄇㄣ︽ + 璝璶秈︽ FDP 杠ゲ斗璶厩穦硂ㄇㄣ︽ 硂ㄇㄣ常ノ Ports ┪ Packages ㄓ杆竊砛杆ひ 眤ゲ斗杆硂ㄇㄣㄏノ钡ㄓ彻竊穦ざ残ㄒ 硂ㄇㄣノ猭穦尿闽彻竊酵 - Use <filename role="package">textproc/docproj</filename> if possible + 某杆 <filename role="package">textproc/docproj</filename> - You can save yourself a lot of time if you install the - textproc/docproj port. This is a - meta-port which does not contain any software - itself. Instead, it depends on various other ports being installed - correctly. Installing this port should - automatically download and install all of the packages listed in this - chapter that you need. + 杆 + textproc/docproj ウ琌 + 舱 port(meta-port)セō獶硁砰琌盢ㄇ盽ノㄣ舱癬ㄓτ + 杆硂 port ぇ莱赣碞穦笆更杆セ彻┮穦ざ残ㄣ + 璝璶矪瞶いゅ杠某杆 chinese/docproj 穦ゑ耕 One of the packages that you might need is the JadeTeX macro set. In turn, this macro set requires &tex; to be installed. &tex; is a large ==== //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/cutting-edge/chapter.sgml#2 (text+ko) ==== @@ -1,8 +1,8 @@ @@ -37,44 +37,39 @@ - The Cutting Edge + 穝ど FreeBSD - Synopsis + 阀瓃 - &os; is under constant development between releases. For - people who want to be on the cutting edge, there are several easy - mechanisms for keeping your system in sync with the latest - developments. Be warned—the cutting edge is not for everyone! - This chapter will help you decide if you want to track the - development system, or stick with one of the released - versions. + &os; 琌尿祇甶穨╰参癸尺舧發―穝翧縀ㄏノτē + Τよ猭ㄏ眤╰参淮肞穝程穝 + 猔種獶–常続硂或暗セ彻璶琌眤∕﹚┏璶蛤秨祇セ┪琌璶ㄏノ耕铆﹚睦 + - After reading this chapter, you will know: + 弄Ч硂彻眤盢秆 - The difference between the two development - branches: &os.stable; and &os.current;. + &os.stable; 籔 &os.current;硂ㄢだやぃぇ矪 - How to keep your system up to date with +  + CSup, CVSup, - CVS, or - CTM. + CVS ┪ + CTM ㄓ穝╰参 - How to rebuild and reinstall the entire base - system with make buildworld (etc). +  make buildworld 单ㄓ穝絪亩杆俱 + base system - Before reading this chapter, you should: + 秨﹍綷弄硂彻ぇ玡眤惠璶 - Properly set up your network connection (). + 砞呼隔() - Know how to install additional third-party - software (). + 笵硓筁 port/package 杆硁砰() @@ -83,10 +78,9 @@ -CURRENT -STABLE - There are two development branches to FreeBSD: &os.current; and - &os.stable;. This section will explain a bit about each and describe - how to keep your system up-to-date with each respective tree. - &os.current; will be discussed first, then &os.stable;. + FreeBSD Τㄢ祇甶だや&os.current; の + &os.stable;セ竊盢穦嘲尿ざ残ざ残ウだ琌穝 + ざ残 &os.current;钡帝ざ残 &os.stable; Staying Current with &os; @@ -99,11 +93,10 @@ twice before installing it. - What Is &os.current;? + ぐ或琌 &os.current; snapshot - &os.current; is the latest working sources for &os;. - This includes work in progress, experimental changes, and + &os.current; 琌 &os; 程穝ウ work in progress, experimental changes, and transitional mechanisms that might or might not be present in the next official release of the software. While many &os; developers compile the &os.current; source code daily, @@ -383,11 +376,11 @@ - If you are installing a new system and want it to be as - stable as possible, you can simply grab the latest dated - branch snapshot from - and install it like any other release. Or you can + If you are going to install a new system and want it + to run monthly snapshot built from &os.stable;, please + check the + Snapshots web page for more information. + Alternatively, it is possible to install the most recent &os.stable; release from the mirror sites and follow the instructions below to upgrade your system to the @@ -467,7 +460,7 @@ - Synchronizing Your Source + 穝 Source There are various ways of using an Internet (or email) connection to stay up-to-date with any given area of the &os; @@ -552,9 +545,9 @@ tree to rebuild the system. - Take a Backup + Make a Backup - It cannot be stressed enough how important it is to take a + It cannot be stressed enough how important it is to make a backup of your system before you do this. While rebuilding the world is (as long as you follow these instructions) an easy task to do, there will inevitably be times @@ -673,7 +666,7 @@ Examine the files /usr/share/examples/etc/make.conf - (called /etc/defaults/make.conf in &os; 4.X) and + and /etc/make.conf. The first contains some default defines – most of which are commented out. To make use of them when you rebuild your system from source, add @@ -684,10 +677,9 @@ A typical user will probably want to copy the CFLAGS and - NO_PROFILE (or NOPROFILE on - &os; 5.X and older) lines found in + NO_PROFILE lines found in /usr/share/examples/etc/make.conf - (or in /etc/defaults/make.conf on &os; 4.X) to + to /etc/make.conf and uncomment them. Examine the other definitions (COPTFLAGS, @@ -714,21 +706,13 @@ In some cases make buildworld will check to see if these users or groups exist. - A recent example of this is when the + An example of this is when the smmsp user was added. Users had the installation process fail for them when &man.mtree.8; was trying to create /var/spool/clientmqueue. - The solution is to examine - /usr/src/etc/group and compare its list of - groups with your own. If there are any groups in the new file that - are not in your file then copy them over. Similarly, you should - rename any groups in /etc/group which have - the same GID but a different name to those in - /usr/src/etc/group. - - Since 4.6-RELEASE you can run &man.mergemaster.8; in + The solution is to run &man.mergemaster.8; in pre-buildworld mode by providing the option. This will compare only those files that are essential for the success of buildworld or @@ -781,7 +765,7 @@ mode. Alternatively, reboot the system, and at the boot prompt, - enter the flag. The system will then boot + select the single user option. The system will then boot single user. At the shell prompt you should then run: &prompt.root; fsck -p @@ -830,8 +814,8 @@ &prompt.root; rm -rf * - - Recompile the Source + + Recompile the Base System Saving the Output @@ -922,22 +906,16 @@ &prompt.root; make target - Beginning with version 2.2.5 of &os; (actually, it was - first created on the &os.current; branch, and then retrofitted to - &os.stable; midway between 2.2.2 and 2.2.5) the - world target has been split in - two: buildworld and - installworld. Beginning with version - 5.3 of &os; the world target will be changed - so it will not work at all by default because it is actually - dangerous for most users. + Where target will be one of + many build options. The first target should always be + buildworld. As the names imply, buildworld builds a complete new tree under /usr/obj, - and installworld installs this tree on + and installworld, another target, installs this tree on the current machine. - This is very useful for 2 reasons. First, it allows you + Having separate options is very useful for two reasons. First, it allows you to do the build safe in the knowledge that no components of your running system will be affected. The build is self hosted. Because of this, you can safely @@ -963,7 +941,7 @@ &prompt.root; make buildworld - It is now possible to specify a option to + It is possible to specify a option to make which will cause it to spawn several simultaneous processes. This is most useful on multi-CPU machines. However, since much of the compiling process is IO bound rather @@ -980,11 +958,6 @@ If you have a multi-CPU machine and you are using an SMP configured kernel try values between 6 and 10 and see how they speed things up. - - Be aware that this is still somewhat experimental, and commits - to the source tree may occasionally break this feature. If the - world fails to compile using this parameter try again without it - before you report any problems. @@ -994,8 +967,8 @@ timings - Many factors influence the build time, but currently a 500 MHz - &pentium; III with 128 MB of RAM takes about 2 hours to build + Many factors influence the build time, but fairly recent + machines may only take a one or two hours to build the &os.stable; tree, with no tricks or shortcuts used during the process. A &os.current; tree will take somewhat longer. @@ -1024,7 +997,7 @@ can then build a new kernel based on your normal kernel configuration file. - On modern versions of FreeBSD it is important to On &os; it is important to build world before building a new kernel. @@ -1057,7 +1030,7 @@ . - + Install the New System Binaries If you were building a version of &os; recent enough to have @@ -1169,7 +1142,7 @@ After &man.mergemaster.8; is done with the system files you will be prompted for other options. &man.mergemaster.8; may ask if you want to rebuild - the password file and/or run &man.MAKEDEV.8; if you run a FreeBSD version prior to 5.0, and will finish up with an option to + the password file and will finish up with an option to remove left-over temporary files. @@ -1187,7 +1160,7 @@ not in /usr/src/etc. If you are using &man.mergemaster.8; (as recommended), - you can skip forward to the next + you can skip forward to the next section. The simplest way to do this by hand is to install the @@ -1334,103 +1307,8 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 5 11:02:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BC88116A4E6; Wed, 5 Jul 2006 11:02:09 +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 662F116A4DF for ; Wed, 5 Jul 2006 11:02:09 +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 F2E5F43D46 for ; Wed, 5 Jul 2006 11:02:08 +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 k65B28pe014056 for ; Wed, 5 Jul 2006 11:02:08 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 k65B2798014050 for perforce@freebsd.org; Wed, 5 Jul 2006 11:02:07 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 11:02:07 GMT Message-Id: <200607051102.k65B2798014050@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 100615 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 11:02:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=100615 Change 100615 by rwatson@rwatson_zoo on 2006/07/05 11:01:35 Integrate TrustedBSD base branch from FreeBSD CVS: - Loop back merge of OpenBSM 1.0 alpha 7 changes from contrib to src/sys. Affected files ... .. //depot/projects/trustedbsd/base/MAINTAINERS#40 integrate .. //depot/projects/trustedbsd/base/bin/cp/cp.c#17 integrate .. //depot/projects/trustedbsd/base/lib/msun/src/e_scalbf.c#6 integrate .. //depot/projects/trustedbsd/base/sbin/dhclient/dhclient.c#6 integrate .. //depot/projects/trustedbsd/base/sys/Makefile#12 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/pmap.c#31 integrate .. //depot/projects/trustedbsd/base/sys/amd64/conf/GENERIC#24 integrate .. //depot/projects/trustedbsd/base/sys/bsm/audit_kevents.h#4 integrate .. //depot/projects/trustedbsd/base/sys/bsm/audit_record.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-chipset.c#38 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-lowlevel.c#18 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-pci.h#28 integrate .. //depot/projects/trustedbsd/base/sys/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp.c#33 integrate .. //depot/projects/trustedbsd/base/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_aue.c#33 integrate .. //depot/projects/trustedbsd/base/sys/i386/conf/GENERIC#56 integrate .. //depot/projects/trustedbsd/base/sys/ia64/include/ieeefp.h#4 integrate .. //depot/projects/trustedbsd/base/sys/net/bpf.c#42 integrate .. //depot/projects/trustedbsd/base/sys/net/if_enc.c#3 integrate .. //depot/projects/trustedbsd/base/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/trustedbsd/base/sys/security/audit/audit.h#3 integrate .. //depot/projects/trustedbsd/base/sys/security/audit/audit_arg.c#4 integrate .. //depot/projects/trustedbsd/base/tools/kerneldoc/Doxyfile#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/Makefile#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Dependencies#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-cam#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-geom#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-kern#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-linux#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Doxyfile-vm#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/Makefile#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/README#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/common-Doxyfile#1 branch .. //depot/projects/trustedbsd/base/tools/kerneldoc/subsys/notreviewed.dox#1 branch .. //depot/projects/trustedbsd/base/usr.bin/calendar/calendars/calendar.freebsd#50 integrate .. //depot/projects/trustedbsd/base/usr.sbin/mtree/misc.c#7 integrate .. //depot/projects/trustedbsd/base/usr.sbin/mtree/mtree.8#14 integrate .. //depot/projects/trustedbsd/base/usr.sbin/mtree/mtree.h#4 integrate .. //depot/projects/trustedbsd/base/usr.sbin/mtree/spec.c#8 integrate .. //depot/projects/trustedbsd/base/usr.sbin/mtree/test/test05.sh#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/mtree/verify.c#9 integrate .. //depot/projects/trustedbsd/base/usr.sbin/sade/Makefile#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/command.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/config.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/devices.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/disks.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/dispatch.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/dmenu.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/globals.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/help/partition.hlp#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/help/slice.hlp#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/install.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/keymap.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/label.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/list.h#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/main.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/menus.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/misc.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/msg.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/rtermcap.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/sade.8#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/sade.h#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/system.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/termcap.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/usb.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/variable.c#1 branch .. //depot/projects/trustedbsd/base/usr.sbin/sade/wizard.c#1 branch Differences ... ==== //depot/projects/trustedbsd/base/MAINTAINERS#40 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.136 2006/07/01 10:51:54 markm Exp $ +$FreeBSD: src/MAINTAINERS,v 1.137 2006/07/04 02:01:48 brooks Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -59,8 +59,6 @@ Keep in sync with -STABLE. etc/sendmail gshapiro Pre-commit review requested. Keep in sync with -STABLE. -dhcp mbr Needs to pre-approve commits to contrib/isc-dhcp, so - changes can be made to the isc.org CVS repository. libfetch des Advance notification requested. fetch des Advance notification requested. libpam des Pre-commit review requested. @@ -140,7 +138,6 @@ bin/dd/Makefile:MAINTAINER= green@FreeBSD.org games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch -sbin/dhclient/Makefile.inc:MAINTAINER= mbr sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org ==== //depot/projects/trustedbsd/base/bin/cp/cp.c#17 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.52 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.53 2006/07/04 20:52:36 maxim Exp $"); /* * Cp copies source files to target files. @@ -476,6 +476,7 @@ } if (errno) err(1, "fts_read"); + fts_close(ftsp); return (rval); } ==== //depot/projects/trustedbsd/base/lib/msun/src/e_scalbf.c#6 (text+ko) ==== @@ -14,7 +14,7 @@ */ #ifndef lint -static char rcsid[] = "$FreeBSD: src/lib/msun/src/e_scalbf.c,v 1.10 2005/12/06 20:12:38 obrien Exp $"; +static char rcsid[] = "$FreeBSD: src/lib/msun/src/e_scalbf.c,v 1.11 2006/07/05 02:16:29 bde Exp $"; #endif #include "math.h" @@ -42,5 +42,3 @@ return scalbnf(x,(int)fn); #endif } - -__weak_reference(scalbf, ldexpf); ==== //depot/projects/trustedbsd/base/sbin/dhclient/dhclient.c#6 (text+ko) ==== @@ -54,7 +54,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.15 2006/05/23 16:57:47 imp Exp $"); +__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.16 2006/07/03 22:05:38 jkim Exp $"); #include "dhcpd.h" #include "privsep.h" @@ -1480,7 +1480,6 @@ } } -#ifdef SEND_CLIENT_IDENTIFIER /* set unique client identifier */ char client_ident[sizeof(struct hardware)]; if (!options[DHO_DHCP_CLIENT_IDENTIFIER]) { @@ -1494,7 +1493,6 @@ options[DHO_DHCP_CLIENT_IDENTIFIER]->buf_size = hwlen+1; options[DHO_DHCP_CLIENT_IDENTIFIER]->timeout = 0xFFFFFFFF; } -#endif /* Set up the option buffer... */ ip->client->packet_length = cons_options(NULL, &ip->client->packet, 0, @@ -1606,7 +1604,6 @@ } } -#ifdef SEND_CLIENT_IDENTIFIER /* set unique client identifier */ char client_ident[sizeof(struct hardware)]; if (!options[DHO_DHCP_CLIENT_IDENTIFIER]) { @@ -1620,7 +1617,6 @@ options[DHO_DHCP_CLIENT_IDENTIFIER]->buf_size = hwlen+1; options[DHO_DHCP_CLIENT_IDENTIFIER]->timeout = 0xFFFFFFFF; } -#endif /* Set up the option buffer... */ ip->client->packet_length = cons_options(NULL, &ip->client->packet, 0, ==== //depot/projects/trustedbsd/base/sys/Makefile#12 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/trustedbsd/base/sys/amd64/amd64/pmap.c#31 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.564 2006/07/05 07:04:31 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -2969,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3022,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3082,7 +3071,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3093,7 +3098,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* ==== //depot/projects/trustedbsd/base/sys/amd64/conf/GENERIC#24 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/trustedbsd/base/sys/bsm/audit_kevents.h#4 (text+ko) ==== @@ -30,8 +30,8 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/base/sys/bsm/audit_kevents.h#3 $ - * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.5 2006/02/06 01:12:46 rwatson Exp $ + * $P4: //depot/projects/trustedbsd/base/sys/bsm/audit_kevents.h#4 $ + * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.6 2006/07/03 14:45:43 rwatson Exp $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ @@ -384,7 +384,24 @@ #define AUE_ACL_DELETE_FD 403 /* FreeBSD. */ #define AUE_ACL_CHECK_FILE 404 /* FreeBSD. */ #define AUE_ACL_CHECK_FD 405 /* FreeBSD. */ -#define AUE_SYSARCH 406 /* FreeBSD. */ +#define AUE_ACL_GET_LINK 406 /* FreeBSD. */ +#define AUE_ACL_SET_LINK 407 /* FreeBSD. */ +#define AUE_ACL_DELETE_LINK 408 /* FreeBSD. */ +#define AUE_ACL_CHECK_LINK 409 /* FreeBSD. */ +#define AUE_SYSARCH 410 /* FreeBSD. */ +#define AUE_EXTATTRCTL 411 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FILE 412 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FILE 413 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FILE 414 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FILE 415 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FD 416 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FD 417 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FD 418 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FD 419 /* FreeBSD. */ +#define AUE_EXTATTR_GET_LINK 420 /* FreeBSD. */ +#define AUE_EXTATTR_SET_LINK 421 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_LINK 422 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_LINK 423 /* FreeBSD. */ /* * Darwin BSM uses a number of AUE_O_* definitions, which are aliased to the ==== //depot/projects/trustedbsd/base/sys/bsm/audit_record.h#3 (text) ==== @@ -31,12 +31,14 @@ * @APPLE_BSD_LICENSE_HEADER_END@ * * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#13 $ - * $FreeBSD: src/sys/bsm/audit_record.h,v 1.2 2006/06/05 13:00:52 rwatson Exp $ + * $FreeBSD: src/sys/bsm/audit_record.h,v 1.3 2006/07/03 14:44:13 rwatson Exp $ */ #ifndef _BSM_AUDIT_RECORD_H_ #define _BSM_AUDIT_RECORD_H_ +#include /* struct timeval */ + /* * Token type identifiers. */ ==== //depot/projects/trustedbsd/base/sys/dev/ata/ata-chipset.c#38 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.164 2006/06/28 09:59:09 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.165 2006/07/04 20:36:03 sos Exp $"); #include "opt_ata.h" #include @@ -142,6 +142,7 @@ static void ata_promise_queue_hpkt(struct ata_pci_controller *ctlr, u_int32_t hpkt); static void ata_promise_next_hpkt(struct ata_pci_controller *ctlr); static int ata_serverworks_chipinit(device_t dev); +static int ata_serverworks_allocate(device_t dev); static void ata_serverworks_setmode(device_t dev, int mode); static int ata_sii_chipinit(device_t dev); static int ata_cmd_allocate(device_t dev); @@ -1894,6 +1895,8 @@ for (i = ATA_DATA; i < ATA_MAX_RES; i++) ch->r_io[i].res = ctlr->r_res2; + + /* setup ATA registers */ ch->r_io[ATA_DATA].offset = ch_offset + 0x00; ch->r_io[ATA_FEATURE].offset = ch_offset + 0x06; ch->r_io[ATA_COUNT].offset = ch_offset + 0x08; @@ -1906,9 +1909,13 @@ ch->r_io[ATA_STATUS].offset = ch_offset + 0x1c; ch->r_io[ATA_ALTSTAT].offset = ch_offset + 0x28; ch->r_io[ATA_CONTROL].offset = ch_offset + 0x29; + + /* setup DMA registers */ ch->r_io[ATA_SSTATUS].offset = ch_offset + 0x100; ch->r_io[ATA_SERROR].offset = ch_offset + 0x104; ch->r_io[ATA_SCONTROL].offset = ch_offset + 0x108; + + /* setup SATA registers */ ch->r_io[ATA_BMCMD_PORT].offset = ch_offset + 0x70; ch->r_io[ATA_BMSTAT_PORT].offset = ch_offset + 0x72; ch->r_io[ATA_BMDTP_PORT].offset = ch_offset + 0x74; @@ -3890,11 +3897,14 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, - { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, - { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, - { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, - { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, + {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, + { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, + { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, + { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, + { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, + { ATA_HT1000, 0x00, SWKS100, 0x00, ATA_UDMA5, "HT1000" }, + { ATA_HT1000_S1, 0x00, SWKS100, 0x00, ATA_SA150, "HT1000 SATA" }, + { ATA_HT1000_S2, 0x00, SWKSMIO, 0x00, ATA_SA150, "HT1000 SATA mmio" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; @@ -3917,7 +3927,19 @@ if (ata_setup_interrupt(dev)) return ENXIO; - if (ctlr->chip->cfg1 == SWKS33) { + if (ctlr->chip->cfg1 == SWKSMIO) { + ctlr->r_type2 = SYS_RES_MEMORY; + ctlr->r_rid2 = PCIR_BAR(5); + if (!(ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2, + &ctlr->r_rid2, RF_ACTIVE))) + return ENXIO; + + ctlr->channels = 4; + ctlr->allocate = ata_serverworks_allocate; + ctlr->setmode = ata_sata_setmode; + return 0; + } + else if (ctlr->chip->cfg1 == SWKS33) { device_t *children; int nchildren, i; @@ -3943,6 +3965,46 @@ return 0; } +static int +ata_serverworks_allocate(device_t dev) +{ + struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(dev)); + struct ata_channel *ch = device_get_softc(dev); + int ch_offset; + int i; + + ch_offset = ch->unit * 0x100; + + for (i = ATA_DATA; i < ATA_MAX_RES; i++) + ch->r_io[i].res = ctlr->r_res2; + + /* setup ATA registers */ + ch->r_io[ATA_DATA].offset = ch_offset + 0x00; + ch->r_io[ATA_FEATURE].offset = ch_offset + 0x04; + ch->r_io[ATA_COUNT].offset = ch_offset + 0x08; + ch->r_io[ATA_SECTOR].offset = ch_offset + 0x0c; + ch->r_io[ATA_CYL_LSB].offset = ch_offset + 0x10; + ch->r_io[ATA_CYL_MSB].offset = ch_offset + 0x14; + ch->r_io[ATA_DRIVE].offset = ch_offset + 0x18; + ch->r_io[ATA_COMMAND].offset = ch_offset + 0x1c; + ch->r_io[ATA_CONTROL].offset = ch_offset + 0x20; + ata_default_registers(dev); + + /* setup DMA registers */ + ch->r_io[ATA_BMCMD_PORT].offset = ch_offset + 0x30; + ch->r_io[ATA_BMSTAT_PORT].offset = ch_offset + 0x32; + ch->r_io[ATA_BMDTP_PORT].offset = ch_offset + 0x34; + + /* setup SATA registers */ + ch->r_io[ATA_SSTATUS].offset = ch_offset + 0x40; + ch->r_io[ATA_SERROR].offset = ch_offset + 0x44; + ch->r_io[ATA_SCONTROL].offset = ch_offset + 0x48; + + ch->flags |= ATA_NO_SLAVE; + ata_pci_hw(dev); + return 0; +} + static void ata_serverworks_setmode(device_t dev, int mode) { @@ -4200,6 +4262,7 @@ ch->r_io[ATA_CONTROL].offset = 0x8a + (unit01 << 6) + (unit10 << 8); ch->r_io[ATA_IDX_ADDR].res = ctlr->r_res2; ata_default_registers(dev); + ch->r_io[ATA_BMCMD_PORT].res = ctlr->r_res2; ch->r_io[ATA_BMCMD_PORT].offset = 0x00 + (unit01 << 3) + (unit10 << 8); ch->r_io[ATA_BMSTAT_PORT].res = ctlr->r_res2; ==== //depot/projects/trustedbsd/base/sys/dev/ata/ata-lowlevel.c#18 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.76 2006/01/18 09:14:55 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.77 2006/07/04 20:36:03 sos Exp $"); #include "opt_ata.h" #include @@ -719,7 +719,7 @@ DELAY(20); } if (timeout <= 0) { - device_printf(request->dev,"timeout waiting for ATAPI ready\n"); + device_printf(request->dev, "timeout waiting for ATAPI ready\n"); request->result = EIO; return -1; } ==== //depot/projects/trustedbsd/base/sys/dev/ata/ata-pci.h#28 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.64 2006/03/13 14:01:37 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.65 2006/07/04 20:36:03 sos Exp $ */ /* structure holding chipset config info */ @@ -249,6 +249,9 @@ #define ATA_CSB5 0x02121166 #define ATA_CSB6 0x02131166 #define ATA_CSB6_1 0x02171166 +#define ATA_HT1000 0x02141166 +#define ATA_HT1000_S1 0x024b1166 +#define ATA_HT1000_S2 0x024a1166 #define ATA_SILICON_IMAGE_ID 0x1095 #define ATA_SII3114 0x31141095 @@ -362,6 +365,7 @@ #define SWKS33 0 #define SWKS66 1 #define SWKS100 2 +#define SWKSMIO 3 #define SIIMEMIO 1 #define SIIINTR 0x01 ==== //depot/projects/trustedbsd/base/sys/dev/atkbdc/atkbdc_isa.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbdc_isa.c,v 1.35 2006/06/12 14:46:44 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbdc_isa.c,v 1.36 2006/07/03 23:40:58 jkim Exp $"); #include "opt_kbd.h" @@ -112,15 +112,21 @@ * The AT keyboard controller uses two ports (a command/data port * 0x60 and a status port 0x64), which may be given to us in * one resource (0x60 through 0x64) or as two separate resources - * (0x60 and 0x64). Furthermore, /boot/device.hints may contain - * just one port, 0x60. We shall adjust resource settings - * so that these two ports are available as two separate resources. + * (0x60 and 0x64). Some brain-damaged ACPI BIOS has reversed + * command/data port and status port. Furthermore, /boot/device.hints + * may contain just one port, 0x60. We shall adjust resource settings + * so that these two ports are available as two separate resources + * in correct order. */ device_quiet(dev); rid = 0; if (bus_get_resource(dev, SYS_RES_IOPORT, rid, &start, &count) != 0) return ENXIO; - if (count > 1) /* adjust the count */ + if (start == IO_KBD + KBD_STATUS_PORT) { + start = IO_KBD; + count++; + } + if (count > 1) /* adjust the count and/or start port */ bus_set_resource(dev, SYS_RES_IOPORT, rid, start, 1); port0 = bus_alloc_resource_any(dev, SYS_RES_IOPORT, &rid, RF_ACTIVE); if (port0 == NULL) ==== //depot/projects/trustedbsd/base/sys/dev/isp/isp.c#33 (text+ko) ==== @@ -34,7 +34,7 @@ */ #ifdef __FreeBSD__ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp.c,v 1.120 2006/07/03 08:24:09 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp.c,v 1.121 2006/07/03 20:56:48 mjacob Exp $"); #endif /* @@ -1329,7 +1329,11 @@ icbp->icb_hardaddr = 0; } - if (IS_2322(isp) || IS_24XX(isp)) { + /* + * Our life seems so much better with 2200s and later with + * the latest f/w if we set Hard Address. + */ + if (ISP_FW_NEWER_THAN(isp, 2, 2, 5)) { icbp->icb_fwoptions |= ICBOPT_HARD_ADDRESS; } @@ -2238,7 +2242,7 @@ hival = FC_PORT_ID; break; default: - isp_prt(isp, ISP_LOGDEBUG0, "no loop scasn\n"); + isp_prt(isp, ISP_LOGDEBUG0, "no loop topology to scan"); fcp->isp_loopstate = LOOP_LSCAN_DONE; return (0); } ==== //depot/projects/trustedbsd/base/sys/dev/sk/if_sk.c#3 (text) ==== @@ -48,7 +48,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.125 2006/06/07 09:05:20 yongari Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.126 2006/07/05 04:56:50 yongari Exp $"); /* * SysKonnect SK-NET gigabit ethernet driver for FreeBSD. Supports @@ -140,7 +140,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.125 2006/06/07 09:05:20 yongari Exp $"; + "$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.126 2006/07/05 04:56:50 yongari Exp $"; #endif static struct sk_type sk_devs[] = { @@ -2871,8 +2871,8 @@ SK_IF_LOCK(sc_if); /* - * Reclaim first as there is a possibility of loosing Tx completion - * interrupt. + * Reclaim first as there is a possibility of losing Tx completion + * interrupts. */ sk_txeof(sc_if); if (sc_if->sk_cdata.sk_tx_cnt != 0) { ==== //depot/projects/trustedbsd/base/sys/dev/usb/if_aue.c#33 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/if_aue.c,v 1.96 2006/02/14 12:44:55 glebius Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/if_aue.c,v 1.97 2006/07/05 00:49:26 thompsa Exp $"); /* * ADMtek AN986 Pegasus and AN8511 Pegasus II USB to ethernet driver. @@ -524,6 +524,7 @@ struct ifnet *ifp; struct ifmultiaddr *ifma; u_int32_t h = 0, i; + u_int8_t hashtbl[8] = { 0, 0, 0, 0, 0, 0, 0, 0 }; ifp = sc->aue_ifp; @@ -534,10 +535,6 @@ AUE_CLRBIT(sc, AUE_CTL0, AUE_CTL0_ALLMULTI); - /* first, zot all the existing hash bits */ - for (i = 0; i < 8; i++) - aue_csr_write_1(sc, AUE_MAR0 + i, 0); - /* now program new ones */ IF_ADDR_LOCK(ifp); #if __FreeBSD_version >= 500000 @@ -550,10 +547,14 @@ continue; h = ether_crc32_le(LLADDR((struct sockaddr_dl *) ifma->ifma_addr), ETHER_ADDR_LEN) & ((1 << AUE_BITS) - 1); - AUE_SETBIT(sc, AUE_MAR + (h >> 3), 1 << (h & 0x7)); + hashtbl[(h >> 3)] |= 1 << (h & 0x7); } IF_ADDR_UNLOCK(ifp); + /* write the hashtable */ + for (i = 0; i < 8; i++) + aue_csr_write_1(sc, AUE_MAR0 + i, hashtbl[i]); + return; } ==== //depot/projects/trustedbsd/base/sys/i386/conf/GENERIC#56 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.452 2006/06/26 22:03:21 babkin Exp $ +# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.453 2006/07/05 02:32:54 davidxu Exp $ cpu I486_CPU cpu I586_CPU @@ -30,7 +30,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/trustedbsd/base/sys/ia64/include/ieeefp.h#4 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/include/ieeefp.h,v 1.4 2003/08/11 21:25:19 marcel Exp $ + * $FreeBSD: src/sys/ia64/include/ieeefp.h,v 1.5 2006/07/05 06:10:21 bde Exp $ */ #ifndef _MACHINE_IEEEFP_H_ @@ -39,10 +39,10 @@ #define FP_X_IMP IA64_FPSR_TRAP_ID /* imprecise(inexact) exception */ typedef enum { - FP_RZ=0, /* round to zero (truncate) */ - FP_RM=1, /* round toward negative infinity */ - FP_RN=2, /* round to nearest representable number */ - FP_RP=3 /* round toward positive infinity */ + FP_RN = 0, /* round to nearest */ + FP_RM, /* round toward minus infinity */ + FP_RP, /* round toward plus infinity */ + FP_RZ /* round toward zero */ } fp_rnd_t; -#endif /* _MACHINE_IEEEFP_H_ */ +#endif /* !_MACHINE_IEEEFP_H_ */ ==== //depot/projects/trustedbsd/base/sys/net/bpf.c#42 (text+ko) ==== @@ -33,7 +33,7 @@ * * @(#)bpf.c 8.4 (Berkeley) 1/9/95 * - * $FreeBSD: src/sys/net/bpf.c,v 1.168 2006/06/15 15:39:12 csjp Exp $ + * $FreeBSD: src/sys/net/bpf.c,v 1.169 2006/07/03 20:02:06 csjp Exp $ */ #include "opt_bpf.h" @@ -1152,7 +1152,7 @@ d->bd_pid = curthread->td_proc->p_pid; kn->kn_fop = &bpfread_filtops; kn->kn_hook = d; - knlist_add(&d->bd_sel.si_note, kn, 0); + knlist_add(&d->bd_sel.si_note, kn, 1); BPFD_UNLOCK(d); return (0); @@ -1163,9 +1163,7 @@ { struct bpf_d *d = (struct bpf_d *)kn->kn_hook; - BPFD_LOCK(d); knlist_remove(&d->bd_sel.si_note, kn, 0); - BPFD_UNLOCK(d); } static int ==== //depot/projects/trustedbsd/base/sys/net/if_enc.c#3 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/net/if_enc.c,v 1.3 2006/06/28 21:57:35 thompsa Exp $ + * $FreeBSD: src/sys/net/if_enc.c,v 1.4 2006/07/04 23:09:11 thompsa Exp $ */ #include @@ -86,27 +86,18 @@ static int enc_output(struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst, struct rtentry *rt); static int enc_clone_create(struct if_clone *, int); -static int enc_clone_destroy(struct ifnet *); +static void enc_clone_destroy(struct ifnet *); IFC_SIMPLE_DECLARE(enc, 1); -static int +static void enc_clone_destroy(struct ifnet *ifp) { + KASSERT(ifp != encif, ("%s: destroying encif", __func__)); - mtx_lock(&enc_mtx); - /* do not allow enc0 to be destroyed */ - if (encif == ifp) { - mtx_unlock(&enc_mtx); - return (EBUSY); - } - mtx_unlock(&enc_mtx); - bpfdetach(ifp); if_detach(ifp); if_free(ifp); - - return (0); } static int ==== //depot/projects/trustedbsd/base/sys/netinet/libalias/libalias.3#3 (text+ko) ==== @@ -23,9 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/sys/netinet/libalias/libalias.3,v 1.54 2005/11/24 14:17:35 ru Exp $ +.\" $FreeBSD: src/sys/netinet/libalias/libalias.3,v 1.55 2006/07/04 20:39:38 maxim Exp $ .\" -.Dd January 17, 2004 +.Dd July 04, 2006 .Dt LIBALIAS 3 .Os .Sh NAME @@ -1011,8 +1011,3 @@ a unique aliasing link can be established. In an alternate operating mode, the first choice of an aliasing port is also random and unrelated to the local port number. -.Sh BUGS -PPTP aliasing does not work when more than one internal client -connects to the same external server at the same time, because -PPTP requires a single TCP control connection to be established -between any two IP addresses. ==== //depot/projects/trustedbsd/base/sys/security/audit/audit.h#3 (text) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/security/audit/audit.h,v 1.6 2006/03/19 17:34:00 rwatson Exp $ + * $FreeBSD: src/sys/security/audit/audit.h,v 1.7 2006/07/03 14:55:55 rwatson Exp $ */ /* @@ -151,7 +151,7 @@ void audit_arg_process(struct proc *p); void audit_arg_signum(u_int signum); void audit_arg_socket(int sodomain, int sotype, int soprotocol); -void audit_arg_sockaddr(struct thread *td, struct sockaddr *so); +void audit_arg_sockaddr(struct thread *td, struct sockaddr *sa); void audit_arg_auid(uid_t auid); void audit_arg_auditinfo(struct auditinfo *au_info); void audit_arg_upath(struct thread *td, char *upath, u_int64_t flags); ==== //depot/projects/trustedbsd/base/sys/security/audit/audit_arg.c#4 (text) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/security/audit/audit_arg.c,v 1.4 2006/06/05 16:12:00 rwatson Exp $ + * $FreeBSD: src/sys/security/audit/audit_arg.c,v 1.5 2006/07/03 14:55:55 rwatson Exp $ */ #include @@ -357,13 +357,14 @@ { struct kaudit_record *ar; + KASSERT(p != NULL, ("audit_arg_process: p == NULL")); + + PROC_LOCK_ASSERT(p, MA_OWNED); + ar = currecord(); - if ((ar == NULL) || (p == NULL)) + if (ar == NULL) return; - /* - * XXXAUDIT: PROC_LOCK_ASSERT(p); - */ ar->k_ar.ar_arg_auid = p->p_au->ai_auid; ar->k_ar.ar_arg_euid = p->p_ucred->cr_uid; ar->k_ar.ar_arg_egid = p->p_ucred->cr_groups[0]; @@ -404,21 +405,21 @@ ARG_SET_VALID(ar, ARG_SOCKINFO); } -/* - * XXXAUDIT: Argument here should be 'sa' not 'so'. Caller is responsible - * for synchronizing access to the source of the address. - */ void -audit_arg_sockaddr(struct thread *td, struct sockaddr *so) +audit_arg_sockaddr(struct thread *td, struct sockaddr *sa) { struct kaudit_record *ar; + KASSERT(td != NULL, ("audit_arg_sockaddr: td == NULL")); + KASSERT(sa != NULL, ("audit_arg_sockaddr: sa == NULL")); + ar = currecord(); - if (ar == NULL || td == NULL || so == NULL) + if (ar == NULL) return; - bcopy(so, &ar->k_ar.ar_arg_sockaddr, sizeof(ar->k_ar.ar_arg_sockaddr)); - switch (so->sa_family) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 5 11:21:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AE06016A4E1; Wed, 5 Jul 2006 11:21: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 6F75716A4EB for ; Wed, 5 Jul 2006 11:21: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 DD0C343D64 for ; Wed, 5 Jul 2006 11:21:36 +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 k65BLaqH016818 for ; Wed, 5 Jul 2006 11:21:36 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 k65BLYtj016815 for perforce@freebsd.org; Wed, 5 Jul 2006 11:21:34 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 11:21:34 GMT Message-Id: <200607051121.k65BLYtj016815@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 100616 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 11:21:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=100616 Change 100616 by rwatson@rwatson_zoo on 2006/07/05 11:20:32 Integrate TrustedBSD audit3 branch from TrustedBSD base branch: - Loop back merge of OpenBSM 1.0 alpha 7 changes to src/sys/bsm and src/sys/security/audit from src/contrib/openbsm. Affected files ... .. //depot/projects/trustedbsd/audit3/MAINTAINERS#10 integrate .. //depot/projects/trustedbsd/audit3/bin/cp/cp.c#4 integrate .. //depot/projects/trustedbsd/audit3/lib/msun/src/e_scalbf.c#4 integrate .. //depot/projects/trustedbsd/audit3/sbin/dhclient/dhclient.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/Makefile#7 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/amd64/pmap.c#10 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/conf/GENERIC#8 integrate .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#24 integrate .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#16 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-chipset.c#12 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-lowlevel.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-pci.h#8 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/isp/isp.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/usb/if_aue.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/conf/GENERIC#9 integrate .. //depot/projects/trustedbsd/audit3/sys/ia64/include/ieeefp.h#2 integrate .. //depot/projects/trustedbsd/audit3/sys/net/bpf.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_enc.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit.h#17 integrate .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_arg.c#19 integrate .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/Doxyfile#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/Makefile#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Dependencies#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-cam#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-geom#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-kern#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-linux#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Doxyfile-vm#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/Makefile#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/README#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/common-Doxyfile#1 branch .. //depot/projects/trustedbsd/audit3/tools/kerneldoc/subsys/notreviewed.dox#1 branch .. //depot/projects/trustedbsd/audit3/usr.bin/calendar/calendars/calendar.freebsd#12 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/mtree/misc.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/mtree/mtree.8#5 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/mtree/mtree.h#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/mtree/spec.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/mtree/test/test05.sh#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/mtree/verify.c#3 integrate .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/Makefile#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/command.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/config.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/devices.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/disks.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/dispatch.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/dmenu.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/globals.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/help/partition.hlp#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/help/slice.hlp#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/install.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/keymap.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/label.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/list.h#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/main.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/menus.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/misc.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/msg.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/rtermcap.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/sade.8#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/sade.h#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/system.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/termcap.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/usb.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/variable.c#1 branch .. //depot/projects/trustedbsd/audit3/usr.sbin/sade/wizard.c#1 branch Differences ... ==== //depot/projects/trustedbsd/audit3/MAINTAINERS#10 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.136 2006/07/01 10:51:54 markm Exp $ +$FreeBSD: src/MAINTAINERS,v 1.137 2006/07/04 02:01:48 brooks Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -59,8 +59,6 @@ Keep in sync with -STABLE. etc/sendmail gshapiro Pre-commit review requested. Keep in sync with -STABLE. -dhcp mbr Needs to pre-approve commits to contrib/isc-dhcp, so - changes can be made to the isc.org CVS repository. libfetch des Advance notification requested. fetch des Advance notification requested. libpam des Pre-commit review requested. @@ -140,7 +138,6 @@ bin/dd/Makefile:MAINTAINER= green@FreeBSD.org games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch -sbin/dhclient/Makefile.inc:MAINTAINER= mbr sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org ==== //depot/projects/trustedbsd/audit3/bin/cp/cp.c#4 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.52 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.53 2006/07/04 20:52:36 maxim Exp $"); /* * Cp copies source files to target files. @@ -476,6 +476,7 @@ } if (errno) err(1, "fts_read"); + fts_close(ftsp); return (rval); } ==== //depot/projects/trustedbsd/audit3/lib/msun/src/e_scalbf.c#4 (text+ko) ==== @@ -14,7 +14,7 @@ */ #ifndef lint -static char rcsid[] = "$FreeBSD: src/lib/msun/src/e_scalbf.c,v 1.10 2005/12/06 20:12:38 obrien Exp $"; +static char rcsid[] = "$FreeBSD: src/lib/msun/src/e_scalbf.c,v 1.11 2006/07/05 02:16:29 bde Exp $"; #endif #include "math.h" @@ -42,5 +42,3 @@ return scalbnf(x,(int)fn); #endif } - -__weak_reference(scalbf, ldexpf); ==== //depot/projects/trustedbsd/audit3/sbin/dhclient/dhclient.c#4 (text+ko) ==== @@ -54,7 +54,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.15 2006/05/23 16:57:47 imp Exp $"); +__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.16 2006/07/03 22:05:38 jkim Exp $"); #include "dhcpd.h" #include "privsep.h" @@ -1480,7 +1480,6 @@ } } -#ifdef SEND_CLIENT_IDENTIFIER /* set unique client identifier */ char client_ident[sizeof(struct hardware)]; if (!options[DHO_DHCP_CLIENT_IDENTIFIER]) { @@ -1494,7 +1493,6 @@ options[DHO_DHCP_CLIENT_IDENTIFIER]->buf_size = hwlen+1; options[DHO_DHCP_CLIENT_IDENTIFIER]->timeout = 0xFFFFFFFF; } -#endif /* Set up the option buffer... */ ip->client->packet_length = cons_options(NULL, &ip->client->packet, 0, @@ -1606,7 +1604,6 @@ } } -#ifdef SEND_CLIENT_IDENTIFIER /* set unique client identifier */ char client_ident[sizeof(struct hardware)]; if (!options[DHO_DHCP_CLIENT_IDENTIFIER]) { @@ -1620,7 +1617,6 @@ options[DHO_DHCP_CLIENT_IDENTIFIER]->buf_size = hwlen+1; options[DHO_DHCP_CLIENT_IDENTIFIER]->timeout = 0xFFFFFFFF; } -#endif /* Set up the option buffer... */ ip->client->packet_length = cons_options(NULL, &ip->client->packet, 0, ==== //depot/projects/trustedbsd/audit3/sys/Makefile#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/trustedbsd/audit3/sys/amd64/amd64/pmap.c#10 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.564 2006/07/05 07:04:31 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -2969,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3022,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3082,7 +3071,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3093,7 +3098,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* ==== //depot/projects/trustedbsd/audit3/sys/amd64/conf/GENERIC#8 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#24 (text+ko) ==== @@ -30,8 +30,8 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#23 $ - * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.5 2006/02/06 01:12:46 rwatson Exp $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#24 $ + * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.6 2006/07/03 14:45:43 rwatson Exp $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#16 (text+ko) ==== @@ -30,8 +30,8 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#15 $ - * $FreeBSD: src/sys/bsm/audit_record.h,v 1.2 2006/06/05 13:00:52 rwatson Exp $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#16 $ + * $FreeBSD: src/sys/bsm/audit_record.h,v 1.3 2006/07/03 14:44:13 rwatson Exp $ */ #ifndef _BSM_AUDIT_RECORD_H_ ==== //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-chipset.c#12 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.164 2006/06/28 09:59:09 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.165 2006/07/04 20:36:03 sos Exp $"); #include "opt_ata.h" #include @@ -142,6 +142,7 @@ static void ata_promise_queue_hpkt(struct ata_pci_controller *ctlr, u_int32_t hpkt); static void ata_promise_next_hpkt(struct ata_pci_controller *ctlr); static int ata_serverworks_chipinit(device_t dev); +static int ata_serverworks_allocate(device_t dev); static void ata_serverworks_setmode(device_t dev, int mode); static int ata_sii_chipinit(device_t dev); static int ata_cmd_allocate(device_t dev); @@ -1894,6 +1895,8 @@ for (i = ATA_DATA; i < ATA_MAX_RES; i++) ch->r_io[i].res = ctlr->r_res2; + + /* setup ATA registers */ ch->r_io[ATA_DATA].offset = ch_offset + 0x00; ch->r_io[ATA_FEATURE].offset = ch_offset + 0x06; ch->r_io[ATA_COUNT].offset = ch_offset + 0x08; @@ -1906,9 +1909,13 @@ ch->r_io[ATA_STATUS].offset = ch_offset + 0x1c; ch->r_io[ATA_ALTSTAT].offset = ch_offset + 0x28; ch->r_io[ATA_CONTROL].offset = ch_offset + 0x29; + + /* setup DMA registers */ ch->r_io[ATA_SSTATUS].offset = ch_offset + 0x100; ch->r_io[ATA_SERROR].offset = ch_offset + 0x104; ch->r_io[ATA_SCONTROL].offset = ch_offset + 0x108; + + /* setup SATA registers */ ch->r_io[ATA_BMCMD_PORT].offset = ch_offset + 0x70; ch->r_io[ATA_BMSTAT_PORT].offset = ch_offset + 0x72; ch->r_io[ATA_BMDTP_PORT].offset = ch_offset + 0x74; @@ -3890,11 +3897,14 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, - { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, - { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, - { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, - { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, + {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, + { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, + { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, + { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, + { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, + { ATA_HT1000, 0x00, SWKS100, 0x00, ATA_UDMA5, "HT1000" }, + { ATA_HT1000_S1, 0x00, SWKS100, 0x00, ATA_SA150, "HT1000 SATA" }, + { ATA_HT1000_S2, 0x00, SWKSMIO, 0x00, ATA_SA150, "HT1000 SATA mmio" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; @@ -3917,7 +3927,19 @@ if (ata_setup_interrupt(dev)) return ENXIO; - if (ctlr->chip->cfg1 == SWKS33) { + if (ctlr->chip->cfg1 == SWKSMIO) { + ctlr->r_type2 = SYS_RES_MEMORY; + ctlr->r_rid2 = PCIR_BAR(5); + if (!(ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2, + &ctlr->r_rid2, RF_ACTIVE))) + return ENXIO; + + ctlr->channels = 4; + ctlr->allocate = ata_serverworks_allocate; + ctlr->setmode = ata_sata_setmode; + return 0; + } + else if (ctlr->chip->cfg1 == SWKS33) { device_t *children; int nchildren, i; @@ -3943,6 +3965,46 @@ return 0; } +static int +ata_serverworks_allocate(device_t dev) +{ + struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(dev)); + struct ata_channel *ch = device_get_softc(dev); + int ch_offset; + int i; + + ch_offset = ch->unit * 0x100; + + for (i = ATA_DATA; i < ATA_MAX_RES; i++) + ch->r_io[i].res = ctlr->r_res2; + + /* setup ATA registers */ + ch->r_io[ATA_DATA].offset = ch_offset + 0x00; + ch->r_io[ATA_FEATURE].offset = ch_offset + 0x04; + ch->r_io[ATA_COUNT].offset = ch_offset + 0x08; + ch->r_io[ATA_SECTOR].offset = ch_offset + 0x0c; + ch->r_io[ATA_CYL_LSB].offset = ch_offset + 0x10; + ch->r_io[ATA_CYL_MSB].offset = ch_offset + 0x14; + ch->r_io[ATA_DRIVE].offset = ch_offset + 0x18; + ch->r_io[ATA_COMMAND].offset = ch_offset + 0x1c; + ch->r_io[ATA_CONTROL].offset = ch_offset + 0x20; + ata_default_registers(dev); + + /* setup DMA registers */ + ch->r_io[ATA_BMCMD_PORT].offset = ch_offset + 0x30; + ch->r_io[ATA_BMSTAT_PORT].offset = ch_offset + 0x32; + ch->r_io[ATA_BMDTP_PORT].offset = ch_offset + 0x34; + + /* setup SATA registers */ + ch->r_io[ATA_SSTATUS].offset = ch_offset + 0x40; + ch->r_io[ATA_SERROR].offset = ch_offset + 0x44; + ch->r_io[ATA_SCONTROL].offset = ch_offset + 0x48; + + ch->flags |= ATA_NO_SLAVE; + ata_pci_hw(dev); + return 0; +} + static void ata_serverworks_setmode(device_t dev, int mode) { @@ -4200,6 +4262,7 @@ ch->r_io[ATA_CONTROL].offset = 0x8a + (unit01 << 6) + (unit10 << 8); ch->r_io[ATA_IDX_ADDR].res = ctlr->r_res2; ata_default_registers(dev); + ch->r_io[ATA_BMCMD_PORT].res = ctlr->r_res2; ch->r_io[ATA_BMCMD_PORT].offset = 0x00 + (unit01 << 3) + (unit10 << 8); ch->r_io[ATA_BMSTAT_PORT].res = ctlr->r_res2; ==== //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-lowlevel.c#6 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.76 2006/01/18 09:14:55 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.77 2006/07/04 20:36:03 sos Exp $"); #include "opt_ata.h" #include @@ -719,7 +719,7 @@ DELAY(20); } if (timeout <= 0) { - device_printf(request->dev,"timeout waiting for ATAPI ready\n"); + device_printf(request->dev, "timeout waiting for ATAPI ready\n"); request->result = EIO; return -1; } ==== //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-pci.h#8 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.64 2006/03/13 14:01:37 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.65 2006/07/04 20:36:03 sos Exp $ */ /* structure holding chipset config info */ @@ -249,6 +249,9 @@ #define ATA_CSB5 0x02121166 #define ATA_CSB6 0x02131166 #define ATA_CSB6_1 0x02171166 +#define ATA_HT1000 0x02141166 +#define ATA_HT1000_S1 0x024b1166 +#define ATA_HT1000_S2 0x024a1166 #define ATA_SILICON_IMAGE_ID 0x1095 #define ATA_SII3114 0x31141095 @@ -362,6 +365,7 @@ #define SWKS33 0 #define SWKS66 1 #define SWKS100 2 +#define SWKSMIO 3 #define SIIMEMIO 1 #define SIIINTR 0x01 ==== //depot/projects/trustedbsd/audit3/sys/dev/atkbdc/atkbdc_isa.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbdc_isa.c,v 1.35 2006/06/12 14:46:44 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbdc_isa.c,v 1.36 2006/07/03 23:40:58 jkim Exp $"); #include "opt_kbd.h" @@ -112,15 +112,21 @@ * The AT keyboard controller uses two ports (a command/data port * 0x60 and a status port 0x64), which may be given to us in * one resource (0x60 through 0x64) or as two separate resources - * (0x60 and 0x64). Furthermore, /boot/device.hints may contain - * just one port, 0x60. We shall adjust resource settings - * so that these two ports are available as two separate resources. + * (0x60 and 0x64). Some brain-damaged ACPI BIOS has reversed + * command/data port and status port. Furthermore, /boot/device.hints + * may contain just one port, 0x60. We shall adjust resource settings + * so that these two ports are available as two separate resources + * in correct order. */ device_quiet(dev); rid = 0; if (bus_get_resource(dev, SYS_RES_IOPORT, rid, &start, &count) != 0) return ENXIO; - if (count > 1) /* adjust the count */ + if (start == IO_KBD + KBD_STATUS_PORT) { + start = IO_KBD; + count++; + } + if (count > 1) /* adjust the count and/or start port */ bus_set_resource(dev, SYS_RES_IOPORT, rid, start, 1); port0 = bus_alloc_resource_any(dev, SYS_RES_IOPORT, &rid, RF_ACTIVE); if (port0 == NULL) ==== //depot/projects/trustedbsd/audit3/sys/dev/isp/isp.c#9 (text+ko) ==== @@ -34,7 +34,7 @@ */ #ifdef __FreeBSD__ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp.c,v 1.120 2006/07/03 08:24:09 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp.c,v 1.121 2006/07/03 20:56:48 mjacob Exp $"); #endif /* @@ -1329,7 +1329,11 @@ icbp->icb_hardaddr = 0; } - if (IS_2322(isp) || IS_24XX(isp)) { + /* + * Our life seems so much better with 2200s and later with + * the latest f/w if we set Hard Address. + */ + if (ISP_FW_NEWER_THAN(isp, 2, 2, 5)) { icbp->icb_fwoptions |= ICBOPT_HARD_ADDRESS; } @@ -2238,7 +2242,7 @@ hival = FC_PORT_ID; break; default: - isp_prt(isp, ISP_LOGDEBUG0, "no loop scasn\n"); + isp_prt(isp, ISP_LOGDEBUG0, "no loop topology to scan"); fcp->isp_loopstate = LOOP_LSCAN_DONE; return (0); } ==== //depot/projects/trustedbsd/audit3/sys/dev/sk/if_sk.c#3 (text) ==== @@ -48,7 +48,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.125 2006/06/07 09:05:20 yongari Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.126 2006/07/05 04:56:50 yongari Exp $"); /* * SysKonnect SK-NET gigabit ethernet driver for FreeBSD. Supports @@ -140,7 +140,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.125 2006/06/07 09:05:20 yongari Exp $"; + "$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.126 2006/07/05 04:56:50 yongari Exp $"; #endif static struct sk_type sk_devs[] = { @@ -2871,8 +2871,8 @@ SK_IF_LOCK(sc_if); /* - * Reclaim first as there is a possibility of loosing Tx completion - * interrupt. + * Reclaim first as there is a possibility of losing Tx completion + * interrupts. */ sk_txeof(sc_if); if (sc_if->sk_cdata.sk_tx_cnt != 0) { ==== //depot/projects/trustedbsd/audit3/sys/dev/usb/if_aue.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/if_aue.c,v 1.96 2006/02/14 12:44:55 glebius Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/if_aue.c,v 1.97 2006/07/05 00:49:26 thompsa Exp $"); /* * ADMtek AN986 Pegasus and AN8511 Pegasus II USB to ethernet driver. @@ -524,6 +524,7 @@ struct ifnet *ifp; struct ifmultiaddr *ifma; u_int32_t h = 0, i; + u_int8_t hashtbl[8] = { 0, 0, 0, 0, 0, 0, 0, 0 }; ifp = sc->aue_ifp; @@ -534,10 +535,6 @@ AUE_CLRBIT(sc, AUE_CTL0, AUE_CTL0_ALLMULTI); - /* first, zot all the existing hash bits */ - for (i = 0; i < 8; i++) - aue_csr_write_1(sc, AUE_MAR0 + i, 0); - /* now program new ones */ IF_ADDR_LOCK(ifp); #if __FreeBSD_version >= 500000 @@ -550,10 +547,14 @@ continue; h = ether_crc32_le(LLADDR((struct sockaddr_dl *) ifma->ifma_addr), ETHER_ADDR_LEN) & ((1 << AUE_BITS) - 1); - AUE_SETBIT(sc, AUE_MAR + (h >> 3), 1 << (h & 0x7)); + hashtbl[(h >> 3)] |= 1 << (h & 0x7); } IF_ADDR_UNLOCK(ifp); + /* write the hashtable */ + for (i = 0; i < 8; i++) + aue_csr_write_1(sc, AUE_MAR0 + i, hashtbl[i]); + return; } ==== //depot/projects/trustedbsd/audit3/sys/i386/conf/GENERIC#9 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.452 2006/06/26 22:03:21 babkin Exp $ +# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.453 2006/07/05 02:32:54 davidxu Exp $ cpu I486_CPU cpu I586_CPU @@ -30,7 +30,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/trustedbsd/audit3/sys/ia64/include/ieeefp.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/include/ieeefp.h,v 1.4 2003/08/11 21:25:19 marcel Exp $ + * $FreeBSD: src/sys/ia64/include/ieeefp.h,v 1.5 2006/07/05 06:10:21 bde Exp $ */ #ifndef _MACHINE_IEEEFP_H_ @@ -39,10 +39,10 @@ #define FP_X_IMP IA64_FPSR_TRAP_ID /* imprecise(inexact) exception */ typedef enum { - FP_RZ=0, /* round to zero (truncate) */ - FP_RM=1, /* round toward negative infinity */ - FP_RN=2, /* round to nearest representable number */ - FP_RP=3 /* round toward positive infinity */ + FP_RN = 0, /* round to nearest */ + FP_RM, /* round toward minus infinity */ + FP_RP, /* round toward plus infinity */ + FP_RZ /* round toward zero */ } fp_rnd_t; -#endif /* _MACHINE_IEEEFP_H_ */ +#endif /* !_MACHINE_IEEEFP_H_ */ ==== //depot/projects/trustedbsd/audit3/sys/net/bpf.c#9 (text+ko) ==== @@ -33,7 +33,7 @@ * * @(#)bpf.c 8.4 (Berkeley) 1/9/95 * - * $FreeBSD: src/sys/net/bpf.c,v 1.168 2006/06/15 15:39:12 csjp Exp $ + * $FreeBSD: src/sys/net/bpf.c,v 1.169 2006/07/03 20:02:06 csjp Exp $ */ #include "opt_bpf.h" @@ -1152,7 +1152,7 @@ d->bd_pid = curthread->td_proc->p_pid; kn->kn_fop = &bpfread_filtops; kn->kn_hook = d; - knlist_add(&d->bd_sel.si_note, kn, 0); + knlist_add(&d->bd_sel.si_note, kn, 1); BPFD_UNLOCK(d); return (0); @@ -1163,9 +1163,7 @@ { struct bpf_d *d = (struct bpf_d *)kn->kn_hook; - BPFD_LOCK(d); knlist_remove(&d->bd_sel.si_note, kn, 0); - BPFD_UNLOCK(d); } static int ==== //depot/projects/trustedbsd/audit3/sys/net/if_enc.c#3 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/net/if_enc.c,v 1.3 2006/06/28 21:57:35 thompsa Exp $ + * $FreeBSD: src/sys/net/if_enc.c,v 1.4 2006/07/04 23:09:11 thompsa Exp $ */ #include @@ -86,27 +86,18 @@ static int enc_output(struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst, struct rtentry *rt); static int enc_clone_create(struct if_clone *, int); -static int enc_clone_destroy(struct ifnet *); +static void enc_clone_destroy(struct ifnet *); IFC_SIMPLE_DECLARE(enc, 1); -static int +static void enc_clone_destroy(struct ifnet *ifp) { + KASSERT(ifp != encif, ("%s: destroying encif", __func__)); - mtx_lock(&enc_mtx); - /* do not allow enc0 to be destroyed */ - if (encif == ifp) { - mtx_unlock(&enc_mtx); - return (EBUSY); - } - mtx_unlock(&enc_mtx); - bpfdetach(ifp); if_detach(ifp); if_free(ifp); - - return (0); } static int ==== //depot/projects/trustedbsd/audit3/sys/netinet/libalias/libalias.3#3 (text+ko) ==== @@ -23,9 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/sys/netinet/libalias/libalias.3,v 1.54 2005/11/24 14:17:35 ru Exp $ +.\" $FreeBSD: src/sys/netinet/libalias/libalias.3,v 1.55 2006/07/04 20:39:38 maxim Exp $ .\" -.Dd January 17, 2004 +.Dd July 04, 2006 .Dt LIBALIAS 3 .Os .Sh NAME @@ -1011,8 +1011,3 @@ a unique aliasing link can be established. In an alternate operating mode, the first choice of an aliasing port is also random and unrelated to the local port number. -.Sh BUGS -PPTP aliasing does not work when more than one internal client -connects to the same external server at the same time, because -PPTP requires a single TCP control connection to be established -between any two IP addresses. ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit.h#17 (text+ko) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/security/audit/audit.h,v 1.6 2006/03/19 17:34:00 rwatson Exp $ + * $FreeBSD: src/sys/security/audit/audit.h,v 1.7 2006/07/03 14:55:55 rwatson Exp $ */ /* ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_arg.c#19 (text+ko) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/security/audit/audit_arg.c,v 1.4 2006/06/05 16:12:00 rwatson Exp $ + * $FreeBSD: src/sys/security/audit/audit_arg.c,v 1.5 2006/07/03 14:55:55 rwatson Exp $ */ #include ==== //depot/projects/trustedbsd/audit3/usr.bin/calendar/calendars/calendar.freebsd#12 (text+ko) ==== @@ -1,7 +1,7 @@ /* * FreeBSD * - * $FreeBSD: src/usr.bin/calendar/calendars/calendar.freebsd,v 1.181 2006/06/22 14:22:20 bsam Exp $ + * $FreeBSD: src/usr.bin/calendar/calendars/calendar.freebsd,v 1.183 2006/07/04 23:52:12 yongari Exp $ */ #ifndef _calendar_freebsd_ @@ -139,7 +139,7 @@ 06/29 Daniel Harris born in Lubbock, Texas, United States, 1985 06/29 Andrew Pantyukhin born in Moscow, Russian Federation, 1985 06/30 Guido van Rooij born in Best, Noord-Brabant, the Netherlands, 1965 -07/01 Matthew Dillon born in San Francisco, California, United States, 1966 +07/01 Matthew Dillon born in San Francisco, California, United States, 1966 07/02 Mark Christopher Ovens born in Preston, Lancashire, United Kingdom, 1958 07/02 Vasil Venelinov Dimov born in Shumen, Bulgaria, 1982 07/04 Motoyuki Konno born in Musashino, Tokyo, Japan, 1969 @@ -186,6 +186,7 @@ 08/28 Norikatsu Shigemura born in Fujisawa, Kanagawa, Japan, 1974 08/29 Thomas Gellekum born in Moenchengladbach, Nordrhein-Westfalen, Germany, 1967 08/29 Max Laier born in Karlsruhe, Germany, 1981 +09/01 Pyun YongHyeon born in Kimcheon, Korea, 1968 09/03 Max Khon born in Novosibirsk, USSR, 1976 09/03 Cheng-Lung Sung born in Taipei, Taiwan, Republic of China, 1977 09/05 Mark Robert Vaughan Murray born in Harare, Mashonaland, Zimbabwe, 1961 ==== //depot/projects/trustedbsd/audit3/usr.sbin/mtree/misc.c#3 (text+ko) ==== @@ -33,7 +33,7 @@ #endif /*not lint */ #endif #include -__FBSDID("$FreeBSD: src/usr.sbin/mtree/misc.c,v 1.16 2005/03/29 11:44:17 tobez Exp $"); +__FBSDID("$FreeBSD: src/usr.sbin/mtree/misc.c,v 1.17 2006/07/03 10:55:21 maxim Exp $"); #include #include @@ -66,6 +66,7 @@ {"mode", F_MODE, NEEDVALUE}, {"nlink", F_NLINK, NEEDVALUE}, {"nochange", F_NOCHANGE, 0}, + {"optional", F_OPT, 0}, #ifdef RMD160 {"ripemd160digest", F_RMD160, NEEDVALUE}, #endif ==== //depot/projects/trustedbsd/audit3/usr.sbin/mtree/mtree.8#5 (text+ko) ==== @@ -26,9 +26,9 @@ .\" SUCH DAMAGE. .\" .\" From: @(#)mtree.8 8.2 (Berkeley) 12/11/93 -.\" $FreeBSD: src/usr.sbin/mtree/mtree.8,v 1.53 2005/07/31 03:30:47 keramida Exp $ +.\" $FreeBSD: src/usr.sbin/mtree/mtree.8,v 1.54 2006/07/03 10:55:21 maxim Exp $ .\" -.Dd March 29, 2005 +.Dd July 03, 2006 .Dt MTREE 8 .Os .Sh NAME @@ -221,6 +221,9 @@ The number of hard links the file is expected to have. .It Cm nochange Make sure this file or directory exists but otherwise ignore all attributes. +.It Cm optional +The file is optional; do not complain about the file if it is +not in the file hierarchy. .It Cm uid The file owner as a numeric value. .It Cm uname ==== //depot/projects/trustedbsd/audit3/usr.sbin/mtree/mtree.h#3 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)mtree.h 8.1 (Berkeley) 6/6/93 - * $FreeBSD: src/usr.sbin/mtree/mtree.h,v 1.7 2005/03/29 11:44:17 tobez Exp $ + * $FreeBSD: src/usr.sbin/mtree/mtree.h,v 1.8 2006/07/03 10:55:21 maxim Exp $ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 5 11:46:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7CD7116A4ED; Wed, 5 Jul 2006 11:46:09 +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 3C7EF16A4EC for ; Wed, 5 Jul 2006 11:46:09 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BBCC743D66 for ; Wed, 5 Jul 2006 11:46:07 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65Bk73w018674 for ; Wed, 5 Jul 2006 11:46:07 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65Bk7mc018671 for perforce@freebsd.org; Wed, 5 Jul 2006 11:46:07 GMT (envelope-from wsalamon@computer.org) Date: Wed, 5 Jul 2006 11:46:07 GMT Message-Id: <200607051146.k65Bk7mc018671@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 100617 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 11:46:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=100617 Change 100617 by wsalamon@vh3 on 2006/07/05 11:45:21 Revert unecessary line break change added @99910. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#36 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#36 (text+ko) ==== @@ -610,8 +610,8 @@ acl_type_t type, struct acl *aclp); } 350 AUE_NULL MSTD { int __acl_set_fd(int filedes, \ acl_type_t type, struct acl *aclp); } -351 AUE_NULL MSTD { int __acl_delete_file( \ - const char *path, acl_type_t type); } +351 AUE_NULL MSTD { int __acl_delete_file(const char *path, \ + acl_type_t type); } 352 AUE_NULL MSTD { int __acl_delete_fd(int filedes, \ acl_type_t type); } 353 AUE_NULL MSTD { int __acl_aclcheck_file(const char *path, \ From owner-p4-projects@FreeBSD.ORG Wed Jul 5 12:11:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8D01616A4DE; Wed, 5 Jul 2006 12:11:42 +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 6873E16A4DA for ; Wed, 5 Jul 2006 12:11:42 +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 F0B4F43D5F for ; Wed, 5 Jul 2006 12:11: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 k65CBeJ9021028 for ; Wed, 5 Jul 2006 12:11: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 k65CBeKM021025 for perforce@freebsd.org; Wed, 5 Jul 2006 12:11:40 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 12:11:40 GMT Message-Id: <200607051211.k65CBeKM021025@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 100619 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 12:11:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=100619 Change 100619 by rwatson@rwatson_zoo on 2006/07/05 12:10:44 Adopt OpenSolaris constant values for audit configuration flags. Leave the old values in for the time being for reference purposes. Affected files ... .. //depot/projects/trustedbsd/openbsm/bsm/audit.h#17 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/bsm/audit.h#17 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit.h#16 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit.h#17 $ */ #ifndef _BSM_AUDIT_H @@ -146,6 +146,7 @@ /* * Audit policy controls. */ +#ifdef OLD_WORLD_ORDER #define AUDIT_CNT 0x0001 #define AUDIT_AHLT 0x0002 #define AUDIT_ARGV 0x0004 @@ -157,6 +158,22 @@ #define AUDIT_GROUP 0x0100 #define AUDIT_TRAIL 0x0200 #define AUDIT_PATH 0x0400 +#else /* !OLD_WORLD_ORDER */ +#define AUDIT_CNT 0x0001 +#define AUDIT_AHLT 0x0002 +#define AUDIT_ARGV 0x0004 +#define AUDIT_ARGE 0x0008 +#define AUDIT_SEQ 0x0010 +#define AUDIT_WINDATA 0x0020 +#define AUDIT_USER 0x0040 +#define AUDIT_GROUP 0x0080 +#define AUDIT_TRAIL 0x0100 +#define AUDIT_PATH 0x0200 +#define AUDIT_SCNT 0x0400 +#define AUDIT_PUBLIC 0x0800 +#define AUDIT_ZONENAME 0x1000 +#define AUDIT_PERZONE 0x2000 +#endif /* !OLD_WORLD_ORDER */ /* * Audit queue control parameters From owner-p4-projects@FreeBSD.ORG Wed Jul 5 12:11:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B53AE16A562; Wed, 5 Jul 2006 12:11:43 +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 924CE16A55B for ; Wed, 5 Jul 2006 12:11:43 +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 8CBDE43D60 for ; Wed, 5 Jul 2006 12:11:41 +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 k65CBfT4021034 for ; Wed, 5 Jul 2006 12:11:41 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 k65CBe97021031 for perforce@freebsd.org; Wed, 5 Jul 2006 12:11:40 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 12:11:40 GMT Message-Id: <200607051211.k65CBe97021031@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 100620 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 12:11:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=100620 Change 100620 by rwatson@rwatson_zoo on 2006/07/05 12:11:16 Update history. Affected files ... .. //depot/projects/trustedbsd/openbsm/HISTORY#18 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/HISTORY#18 (text+ko) ==== @@ -1,6 +1,7 @@ OpenBSM 1.0 alpha 8 - Correct typo in definition of AUR_INT. +- Adopt OpenSolaris constant values for AUDIT_* configuration flags. OpenBSM 1.0 alpha 7 @@ -179,4 +180,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#17 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#18 $ From owner-p4-projects@FreeBSD.ORG Wed Jul 5 12:51:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 595B216A4DF; Wed, 5 Jul 2006 12:51:35 +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 0FFB616A4DD for ; Wed, 5 Jul 2006 12:51:35 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A017243D53 for ; Wed, 5 Jul 2006 12:51:34 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65CpYDd030447 for ; Wed, 5 Jul 2006 12:51:34 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65CpY21030437 for perforce@freebsd.org; Wed, 5 Jul 2006 12:51:34 GMT (envelope-from gabor@FreeBSD.org) Date: Wed, 5 Jul 2006 12:51:34 GMT Message-Id: <200607051251.k65CpY21030437@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 100624 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 12:51:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=100624 Change 100624 by gabor@gabor_spitfire on 2006/07/05 12:50:51 IFC Affected files ... .. //depot/projects/soc2006/gabor_ports/CHANGES#3 integrate .. //depot/projects/soc2006/gabor_ports/MOVED#4 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.autotools.mk#2 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.database.mk#3 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.gcc.mk#2 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.gnome.mk#3 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.gstreamer.mk#2 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.kde.mk#2 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.php.mk#2 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#10 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.ruby.mk#3 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.scons.mk#1 branch .. //depot/projects/soc2006/gabor_ports/Mk/bsd.sdl.mk#2 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.sites.mk#3 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.wx.mk#1 branch .. //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/dopackagestats#2 integrate .. //depot/projects/soc2006/gabor_ports/Tools/scripts/addport#2 integrate .. //depot/projects/soc2006/gabor_ports/Tools/scripts/rmport#2 integrate .. //depot/projects/soc2006/gabor_ports/UPDATING#4 integrate Differences ... ==== //depot/projects/soc2006/gabor_ports/CHANGES#3 (text+ko) ==== @@ -10,6 +10,28 @@ All ports committers are allowed to commit to this file. +20070705: +AUTHOR: portmgr@FreeBSD.org +The following functional changes were made to bsd.port.mk: + + * Change all bogus uses of BROKEN to IGNORE. (Note: the BROKEN_WITH_* + forms are retained for compatibility but deprecated.) Internally, + these variables all had already set IGNORE, not BROKEN, so they + were really misnomers. + + * Fix USE_LDCONFIG with non-default PREFIX. + + * Fix DESKTOP_ENTRIES processing on 4.x. + + * Add 'make missing' to show missing dependencies. + + * Add bsd.scons.mk and bsd.wx.mk. + +20060616: +AUTHOR: portmgr@FreeBSD.org + The patch in ports/95841 to get rid of remnants of FORCE_PKG_REGISTER + was backed out because it broke kdelibs3*. + 20060616: AUTHOR: portmgr@FreeBSD.org The following functional changes were made to bsd.port.mk: @@ -1081,4 +1103,4 @@ Contact Erwin Lansing if you have any questions about your use of this document. -$FreeBSD: ports/CHANGES,v 1.53 2006/06/19 00:10:03 linimon Exp $ +$FreeBSD: ports/CHANGES,v 1.54 2006/07/05 02:18:27 linimon Exp $ ==== //depot/projects/soc2006/gabor_ports/MOVED#4 (text+ko) ==== @@ -1,7 +1,7 @@ # # MOVED - a list of (recently) moved or removed ports # -# $FreeBSD: ports/MOVED,v 1.1084 2006/06/27 18:17:49 garga Exp $ +# $FreeBSD: ports/MOVED,v 1.1086 2006/07/04 14:04:27 vd Exp $ # # Each entry consists of a single line containing the following four # fields in the order named, separated with the pipe (`|') character: @@ -2393,4 +2393,12 @@ audio/mpck|audio/checkmate|2006-06-24|project was renamed www/xpi-tablesort|www/xpi-tabletools|2006-06-27|Extension renamed mail/rssyl|mail/sylpheed-claws-rssyl|2006-06-27|Moved to follow the rest of sypheed-claws nameing scheme -net/rwhois|net/rwhoisd/2006-06-27|Moved to an accurate name +net/rwhois|net/rwhoisd|2006-06-27|Moved to an accurate name +lang/linux-libgcc||2006-06-29|Obsoleted by emulators/linux_base-fc3 and emulators/linux_base-fc4 +x11-wm/aewm++||2006-07-04|Has expired: The project is dead, a fork exists: xaewm +emulators/linux_base-fc3||2006-07-04|Has expired: superseeded by linux_base-fc4 port +misc/linux-opengroupware||2006-07-04|Has expired +net/opengk||2006-07-04|Has expired: Latest version is from 2003-02-03. Use net/gatekeeper instead +security/p5-Crypt-OpenPGP||2006-07-04|Has expired: Crypt-OpenPGP was abandoned in 2002, use security/gnupg instead +textproc/sed_inplace||2006-07-04|Has expired: This port is not required anymore +textproc/xml4j||2006-07-04|Has expired: it has been replaced by textproc/xerces-j 8 years ago ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.autotools.mk#2 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.autotools.mk,v 1.23 2006/02/23 10:43:34 ade Exp $ +# $FreeBSD: ports/Mk/bsd.autotools.mk,v 1.24 2006/07/05 02:18:08 linimon Exp $ # # Please view me with 4 column tabs! # @@ -77,7 +77,7 @@ # XXX: temporary to highlight any missed ports in the conversion # .if defined(AUTOTOOL_libtool_inc) -BROKEN+=libtool:${AUTOTOOL_libtool_inc}:inc construct no longer available +IGNORE+= error: libtool:${AUTOTOOL_libtool_inc}:inc construct no longer available .endif #--------------------------------------------------------------------------- @@ -100,7 +100,7 @@ # Make sure we specified a legal version of automake # . if !exists(${PORTSDIR}/devel/automake${AUTOMAKE_VERSION}/Makefile) -BROKEN+= Unknown AUTOMAKE version: ${AUTOMAKE_VERSION} +IGNORE+= cannot install: unknown AUTOMAKE version: ${AUTOMAKE_VERSION} . endif # Set up the automake environment @@ -146,7 +146,7 @@ # Make sure we specified a legal version of autoconf # . if !exists(${PORTSDIR}/devel/autoconf${AUTOCONF_VERSION}/Makefile) -BROKEN+= Unknown AUTOCONF version: ${AUTOCONF_VERSION} +IGNORE+= cannot install: unknown AUTOCONF version: ${AUTOCONF_VERSION} . endif # Set up the autoconf/autoheader environment @@ -189,7 +189,7 @@ # Make sure we specified a legal version of libtool # . if !exists(${PORTSDIR}/devel/libtool${LIBTOOL_VERSION}/Makefile) -BROKEN+= Unknown LIBTOOL version: ${LIBTOOL_VERSION} +IGNORE+= cannot install: unknown LIBTOOL version: ${LIBTOOL_VERSION} . endif # Set up the libtool environment ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.database.mk#3 (text+ko) ==== @@ -1,7 +1,7 @@ # -*- mode: Makefile; tab-width: 4; -*- # ex: ts=4 # -# $FreeBSD: ports/Mk/bsd.database.mk,v 1.13 2006/06/28 11:38:42 rafan Exp $ +# $FreeBSD: ports/Mk/bsd.database.mk,v 1.14 2006/07/05 02:18:08 linimon Exp $ # .if defined(_POSTMKINCLUDED) && !defined(Database_Post_Include) @@ -25,7 +25,7 @@ # Default: 50. # WANT_MYSQL_VER # - Maintainer can set an arbitrary version of MySQL by using it. -# BROKEN_WITH_MYSQL +# IGNORE_WITH_MYSQL # - This variable can be defined if the ports doesn't support # one or more version of MySQL. # WITH_MYSQL_VER @@ -44,7 +44,7 @@ # WANT_PGSQL_VER # - Maintainer can set an arbitrary version of PostgreSQL by # using it. -# BROKEN_WITH_PGSQL +# IGNORE_WITH_PGSQL # - This variable can be defined if the ports doesn't support # one or more versions of PostgreSQL. # PGSQL_VER @@ -116,13 +116,17 @@ # And now we are checking if we can use it .if defined(MYSQL${MYSQL_VER}_LIBVER) +# compatability shim .if defined(BROKEN_WITH_MYSQL) -. for VER in ${BROKEN_WITH_MYSQL} +IGNORE_WITH_MYSQL=${BROKEN_WITH_MYSQL} +.endif +.if defined(IGNORE_WITH_MYSQL) +. for VER in ${IGNORE_WITH_MYSQL} . if (${MYSQL_VER} == "${VER}") -IGNORE= cannot install: doesn't work with MySQL version : ${MYSQL_VER} (Doesn't support MySQL ${BROKEN_WITH_MYSQL}) +IGNORE= cannot install: doesn't work with MySQL version : ${MYSQL_VER} (Doesn't support MySQL ${IGNORE_WITH_MYSQL}) . endif . endfor -.endif # BROKEN_WITH_MYSQL +.endif # IGNORE_WITH_MYSQL LIB_DEPENDS+= mysqlclient.${MYSQL${MYSQL_VER}_LIBVER}:${PORTSDIR}/databases/mysql${MYSQL_VER}-client .else IGNORE= cannot install: unknown MySQL version: ${MYSQL_VER} @@ -155,13 +159,17 @@ # And now we are checking if we can use it .if defined(PGSQL${PGSQL_VER}_LIBVER) +# compatability shim .if defined(BROKEN_WITH_PGSQL) -. for VER in ${BROKEN_WITH_PGSQL} +IGNORE_WITH_PGSQL=${BROKEN_WITH_PGSQL} +.endif +.if defined(IGNORE_WITH_PGSQL) +. for VER in ${IGNORE_WITH_PGSQL} . if (${PGSQL_VER} == "${VER}") -IGNORE= cannot install: does not work with postgresql${PGSQL_VER}-client PostgresSQL (${BROKEN_WITH_PGSQL} not supported) +IGNORE= cannot install: does not work with postgresql${PGSQL_VER}-client PostgresSQL (${IGNORE_WITH_PGSQL} not supported) . endif . endfor -.endif # BROKEN_WITH_PGSQL +.endif # IGNORE_WITH_PGSQL LIB_DEPENDS+= pq.${PGSQL${PGSQL_VER}_LIBVER}:${PORTSDIR}/databases/postgresql${PGSQL_VER}-client .else IGNORE= cannot install: unknown PostgreSQL version: ${PGSQL_VER} @@ -220,7 +228,7 @@ # Detect bdb version _BDB_VER= no -_BDB_BROKEN= no +_BDB_IGNORE= no # Override the user defined WITH_BDB_VER with the WANT_BDB_VER .if defined(WANT_BDB_VER) @@ -242,7 +250,7 @@ . for dbx in ${_DB_${_MATCHED_DB_VER}P} . if exists(${db${dbx}_FIND}) _BRKDB= no -# Skip versions we are broken with +# Skip versions we are incompatible with . if defined(INVALID_BDB_VER) _CHK_BDB:= ${dbx} . for BRKDB in ${INVALID_BDB_VER} @@ -282,20 +290,20 @@ # INVALID_BDB_VER is specified as VER+ . if ${_CHK_PLUS} != "${VER}" . if ${_BDB_VER} == "${_CHK_PLUS} -_BDB_BROKEN= yes +_BDB_IGNORE= yes . else . for VER_P in ${_DB_${_CHK_PLUS}P} . if ${_BDB_VER} == "${VER_P}" -_BDB_BROKEN= yes +_BDB_IGNORE= yes . endif . endfor . endif . elif ${_BDB_VER} == "${VER}" -_BDB_BROKEN= yes +_BDB_IGNORE= yes . endif . endfor . endif -. if ${_BDB_BROKEN} == "yes" +. if ${_BDB_IGNORE} == "yes" IGNORE= cannot install: does not work with bdb version: ${_BDB_VER} (${INVALID_BDB_VER} not supported) . else # Now add the dependancy on Berkeley DB ${_BDB_VER) version ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.gcc.mk#2 (text+ko) ==== @@ -18,7 +18,7 @@ # If you are wondering what your port exactly does, use "make test-gcc" # to see some debugging. # -# $FreeBSD: ports/Mk/bsd.gcc.mk,v 1.7 2006/01/21 17:37:01 krion Exp $ +# $FreeBSD: ports/Mk/bsd.gcc.mk,v 1.8 2006/07/05 02:18:08 linimon Exp $ # GCC_Include_MAINTAINER= portmgr@FreeBSD.org @@ -78,7 +78,7 @@ .endfor .if !defined(_GCCVERSION_OKAY) -BROKEN= Unknown version of GCC specified (USE_GCC=${USE_GCC}) +IGNORE= Unknown version of GCC specified (USE_GCC=${USE_GCC}) .endif # @@ -94,7 +94,7 @@ . endif .endfor .if !defined(_GCCVERSION) -BROKEN= Couldn't find your current GCCVERSION (OSVERSION=${OSVERSION}) +IGNORE= Couldn't find your current GCCVERSION (OSVERSION=${OSVERSION}) .endif # ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.gnome.mk#3 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: Fundamental; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.gnome.mk,v 1.129 2006/06/14 02:51:02 marcus Exp $ +# $FreeBSD: ports/Mk/bsd.gnome.mk,v 1.130 2006/07/05 02:18:08 linimon Exp $ # $NetBSD: $ # $MCom: ports/Mk/bsd.gnome.mk,v 1.370 2006/04/27 01:40:22 ahze Exp $ # @@ -613,18 +613,18 @@ # Then use already expanded USE_GNOME_IMPL to expand USE_GNOME. # Also, check to see if each component has a desktop requirement. If it does, # and if the user's chosen desktop is not of the same version, mark the -# port as broken. +# port as IGNORE. . for component in ${USE_GNOME} . if defined(GNOME_DESKTOP_VERSION) && \ defined(${component}_GNOME_DESKTOP_VERSION) . if ${GNOME_DESKTOP_VERSION}!=${${component}_GNOME_DESKTOP_VERSION} -BROKEN= ${PORTNAME} wants to use the GNOME -BROKEN+=${${component}_GNOME_DESKTOP_VERSION} desktop, but you wish to use -BROKEN+=the GNOME ${GNOME_DESKTOP_VERSION} desktop +IGNORE= cannot install: ${PORTNAME} wants to use the GNOME +IGNORE+=${${component}_GNOME_DESKTOP_VERSION} desktop, but you wish to use +IGNORE+=the GNOME ${GNOME_DESKTOP_VERSION} desktop . endif . endif . if ${_USE_GNOME_ALL:M${component}}=="" -BROKEN= Unknown component ${component} +IGNORE= cannot install: unknown component ${component} . endif _USE_GNOME+= ${${component}_USE_GNOME_IMPL} ${component} . endfor @@ -647,7 +647,7 @@ done; .else . if ${USE_GNOME:Mltverhack}!="" -BROKEN= ${PORTNAME} uses the ltverhack GNOME component but does not use libtool +IGNORE= cannot install: ${PORTNAME} uses the ltverhack GNOME component but does not use libtool . endif .endif ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.gstreamer.mk#2 (text+ko) ==== @@ -6,7 +6,7 @@ # Created by: Michael Johnson # Date: 4 Oct 2004 # -# $FreeBSD: ports/Mk/bsd.gstreamer.mk,v 1.20 2006/06/09 18:00:26 ahze Exp $ +# $FreeBSD: ports/Mk/bsd.gstreamer.mk,v 1.21 2006/07/05 02:18:08 linimon Exp $ # $MCom: ports/Mk/bsd.gstreamer.mk,v 1.24 2006/04/25 14:45:31 ahze Exp $ .if !defined(_POSTMKINCLUDED) && !defined(Gstreamer_Pre_Include) @@ -246,7 +246,7 @@ BUILD_DEPENDS+= ${${ext}_GST80_PREFIX}${${ext}_NAME}${${ext}_GST80_SUFX}>=${${ext}_GST80_VERSION}:${PORTSDIR}/${${ext}_DEPENDS}${${ext}_GST80_SUFX} RUN_DEPENDS+= ${${ext}_GST80_PREFIX}${${ext}_NAME}${${ext}_GST80_SUFX}>=${${ext}_GST80_VERSION}:${PORTSDIR}/${${ext}_DEPENDS}${${ext}_GST80_SUFX} . else -BROKEN= Unknown gstreamer-plugin -- ${ext} +IGNORE= cannot install: unknown gstreamer-plugin -- ${ext} . endif .endfor .endif @@ -256,7 +256,7 @@ BUILD_DEPENDS+= ${${ext}_GST_PREFIX}${${ext}_NAME}>=${${ext}_GST_VERSION}:${PORTSDIR}/${${ext}_DEPENDS} RUN_DEPENDS+= ${${ext}_GST_PREFIX}${${ext}_NAME}>=${${ext}_GST_VERSION}:${PORTSDIR}/${${ext}_DEPENDS} . else -BROKEN= Unknown gstreamer-plugin -- ${ext} +IGNORE= cannot install: unknown gstreamer-plugin -- ${ext} . endif .endfor .endif ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.kde.mk#2 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: Makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.kde.mk,v 1.61 2006/06/05 19:23:51 lofi Exp $ +# $FreeBSD: ports/Mk/bsd.kde.mk,v 1.62 2006/07/05 02:18:08 linimon Exp $ # # Please view me with 4 column tabs! @@ -68,7 +68,7 @@ USE_QT_VER= 3 PREFIX= ${KDE_PREFIX} .else -IGNORE= Unsupported value in USE_KDELIBS_VER +IGNORE= cannot install: unsupported value in USE_KDELIBS_VER .endif # ${USE_KDELIBS_VER} == 3 .endif # defined(USE_KDELIBS_VER) @@ -128,7 +128,7 @@ CONFIGURE_ENV+= MOC="${MOC}" CPPFLAGS="${CPPFLAGS} ${QTCPPFLAGS}" LIBS="${QTCFGLIBS}" .endif # !defined(QT_NONSTANDARD) .else -IGNORE= Unsupported value of USE_QT_VER +IGNORE= cannot install: unsupported value of USE_QT_VER .endif # defined(USE_QT_VER) # End of USE_QT_VER section ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.php.mk#2 (text+ko) ==== @@ -7,7 +7,7 @@ # Please send all suggested changes to the maintainer instead of committing # them to CVS yourself. # -# $FreeBSD: ports/Mk/bsd.php.mk,v 1.30 2006/06/16 04:53:43 linimon Exp $ +# $FreeBSD: ports/Mk/bsd.php.mk,v 1.31 2006/07/05 02:18:08 linimon Exp $ # # Adding 'USE_PHP=yes' to a port includes this Makefile after bsd.ports.pre.mk. # If the port requires a predefined set of PHP extensions, they can be @@ -18,7 +18,7 @@ # The port can set these options in its Makefile before bsd.ports.pre.mk: # # DEFAULT_PHP_VER=N - Use PHP version N if PHP is not yet installed. -# BROKEN_WITH_PHP=N - The port doesn't work with PHP version N. +# IGNORE_WITH_PHP=N - The port doesn't work with PHP version N. # USE_PHPIZE=yes - Use to build a PHP extension. # USE_PHPEXT=yes - Use to build, install and register a PHP extension. # USE_PHP_BUILD=yes - Set PHP also as a build dependency. @@ -70,10 +70,14 @@ .endif PHP_EXT_INC?= "" +# compatability shim .if defined(BROKEN_WITH_PHP) -. for VER in ${BROKEN_WITH_PHP} +IGNORE_WITH_PHP=${BROKEN_WITH_PHP} +.endif +.if defined(IGNORE_WITH_PHP) +. for VER in ${IGNORE_WITH_PHP} . if ${PHP_VER} == "${VER}" -BROKEN= Doesn't work with PHP version : ${PHP_VER} (Doesn't support PHP ${BROKEN_WITH_PHP}) +IGNORE= cannot install: doesn't work with PHP version : ${PHP_VER} (Doesn't support PHP ${IGNORE_WITH_PHP}) . endif . endfor .endif ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#10 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.port.mk,v 1.535 2006/06/26 23:39:09 linimon Exp $ +# $FreeBSD: ports/Mk/bsd.port.mk,v 1.536 2006/07/05 02:18:08 linimon Exp $ # $NetBSD: $ # # bsd.port.mk - 940820 Jordan K. Hubbard. @@ -293,7 +293,7 @@ # compression. # USE_ZIP - If set, this port distfile uses zip, not tar w/[bg]zip # for compression. -# USE_DOS2UNIX - If set to "YES", remove the ^M from all files +# USE_DOS2UNIX - If set to "YES", remove the ^M from all files # under ${WRKSRC}. If set to a string, remove in all # files under ${WRKSRC} with one of these names the ^Ms. # USE_GCC - If set, this port requires this version of gcc, either in @@ -395,13 +395,16 @@ # USE_FAM - If set, this port uses the File Alteration Monitor. # # WANT_FAM_SYSTEM -# - Legal values are: gamin (default),fam -# If set to an unknown value, the port is marked BROKEN. +# - Legal values are: gamin (default),fam +# If set to an unknown value, the port is marked IGNORE. ## # USE_AUTOTOOLS - If set, this port uses various GNU autotools # (libtool, autoconf, autoheader, automake et al.) # See bsd.autotools.mk for more details. ## +# USE_SCONS - If set, this port uses the Python-based SCons build system +# See bsd.scons.mk for more details. +## # USE_JAVA - If set, this port relies on the Java language. # Implies inclusion of bsd.java.mk. (Also see # that file for more information on USE_JAVA_*). @@ -464,15 +467,15 @@ # usable in *_DEPENDS (e.g. BUILD_DEPENDS=${LINUX_BASE_PORT}). # It honors USE_LINUX=foo and OVERRIDE_LINUX_BASE_PORT. # USE_RC_SUBR - If set, the ports startup/shutdown script uses the common -# routines found in etc/rc.subr and may need to -# depend on the sysutils/rc_subr port. -# If this is set to a list of files, these files will be -# automatically added to ${SUB_FILES}, some %%VAR%%'s will -# automatically be expanded, they will be installed in -# ${PREFIX}/etc/rc.d and added to the packing list. +# routines found in etc/rc.subr and may need to +# depend on the sysutils/rc_subr port. +# If this is set to a list of files, these files will be +# automatically added to ${SUB_FILES}, some %%VAR%%'s will +# automatically be expanded, they will be installed in +# ${PREFIX}/etc/rc.d and added to the packing list. # USE_RCORDER - List of rc.d startup scripts to be called early in the boot -# process. This acts exactly like USE_RC_SUBR except that -# scripts are installed in /etc/rc.d. +# process. This acts exactly like USE_RC_SUBR except that +# scripts are installed in /etc/rc.d. # RC_SUBR - Set to path of rc.subr. # Default: ${LOCALBASE}/etc/rc.subr. ## @@ -964,7 +967,7 @@ # - Different checksum algorithms to check for verifying the # integrity of the distfiles. The absence of the algorithm # in distinfo doesn't make it fail. -# Default: md5 +# Default: md5 sha256 # NO_CHECKSUM - Don't verify the checksum. Typically used when # when you noticed the distfile you just fetched has # a different checksum and you intend to verify if @@ -1193,6 +1196,9 @@ # where 'make config' records user configuration options PORT_DBDIR?= /var/db/ports +LDCONFIG_DIR= libdata/ldconfig +LDCONFIG32_DIR= libdata/ldconfig32 + .if defined(LATEST_LINK) UNIQUENAME?= ${LATEST_LINK} .else @@ -1247,7 +1253,7 @@ .if defined(PORTVERSION) .if ${PORTVERSION:M*[-_,]*}x != x -BROKEN= PORTVERSION ${PORTVERSION} may not contain '-' '_' or ',' +IGNORE= PORTVERSION ${PORTVERSION} may not contain '-' '_' or ',' .endif DISTVERSION?= ${PORTVERSION:S/:/::/g} .elif defined(DISTVERSION) @@ -1455,18 +1461,22 @@ .include "${PORTSDIR}/Mk/bsd.gnome.mk" .endif +.if defined(WANT_WX) || defined(USE_WX) || defined(USE_WX_NOT) +.include "${PORTSDIR}/Mk/bsd.wx.mk" +.endif + .if defined(WANT_GSTREAMER) || defined(USE_GSTREAMER) || defined(USE_GSTREAMER80) .include "${PORTSDIR}/Mk/bsd.gstreamer.mk" .endif +.if defined(USE_QMAIL) || defined(USE_QMAIL_RUN) || defined(USE_QMAIL_BUILD) || defined(WANT_QMAIL) +.include "${PORTSDIR}/Mk/bsd.mail.mk" +.endif + .if defined(USE_SDL) || defined(WANT_SDL) .include "${PORTSDIR}/Mk/bsd.sdl.mk" .endif -.if defined(USE_QMAIL) || defined(USE_QMAIL_RUN) || defined(USE_QMAIL_BUILD) || defined(WANT_QMAIL) -.include "${PORTSDIR}/Mk/bsd.mail.mk" -.endif - .if ${OSVERSION} >= 502123 X_WINDOW_SYSTEM ?= xorg .elif (${OSVERSION} >= 450005 && !defined(XFREE86_VERSION)) || \ @@ -1591,7 +1601,7 @@ .elif ${WANT_OPENLDAP_VER} == 24 LIB_DEPENDS+= ldap-2.4.1:${PORTSDIR}/net/openldap24${_OPENLDAP_FLAVOUR}-client .else -BROKEN= unknown OpenLDAP version: ${WANT_OPENLDAP_VER} +IGNORE= unknown OpenLDAP version: ${WANT_OPENLDAP_VER} .endif .endif @@ -1609,7 +1619,7 @@ .if defined(WANT_FAM_SYSTEM) .if defined(WITH_FAM_SYSTEM) && ${WITH_FAM_SYSTEM}!=${WANT_FAM_SYSTEM} -BROKEN= The port wants to use ${WANT_FAM_SYSTEM} as its FAM system and you wish to use ${WITH_FAM_SYSTEM} +IGNORE= The port wants to use ${WANT_FAM_SYSTEM} as its FAM system and you wish to use ${WITH_FAM_SYSTEM} .endif FAM_SYSTEM= ${WANT_FAM_SYSTEM} .elif defined(WITH_FAM_SYSTEM) @@ -1631,7 +1641,7 @@ .if defined(FAM_SYSTEM_${FAM_SYSTEM:U}) LIB_DEPENDS+= ${FAM_SYSTEM_${FAM_SYSTEM:U}} .else -BROKEN= unknown FAM system: ${FAM_SYSTEM} +IGNORE= unknown FAM system: ${FAM_SYSTEM} .endif .endif # USE_FAM @@ -1660,14 +1670,12 @@ .endif .endif -LDCONFIG_DIR= libdata/ldconfig -LDCONFIG32_DIR= libdata/ldconfig32 - .if defined(USE_LDCONFIG) || defined(USE_LDCONFIG32) -.if ${OSVERSION} < 504105 || \ - (${OSVERSION} >= 700000 && ${OSVERSION} < 700012) || \ - (${OSVERSION} >= 600000 && ${OSVERSION} < 600104) +.if ( ${OSVERSION} < 504105 ) || \ + ( ${OSVERSION} >= 700000 && ${OSVERSION} < 700012 ) || \ + ( ${OSVERSION} >= 600000 && ${OSVERSION} < 600104 ) RUN_DEPENDS+= ${LOCALBASE}/${LDCONFIG_DIR}:${PORTSDIR}/misc/ldconfig_compat +NO_LDCONFIG_MTREE= yes .endif .if defined(USE_LDCONFIG) && ${USE_LDCONFIG:L} == "yes" USE_LDCONFIG= ${PREFIX}/lib @@ -1713,6 +1721,9 @@ . endif . endif +# NOTE: when you update the default linux_base version (case "yes"), +# don't forget to update the Handbook! + . if exists(${PORTSDIR}/emulators/linux_base-${USE_LINUX}) LINUX_BASE_PORT= ${LINUXBASE}/bin/sh:${PORTSDIR}/emulators/linux_base-${USE_LINUX} . else @@ -1902,6 +1913,10 @@ .include "${PORTSDIR}/Mk/bsd.linux-rpm.mk" .endif +.if defined(USE_SCONS) +.include "${PORTSDIR}/Mk/bsd.scons.mk" +.endif + .if defined(USE_SDL) || defined(WANT_SDL) .include "${PORTSDIR}/Mk/bsd.sdl.mk" .endif @@ -1914,6 +1929,10 @@ .include "${PORTSDIR}/Mk/bsd.tcl.mk" .endif +.if defined(USE_WX) || defined(USE_WX_NOT) +.include "${PORTSDIR}/Mk/bsd.wx.mk" +.endif + .if defined(USE_APACHE) || defined(APACHE_COMPAT) .include "${PORTSDIR}/Mk/bsd.apache.mk" .endif @@ -1926,6 +1945,7 @@ .include "${PORTSDIR}/Mk/bsd.gnome.mk" .endif + .if exists(${PORTSDIR}/../Makefile.inc) .include "${PORTSDIR}/../Makefile.inc" USE_SUBMAKE= yes @@ -3727,11 +3747,17 @@ .endif .if ${USE_LDCONFIG:L} != "${PREFIX}/lib" @${ECHO_MSG} "===> Installing ldconfig configuration file" +.if defined(NO_LDCONFIG_MTREE) + @${MKDIR} ${LDCONFIG_DIR} +.endif @${ECHO_CMD} ${USE_LDCONFIG} | ${TR} ' ' '\n' \ > ${PREFIX}/${LDCONFIG_DIR}/${UNIQUENAME} @${ECHO_CMD} ${LDCONFIG_DIR}/${UNIQUENAME} >> ${TMPPLIST} +.if defined(NO_LDCONFIG_MTREE) + @${ECHO_CMD} "@unexec rmdir ${LDCONFIG_DIR} >/dev/null 2>&1" >> ${TMPPLIST} .endif .endif +.endif .if defined(USE_LDCONFIG32) .if !defined(INSTALL_AS_USER) @${ECHO_MSG} "===> Running ldconfig" @@ -3741,10 +3767,16 @@ -${LDCONFIG} -32 -m ${USE_LDCONFIG32} .endif @${ECHO_MSG} "===> Installing 32-bit ldconfig configuration file" +.if defined(NO_LDCONFIG_MTREE) + @${MKDIR} ${LDCONFIG_32DIR} +.endif @${ECHO_CMD} ${USE_LDCONFIG32} | ${TR} ' ' '\n' \ > ${PREFIX}/${LDCONFIG32_DIR}/${UNIQUENAME} @${ECHO_CMD} ${LDCONFIG32_DIR}/${UNIQUENAME} >> ${TMPPLIST} +.if defined(NO_LDCONFIG_MTREE) + @${ECHO_CMD} "@unexec rmdir ${LDCONFIG32_DIR} >/dev/null 2>&1" >> ${TMPPLIST} .endif +.endif # This can be removed once, all ports have been converted to USE_LDCONFIG. .if defined(INSTALLS_SHLIB) .if !defined(INSTALL_AS_USER) @@ -4926,6 +4958,16 @@ (cd $$dir; ${MAKE} package-noinstall); \ done +# Show missing dependiencies +missing: + @for dir in $$(${ALL-DEPENDS-LIST}); do \ + THISORIGIN=$$(${ECHO_CMD} $$dir | ${SED} 's,${PORTSDIR}/,,'); \ + installed=$$(${PKG_INFO} -qO $${THISORIGIN}); \ + if [ -z $$installed ]; then \ + ${ECHO_CMD} $$THISORIGIN; \ + fi \ + done + ################################################################ # Everything after here are internal targets and really # shouldn't be touched by anybody but the release engineers. @@ -5622,7 +5664,7 @@ check-desktop-entries: .if defined(DESKTOP_ENTRIES) @set ${DESKTOP_ENTRIES} XXX; \ - if [ $$((($$# - 1) % 6)) -ne 0 ]; then \ + if [ `${EXPR} \( $$# - 1 \) % 6` -ne 0 ]; then \ ${ECHO_CMD} "${PKGNAME}: Makefile error: the DESKTOP_ENTRIES list must contain one or more groups of 6 elements"; \ exit 1; \ fi; \ @@ -5668,7 +5710,7 @@ exit 1; \ fi; \ shift 6; \ - num=$$((num + 1)); \ + num=`${EXPR} $$num + 1`; \ done .else @${DO_NADA} ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.ruby.mk#3 (text+ko) ==== @@ -3,7 +3,7 @@ # # Created by: Akinori MUSHA # -# $FreeBSD: ports/Mk/bsd.ruby.mk,v 1.151 2006/05/17 03:18:15 knu Exp $ +# $FreeBSD: ports/Mk/bsd.ruby.mk,v 1.152 2006/07/05 02:18:09 linimon Exp $ # .if !defined(Ruby_Include) @@ -114,12 +114,12 @@ .if defined(RUBY) .if !exists(${DESTDIR}${RUBY}) -BROKEN= You set the variable RUBY to "${RUBY}", but it does not seem to exist. Please specify an already installed ruby executable. +IGNORE= cannot install: you set the variable RUBY to "${RUBY}", but it does not seem to exist. Please specify an already installed ruby executable. .endif _RUBY_TEST!= ${RUBY} -e 'begin; require "rbconfig"; rescue LoadError; puts "error"; end' .if !empty(_RUBY_TEST) -BROKEN= You set the variable RUBY to "${RUBY}", but it failed to include rbconfig. Please specify a properly installed ruby executable. +IGNORE= cannot install: you set the variable RUBY to "${RUBY}", but it failed to include rbconfig. Please specify a properly installed ruby executable. .endif _RUBY_CONFIG= ${DESTDIR}${RUBY} -r rbconfig -e 'C = Config::CONFIG' -e @@ -147,7 +147,7 @@ RUBY_WRKSRC= ${WRKDIR}/ruby-${RUBY_VERSION} #MASTER_SITE_SUBDIR_RUBY= snapshots .elif defined(RUBY_VER) && ${RUBY_VER} == 1.7 -BROKEN= Ruby 1.7 is obsolete; set RUBY_VER to 1.8 instead. +IGNORE= Ruby 1.7 is obsolete; set RUBY_VER to 1.8 instead. .else RUBY_VERSION?= 1.6.8 RUBY_DISTVERSION?= ${RUBY_VERSION}-2004.07.28 ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.sdl.mk#2 (text+ko) ==== @@ -29,7 +29,7 @@ # # -# $FreeBSD: ports/Mk/bsd.sdl.mk,v 1.9 2006/01/21 17:37:01 krion Exp $ +# $FreeBSD: ports/Mk/bsd.sdl.mk,v 1.10 2006/07/05 02:18:09 linimon Exp $ # SDL_Include_MAINTAINER= edwin@FreeBSD.org @@ -145,7 +145,7 @@ _USE_SDL= .for component in ${USE_SDL} . if ${_USE_SDL_ALL:M${component}}=="" -BROKEN= Unknown SDL component ${component} +IGNORE= cannot install: unknown SDL component ${component} . endif _USE_SDL+= ${_REQUIRES_${component}} ${component} .endfor ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.sites.mk#3 (text+ko) ==== @@ -20,7 +20,7 @@ # # Note: all entries should terminate with a slash. # -# $FreeBSD: ports/Mk/bsd.sites.mk,v 1.372 2006/06/23 02:25:30 ahze Exp $ +# $FreeBSD: ports/Mk/bsd.sites.mk,v 1.373 2006/07/02 15:27:49 arved Exp $ # # Where to put distfiles that don't have any other master site @@ -438,7 +438,6 @@ .if !defined(IGNORE_MASTER_SITE_GNUPG) MASTER_SITE_GNUPG+= \ - ftp://ftp.gnupg.org/gcrypt/%SUBDIR%/ \ http://ftp.sunsite.dk/pub/security/gcrypt/%SUBDIR%/ \ http://ftp.linux.it/pub/mirrors/gnupg/%SUBDIR%/ \ ftp://ftp.demon.nl/pub/mirrors/gnupg/%SUBDIR%/ \ @@ -450,7 +449,8 @@ ftp://sunsite.cnlab-switch.ch/mirror/gcrypt/%SUBDIR%/ \ ftp://ftp.iasi.roedu.net/pub/mirrors/ftp.gnupg.org/%SUBDIR%/ \ ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/gnupg/&,} \ - ftp://igloo.linux.gr/pub/crypto/gnupg/%SUBDIR%/ + ftp://igloo.linux.gr/pub/crypto/gnupg/%SUBDIR%/ \ + ftp://ftp.gnupg.org/gcrypt/%SUBDIR%/ .endif .if !defined(IGNORE_MASTER_SITE_GNUSTEP) ==== //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/dopackagestats#2 (text+ko) ==== @@ -86,7 +86,11 @@ echo "$n_duds" >> ${TMPFILE} # column: missing count - n_missing=`expr $n_index - $n_packages - $n_errors - $n_duds` + if [ $n_index -ne 0 ]; then + n_missing=`expr $n_index - $n_packages - $n_errors - $n_duds` + else # index currently being rebuilt + n_missing=0 + fi echo "$n_missing" >> ${TMPFILE} # column: done flag ==== //depot/projects/soc2006/gabor_ports/Tools/scripts/addport#2 (text+ko) ==== @@ -32,7 +32,7 @@ # # Id: addport,v 1.2 2000/04/02 06:21:13 will Exp (original shell script) # Id: addport,v 1.5 2000/04/22 22:19:43 mharo Exp (perl conversion) -# $FreeBSD: ports/Tools/scripts/addport,v 1.48 2006/05/16 15:44:29 garga Exp $ +# $FreeBSD: ports/Tools/scripts/addport,v 1.49 2006/07/04 23:12:10 garga Exp $ # # MAINTAINER= garga@FreeBSD.org # @@ -267,6 +267,7 @@ while() { chomp; ($orig) = (m/^# Whom:\s+(\w.*)$/) if (/^# Whom:/); + $orig =~ s/\@/ at /; ($portversion) = (m/^PORTVERSION=\s+(\w.*)$/) if (/^PORTVERSION=/); } close(MAKEFILE); ==== //depot/projects/soc2006/gabor_ports/Tools/scripts/rmport#2 (text+ko) ==== @@ -30,7 +30,7 @@ # Originally written by Vasil Dimov # Others: # -# $FreeBSD: ports/Tools/scripts/rmport,v 1.5 2006/05/02 11:31:54 vd Exp $ +# $FreeBSD: ports/Tools/scripts/rmport,v 1.6 2006/07/05 08:31:49 vd Exp $ # # MAINTAINER= vd@FreeBSD.org # @@ -49,6 +49,13 @@ echo "==> $*" >&2 } +escape() +{ + # escape characters that may appear in ports' names and + # break regular expressions + echo "${1}" |sed -E 's/(\+|\.)/\\\1/g' +} + pkgname() { make -C ${PORTSDIR}/${1} -V PKGNAME @@ -193,7 +200,9 @@ log "${cat}/${port}: removing from CVSROOT/modules" - ${SED} -e "/^(ports_)?(..-)?${port}[[:space:]]+ports\/${cat}\/${port}\$/d" \ + portesc=`escape ${port}` + + ${SED} -e "/^(ports_)?(..-)?${portesc}[[:space:]]+ports\/${cat}\/${portesc}\$/d" \ CVSROOT/modules } @@ -219,7 +228,9 @@ log "${cat}/${port}: removing from ${cat}/Makefile" - ${SED} -e "/^[[:space:]]*SUBDIR[[:space:]]*\+=[[:space:]]*${port}([[:space:]]+#.*)?$/d" \ + portesc=`escape ${port}` + + ${SED} -e "/^[[:space:]]*SUBDIR[[:space:]]*\+=[[:space:]]*${portesc}([[:space:]]+#.*)?$/d" \ ports/${cat}/Makefile } ==== //depot/projects/soc2006/gabor_ports/UPDATING#4 (text+ko) ==== @@ -6,6 +6,64 @@ time you update your ports collection, before attempting any port upgrades. +20060703: + AFFECTS: users of audio/amarok + AUTHOR: mich@FreeBSD.org + + A bunch of port options have been removed, so you should remove your + current options, before attempting to build the port. + + - Enter the amarok port directory, and run `make rmconfig' + +20060703: + AFFECTS: users of sysutils/portupgrade + AUTHOR: sem@FreeBSD.org + + Because of portupgrade had a bug with detecting of Berkley DB version 2+, + and a default database now set to use this version you can get portupgrade + don't work with old databases. A quick fix is removing the databases: + `rm /var/db/pkg/pkgdb.db /usr/ports/INDEX*.db'. portupgrade will recreate + them automaticaly. It's absolutely no harm. + + If you don't want remove the databases you should detect what database + type do you use, and set port options accordly. Follow the instructions: + + - run `pkgdb -fu' *before* upgrading and take a look on the output. + You can see database format there as: format:XXX, where XXX is your + current database format. + - Go to portupgrade port directory and configure the port with + `make config' command. If you have bdb_* format then turn on BDB4 option, + if you have bdb1_* format then turn off BDB4 and turn on BDB1 option. + If you have dbd_hash format then turn off all option. + - Upgrade portupgrade. + + Note: if you change database format with changing port options, + you should remove ruby-bdb* port that you don't need anymore or to hard + code database format in your pkgtools.conf. + +20060702: + AFFECTS: users of multimedia/handbrake + AUTHOR: multimedia@FreeBSD.org + + The GTK+2 version in the 0.7.x has been disabled by the author, because it + does not work anymore. If you still want to keep with GTK+2 version, go + with multimedia/handbrake-gtk2 (still 0.6.x) instead. The name of binary + has been renamed to handbrake-gtk2 too. + +20060701: + AFFECTS: users of www/phpbb + AUTHOR: miwi@FreeBSD.org + + The default install location has changed from + ${PREFIX}/www/data/phpbb to ${PREFIX}/www/phpbb. + +20060629: + AFFECTS: users of www/mediawiki + AUTHOR: miwi@FreeBSD.org + + The default install location has changed from + ${PREFIX}/www/data-dist/mediawiki to ${PREFIX}/www/mediawiki. + 20060624: AFFECTS: users of audio/mt-daapd AUTHOR: alex@foxybanana.com @@ -3712,4 +3770,4 @@ 2) Update all p5-* modules. portupgrade -f p5-\* -$FreeBSD: ports/UPDATING,v 1.350 2006/06/25 13:19:27 itetcu Exp $ +$FreeBSD: ports/UPDATING,v 1.356 2006/07/04 00:48:39 lioux Exp $ From owner-p4-projects@FreeBSD.ORG Wed Jul 5 13:03:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3C5FC16A4DF; Wed, 5 Jul 2006 13:03:51 +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 E802716A4DD for ; Wed, 5 Jul 2006 13:03:50 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A45B543D49 for ; Wed, 5 Jul 2006 13:03:50 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65D3od1032219 for ; Wed, 5 Jul 2006 13:03:50 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65D3ojq032216 for perforce@freebsd.org; Wed, 5 Jul 2006 13:03:50 GMT (envelope-from gabor@FreeBSD.org) Date: Wed, 5 Jul 2006 13:03:50 GMT Message-Id: <200607051303.k65D3ojq032216@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 100625 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 13:03:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100625 Change 100625 by gabor@gabor_spitfire on 2006/07/05 13:03:39 Fix newly created bsd.scons.mk to work with DESTDIR Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.scons.mk#2 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.scons.mk#2 (text+ko) ==== @@ -54,7 +54,7 @@ # SCONS_ENV?= CCFLAGS="${CCFLAGS}" CXXFLAGS="${CXXFLAGS}" \ LINKFLAGS="${LINKFLAGS}" PKGCONFIGDIR="${PKGCONFIGDIR}" \ - PREFIX="${PREFIX}" CC="${CC}" CXX="${CXX}" + PREFIX="${DESTDIR}${PREFIX}" CC="${CC}" CXX="${CXX}" SCONS_ARGS?= SCONS_BUILDENV?= SCONS_TARGET?= From owner-p4-projects@FreeBSD.ORG Wed Jul 5 13:14:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5FFFA16A4DF; Wed, 5 Jul 2006 13:14:04 +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 380B116A4DD for ; Wed, 5 Jul 2006 13:14:04 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D397E43D46 for ; Wed, 5 Jul 2006 13:14:03 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65DE32g032654 for ; Wed, 5 Jul 2006 13:14:03 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65DE3h4032651 for perforce@freebsd.org; Wed, 5 Jul 2006 13:14:03 GMT (envelope-from clem1@FreeBSD.org) Date: Wed, 5 Jul 2006 13:14:03 GMT Message-Id: <200607051314.k65DE3h4032651@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100626 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 13:14:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=100626 Change 100626 by clem1@clem1_ipv6vulns on 2006/07/05 13:14:00 Some improvements around icmpsicng and random ipv6 address generation. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/ChangeLog#3 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/icmpsicng.c#4 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.c#4 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.h#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/tcpsicng.c#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/udpsicng.c#2 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/ChangeLog#3 (text+ko) ==== @@ -1,4 +1,13 @@ -ISICNG (v0.0.2) 04/07/03, by Cl閙ent Lecigne (clem1@FreeBSD.org) +ISICNG (v0.0.3) 06/07/05, by Cl閙ent Lecigne (clem1@FreeBSD.org) + + o randipv6() improvements + o -L number of link local random ipv6 addresses (in percent) + o -A number of site local random ipv6 addresses (in percent) + o with special icmp6 messages (ie. toobig, unreach) icmpsicng + will generate a random ipv6 packet as data... especially for + *6_ctlinput() functions fuzzing. + +ISICNG (v0.0.2) 06/07/04, by Cl閙ent Lecigne (clem1@FreeBSD.org) o Some new feature added to icmpsicng.c o new parameters related to packet size @@ -8,7 +17,7 @@ o bug fix around checksum calculation. -ISICNG (v0.0.1) 03/07/03, by Cl閙ent Lecigne (clem1@FreeBSD.org) +ISICNG (v0.0.1) 06/07/03, by Cl閙ent Lecigne (clem1@FreeBSD.org) o Port of all *sic.c to IPv6 isicng.c supports IPv6 and extension headers fuzzing. ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/icmpsicng.c#4 (text+ko) ==== @@ -60,6 +60,7 @@ int src_ip_rand = 0, dst_ip_rand = 0, dst_ok = 0, what; struct timeval tv, tv2; float sec; + unsigned int wwait; unsigned int cx = 0; u_long max_pushed = 10240; /* 10MB/sec */ u_long num_to_send = 0xffffffff; /* Send 4billion packets */ @@ -81,23 +82,33 @@ float RT = 15; float NI = 15; float IcmpOpt = 0; + float Llocal = 10; + float Slocal = 5; maxsize = 1279; minsize = 128; multiple = 1; + wwait = 500; /* wait microseconds between each write() */ + /* Not crypto strong randomness but we don't really care. And this * * gives us a way to determine the seed while the program is running * * if we need to repeat the results */ seed = getpid(); - while((c = getopt(argc, argv, "hd:i:s:r:m:k:D:S:p:H:V:F:I:T:R:E:U:M:O:N:W:P:z:Z:K:vx:")) != EOF) + while((c = getopt(argc, argv, "hd:i:s:r:m:k:D:S:p:H:V:F:I:T:R:E:U:M:O:N:W:P:z:Z:K:vx:w:L:A:")) != EOF) { switch (c) { case 'i': device = optarg; break; + case 'L': + Llocal = atof(optarg); + break; + case 'A': + Slocal = atof(optarg); + break; case 'T': TooBig = atof(optarg); break; @@ -134,6 +145,9 @@ case 'K': multiple = atoi(optarg); break; + case 'w': + wwait = atoi(optarg); + break; case 'h': usage(argv[0]); exit(0); @@ -301,6 +315,8 @@ ND = ND / 100 + MLD; RT = RT / 100 + ND; NI = NI / 100 + RT; + Llocal /= 100; + Slocal = Slocal / 100 + Llocal; /************* * Main Loop * @@ -319,9 +335,9 @@ tc = rand() & 0xff; if (src_ip_rand == 1) - ip_src = randipv6(); + ip_src = randipv6(Llocal, Slocal); if (dst_ip_rand == 1) - ip_dst = randipv6(); + ip_dst = randipv6(Llocal, Slocal); if (rand() <= (RAND_MAX * BadIPVer)) ver = rand() & 0xf; @@ -370,6 +386,11 @@ icmp->icmp_mtu = rand(); off += 8; payload_s -= 8; + if(rand() % 5){ + cx = makepkt(buf + off, ip_dst, ip_src); + off += cx; + payload_s -= cx; + } } else if (what <= (RAND_MAX * Redir)) { @@ -383,10 +404,14 @@ else icmp->icmp_target2[c] = rand() & 0xff; } - icmp->icmp_dst = randipv6(); + icmp->icmp_dst = randipv6(Llocal, Slocal); off += 36; payload_s -= 36; - + if(rand() % 5){ + cx = makepkt(buf + off, ip_dst, ip_src); + off += cx; + payload_s -= cx; + } } else if (what <= (RAND_MAX * Echo)) { @@ -403,6 +428,11 @@ icmp->icmp_unused = (rand() % 2) ? 0 : rand(); off += 8; payload_s -= 8; + if(rand() % 5){ + cx = makepkt(buf + off, ip_dst, ip_src); + off += cx; + payload_s -= cx; + } } else if (what <= (RAND_MAX * MLD)) { @@ -514,6 +544,7 @@ if (skip <= acx) { for (cx = 0; cx < repeat; cx++) { + usleep(wwait); #ifdef LIBNET_BSDISH_OS c = libnet_write_link(l, buf, off + payload_s); #else /* !BSD */ @@ -546,7 +577,6 @@ - (tv.tv_usec - tv2.tv_usec) / 1000000.0; if ((datapushed / sec) >= max_pushed) usleep(10); /* 10 should give up our timeslice */ - sleep(1); } @@ -562,7 +592,88 @@ return (0); } +u_int32_t makepkt(char *payload, struct libnet_in6_addr ip_src, + struct libnet_in6_addr ip_dst) +{ + struct libnet_ipv6_hdr *ip6; + u_int32_t off = 0; + + ip6 = (struct libnet_ipv6_hdr *)(payload); + ip6->ip_flags[0] = 6 << 4; + ip6->ip_flags[1] = ((rand() & 0x0F) << 4) | ((rand() & 0xF0000) >> 16); + ip6->ip_flags[2] = (rand() & 0x0FF00 >> 8); + ip6->ip_flags[3] = (rand() & 0x000FF); + ip6->ip_hl = rand() & 0xff; + memcpy(&ip6->ip_src, &ip_src, 16); + memcpy(&ip6->ip_dst, &ip_dst, 16); + + off += 40; + + switch(rand() % 4) + { + case 0: + { + /* tcp header */ + struct tcphdr *tcp = (struct tcphdr *)(payload + off); + ip6->ip_nh = IPPROTO_TCP; + ip6->ip_len = LIBNET_TCP_H + rand() % 0xFF; + + tcp->th_off = rand() & 0xf; + tcp->th_sport = rand() & 0xffff; + tcp->th_dport = rand() & 0xffff; + tcp->th_seq = ((rand() & 0xffff) << 8) | (rand() & 0xffff); + tcp->th_ack = ((rand() & 0xffff) << 8) | (rand() & 0xffff); + tcp->th_x2 = rand() & 0xf; /* 4bit */ + tcp->th_flags = rand() & 0xff; + tcp->th_win = rand() & 0xffff; + tcp->th_sum = rand() & 0xffff; + tcp->th_urp = rand() & 0xffff; + + off += 20; + break; + } + case 1: + { + /* udp header */ + struct udphdr *udp = (struct udphdr *)(payload + off); + ip6->ip_nh = IPPROTO_UDP; + ip6->ip_len = LIBNET_UDP_H + rand() % 0xff; + + udp->uh_sport = rand() & 0xffff; + udp->uh_dport = rand() & 0xffff; + udp->uh_ulen = rand() & 0xffff; + udp->uh_sum = rand() & 0xffff; + + off += 8; + break; + } + case 2: + { + /* icmp header */ + struct libnet_icmpv6_hdr *icmp = + (struct libnet_icmpv6_hdr *)(payload + off); + ip6->ip_nh = IPPROTO_ICMP6; + ip6->ip_len = LIBNET_ICMPV6_H + rand() % 0xff; + icmp->icmp_type = rand() & 0xff; + icmp->icmp_code = rand() & 0xff; + icmp->icmp_sum = rand() & 0xffff; + off += 4; + break; + } + case 3: + /* + * XXX : extension header support + */ + ip6->ip_nh = rand() & 0xff; + ip6->ip_len = rand() & 0xffff; + break; + default: + break; + } + return (off); +} + void usage(u_char *name) { fprintf(stderr, @@ -574,10 +685,11 @@ #endif " [-r seed] [-m ]\n" " [-p ] [-k ] [-x ]\n" - " [-z ] [-Z ] [-K ]\n" + " [-z ] [-Z ] [-K ] [-w ]\n" "\n" " Percentage Opts: [-F frags] [-V Bad IP Version]\n" " [-H hop limit] [-I Bad checksum]\n" + " [-L linklocal addr] [-A sitelocal addr]\n" " [-P IcmpOpt]\n" " [-T Toobig] [-R Redirect] [-E Echo]\n" " [-U Unreach] [-M MLD] [-O Router]\n" @@ -618,7 +730,7 @@ exit(0); } -struct libnet_in6_addr randipv6(void) +struct libnet_in6_addr randipv6(float Llocal, float Slocal) { char *ip, *p; int i; @@ -629,8 +741,19 @@ exit(EXIT_FAILURE); } for(i = 0; i < 8; i++){ + if (i == 0) + { + if (rand() <= (RAND_MAX * Llocal)) + { + p += sprintf(p, "fe80:"); + continue; + }else if (rand() <= (RAND_MAX * Slocal)){ + p += sprintf(p, "fec0:"); + continue; + } + } p += sprintf(p, "%x", rand() % 0xffff); - if(i != 7) p += sprintf(p, ":"); + if (i != 7) p += sprintf(p, ":"); } ip6 = libnet_name2addr6(NULL, ip, 0); free(ip); ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.c#4 (text+ko) ==== @@ -72,6 +72,8 @@ float AhPct = 10; float BadIPVer = 10; float IPLength = 20; + float Llocal = 10; + float Slocal = 5; int MaxEHdr = 10; /* Not crypto strong randomness but we don't really care. And this * @@ -79,8 +81,7 @@ * if we need to repeat the results */ seed = getpid(); - - while((c = getopt(argc, argv, "hd:i:I:s:r:m:k:p:V:F:O:E:M:H:R:A:vx:S:D:")) != EOF) + while((c = getopt(argc, argv, "hd:i:I:s:r:m:k:p:V:F:O:E:M:H:R:A:vx:S:D:L:Q:")) != EOF) { switch (c) { @@ -91,6 +92,12 @@ case 'i': device = optarg; break; + case 'L': + Llocal = atof(optarg); + break; + case 'Q': + Slocal = atof(optarg); + break; case 'd': dst_ok = 1; /* just to pass sanity checks */ if (strncmp(optarg, "rand", sizeof("rand")) == 0) @@ -271,6 +278,8 @@ EspPct /= 100; AhPct /= 100; IPLength /= 100; + Llocal /= 100; + Slocal = Slocal / 100 + Llocal; @@ -290,9 +299,9 @@ tc = rand() & 0xff; if (src_ip_rand == 1) - ip_src = randipv6(); + ip_src = randipv6(Llocal, Slocal); if (dst_ip_rand == 1) - ip_dst = randipv6(); + ip_dst = randipv6(Llocal, Slocal); if (rand() <= (RAND_MAX * BadIPVer)) ver = rand() & 0xffff; @@ -489,6 +498,7 @@ " [-m ] [-M ]\n" " Percentage Opts: [-F ] [-R ] [-H ]\n" " [-O ] [-E [-A ]\n" + " [-L ] [-A ]\n" " [-V ]\n" " [-I ]\n" "notes:\n" @@ -508,7 +518,7 @@ : (char *) rindex(name, '/') + 1); } -struct libnet_in6_addr randipv6(void) +struct libnet_in6_addr randipv6(float Llocal, float Slocal) { char *ip, *p; int i; @@ -519,8 +529,19 @@ exit(EXIT_FAILURE); } for(i = 0; i < 8; i++){ + if (i == 0) + { + if (rand() <= (RAND_MAX * Llocal)) + { + p += sprintf(p, "fe80:"); + continue; + }else if (rand() <= (RAND_MAX * Slocal)){ + p += sprintf(p, "fec0:"); + continue; + } + } p += sprintf(p, "%x", rand() % 0xffff); - if(i != 7) p += sprintf(p, ":"); + if (i != 7) p += sprintf(p, ":"); } ip6 = libnet_name2addr6(NULL, ip, 0); free(ip); ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/isicng.h#2 (text+ko) ==== @@ -13,4 +13,5 @@ void usage(u_char *); void sighandler(int); -struct libnet_in6_addr randipv6(void); +struct libnet_in6_addr randipv6(float, float); +u_int32_t makepkt(char *, struct libnet_in6_addr, struct libnet_in6_addr); ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/tcpsicng.c#2 (text+ko) ==== @@ -71,6 +71,8 @@ float UrgPct = 30; float TCPOptsPct= 50; float TCPCksm = 10; + float Llocal = 10; + float Slocal = 5; @@ -79,7 +81,7 @@ * if we need to repeat the results */ seed = getpid(); - while((c = getopt(argc, argv, "hd:i:s:r:m:k:D:S:p:V:F:u:T:t:vx:")) != EOF) + while((c = getopt(argc, argv, "hd:i:s:r:m:k:D:S:p:V:F:u:T:t:vx:L:A:")) != EOF) { switch (c) { @@ -90,6 +92,12 @@ usage(argv[0]); exit(0); break; + case 'L': + Llocal = atof(optarg); + break; + case 'A': + Slocal = atof(optarg); + break; case 'd': dst_ok = 1; if ((tmp_port = index(optarg, ',')) != NULL) @@ -277,6 +285,8 @@ UrgPct /= 100; TCPOptsPct /= 100; TCPCksm /= 100; + Llocal /= 100; + Slocal = Slocal / 100 + Llocal; @@ -295,9 +305,9 @@ tc = rand() & 0xff; if (src_ip_rand == 1) - ip_src = randipv6(); + ip_src = randipv6(Llocal, Slocal); if (dst_ip_rand == 1) - ip_dst = randipv6(); + ip_dst = randipv6(Llocal, Slocal); if (rand() <= (RAND_MAX * BadIPVer)) ver = rand() & 0xf; @@ -452,6 +462,7 @@ " [-p ] [-k ] [-x ]\n" "\n" " Percentage Opts: [-F frags] [-V ]\n" + " [-L ] [-A ]\n" " [-T ] [-u ] [-t ]\n" "\n" " [-v] causes packet info to be printed out -- DEBUGGING\n\n" @@ -489,7 +500,7 @@ exit(0); } -struct libnet_in6_addr randipv6(void) +struct libnet_in6_addr randipv6(float Llocal, float Slocal) { char *ip, *p; int i; @@ -500,8 +511,19 @@ exit(EXIT_FAILURE); } for(i = 0; i < 8; i++){ + if (i == 0) + { + if (rand() <= (RAND_MAX * Llocal)) + { + p += sprintf(p, "fe80:"); + continue; + }else if (rand() <= (RAND_MAX * Slocal)){ + p += sprintf(p, "fec0:"); + continue; + } + } p += sprintf(p, "%x", rand() % 0xffff); - if(i != 7) p += sprintf(p, ":"); + if (i != 7) p += sprintf(p, ":"); } ip6 = libnet_name2addr6(NULL, ip, 0); free(ip); ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/udpsicng.c#2 (text+ko) ==== @@ -69,6 +69,8 @@ float FragPct = 30; float BadIPVer = 10; float UDPCksm = 5; + float Llocal = 10; + float Slocal = 5; dst_prt = src_prt = 0; @@ -77,13 +79,19 @@ * if we need to repeat the results */ seed = getpid(); - while((c = getopt(argc, argv, "hd:s:i:r:m:k:D:S:p:V:F:U:vx:")) != EOF) + while((c = getopt(argc, argv, "hd:s:i:r:m:k:D:S:p:V:F:U:A:L:vx:")) != EOF) { switch (c) { case 'i': device = optarg; break; + case 'L': + Llocal = atof(optarg); + break; + case 'A': + Slocal = atof(optarg); + break; case 'h': usage(argv[0]); exit(EXIT_SUCCESS); @@ -261,6 +269,8 @@ BadIPVer /= 100; FragPct /= 100; UDPCksm /= 100; + Llocal /= 100; + Slocal = Slocal / 100 + Llocal; /************* * Main Loop * @@ -276,9 +286,9 @@ tc = rand() & 0xff; if (src_ip_rand == 1) - ip_src = randipv6(); + ip_src = randipv6(Llocal, Slocal); if (dst_ip_rand == 1) - ip_dst = randipv6(); + ip_dst = randipv6(Llocal, Slocal); if (rand() <= (RAND_MAX * BadIPVer)) ver = rand() & 0xf; @@ -416,6 +426,7 @@ " [-p ] [-k ] [-x ]\n" "\n" " Percentage Opts: [-F frags] [-V ]\n" + " [-L linklocal addr] [-A sitelocal addr]\n" " [-U ]\n" "\n" " [-v] causes packet info to be printed out -- DEBUGGING\n\n" @@ -453,7 +464,7 @@ exit(0); } -struct libnet_in6_addr randipv6(void) +struct libnet_in6_addr randipv6(float Llocal, float Slocal) { char *ip, *p; int i; @@ -464,8 +475,19 @@ exit(EXIT_FAILURE); } for(i = 0; i < 8; i++){ + if (i == 0) + { + if (rand() <= (RAND_MAX * Llocal)) + { + p += sprintf(p, "fe80:"); + continue; + }else if (rand() <= (RAND_MAX * Slocal)){ + p += sprintf(p, "fec0:"); + continue; + } + } p += sprintf(p, "%x", rand() % 0xffff); - if(i != 7) p += sprintf(p, ":"); + if (i != 7) p += sprintf(p, ":"); } ip6 = libnet_name2addr6(NULL, ip, 0); free(ip); From owner-p4-projects@FreeBSD.ORG Wed Jul 5 13:19:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8E18E16A4DE; Wed, 5 Jul 2006 13:19:13 +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 6A0FD16A4DA for ; Wed, 5 Jul 2006 13:19:13 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B425143D62 for ; Wed, 5 Jul 2006 13:19:10 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65DJAIV032895 for ; Wed, 5 Jul 2006 13:19:10 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65DJA4p032892 for perforce@freebsd.org; Wed, 5 Jul 2006 13:19:10 GMT (envelope-from piso@freebsd.org) Date: Wed, 5 Jul 2006 13:19:10 GMT Message-Id: <200607051319.k65DJA4p032892@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100627 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 13:19:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=100627 Change 100627 by piso@piso_newluxor on 2006/07/05 13:19:00 Avoid duplication. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#8 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#8 (text+ko) ==== @@ -79,18 +79,14 @@ struct proto_handler *next; }; -#ifdef _KERNEL + // XXX - convert it to use queue(3) struct chain { void *chain; +#ifdef _KERNEL struct rwlock rw; -}; -#else -// XXX - convert it to use queue(3) -struct chain { - void *chain; +#endif }; -#endif /* * Used only in userland when libalias needs to keep track of all From owner-p4-projects@FreeBSD.ORG Wed Jul 5 14:10:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6469516A4DF; Wed, 5 Jul 2006 14:10:14 +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 3740616A4DD for ; Wed, 5 Jul 2006 14:10:14 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D27D143D46 for ; Wed, 5 Jul 2006 14:10:13 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65EADBf039330 for ; Wed, 5 Jul 2006 14:10:13 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65EADwj039327 for perforce@freebsd.org; Wed, 5 Jul 2006 14:10:13 GMT (envelope-from piso@freebsd.org) Date: Wed, 5 Jul 2006 14:10:13 GMT Message-Id: <200607051410.k65EADwj039327@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100629 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 14:10:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=100629 Change 100629 by piso@piso_newluxor on 2006/07/05 14:09:30 First simplify dll handling: -mutex operations where #ifdef out in userland, that means dll_chain manipulation has never been thread safe, so make it more explicit axing all the empy LIBALIAS_LOCK() operations -> this is not a problem cause all the programs using libalias in userland (ppp and natd) aren't multithreaded, anyway it has to be fixed later. -put some comments to mark the thread unsafetyness Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#9 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#9 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#9 (text+ko) ==== @@ -60,7 +60,8 @@ #include /* protocol and userland module handlers chains */ -struct chain handler_chain, dll_chain; +struct chain handler_chain; +struct dll *dll_chain; #ifdef _KERNEL @@ -254,13 +255,12 @@ return (handler_chain.chain); } +/* dll manipulation code - this code is not thread safe... */ + static int -_attach_dll(struct chain *c, struct dll *p) { - struct dll **b; +_attach_dll(struct dll **b, struct dll *p) { int i = 0; - LIBALIAS_WLOCK_ASSERT(c); - b = (struct dll **)&c->chain; p->next = NULL; /* i'm paranoid... */ for(; *b != NULL; b = &((*b)->next), i++) if (!strncmp((*b)->name, p->name, DLL_LEN)) @@ -271,12 +271,9 @@ } static void * -_detach_dll(struct chain *c, char *p) { - struct dll **b; +_detach_dll(struct dll **b, char *p) { void *err = NULL; - LIBALIAS_WLOCK_ASSERT(c); - b = (struct dll **)&c->chain; for(; *b != NULL; b = &((*b)->next)) if (!strncmp((*b)->name, p, DLL_LEN)) { err = *b; @@ -290,9 +287,7 @@ attach_dll(struct dll *p) { int i; - LIBALIAS_WLOCK(&dll_chain); i = _attach_dll(&dll_chain, p); - LIBALIAS_WUNLOCK(&dll_chain); return (i); } @@ -300,15 +295,13 @@ detach_dll(char *p) { void *i; - LIBALIAS_WLOCK(&dll_chain); i = _detach_dll(&dll_chain, p); - LIBALIAS_WUNLOCK(&dll_chain); return (i); } struct dll * walk_dll_chain(void) { - struct dll *t, **b = (struct dll **)&dll_chain.chain; + struct dll *t, **b = &dll_chain; for(t = *b; *b != NULL;) { *b = (*b)->next; ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#9 (text+ko) ==== @@ -83,9 +83,13 @@ // XXX - convert it to use queue(3) struct chain { void *chain; -#ifdef _KERNEL struct rwlock rw; -#endif +}; + +struct dll_chain { + void *chain; + // XXX - what if a process with 2 threads manipulate the + // libalias dll list? we still need a lock here... }; /* From owner-p4-projects@FreeBSD.ORG Wed Jul 5 14:25:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 11B9D16A4E2; Wed, 5 Jul 2006 14:25:45 +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 A92E616A4DD for ; Wed, 5 Jul 2006 14:25:44 +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 59D0543D53 for ; Wed, 5 Jul 2006 14:25:43 +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 k65EPhaL039972 for ; Wed, 5 Jul 2006 14:25:43 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 k65EOXRg039925 for perforce@freebsd.org; Wed, 5 Jul 2006 14:24:33 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 14:24:33 GMT Message-Id: <200607051424.k65EOXRg039925@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 100630 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 14:25:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=100630 Change 100630 by rwatson@rwatson_zoo on 2006/07/05 14:24:28 Integrate TrustedBSD MAC branch from TrustedBSD base branch, merging changes from base integrations @96149, @98005, @98537, @98552, @98565, @98572, @100149, @100493, @100615. Affected files ... .. //depot/projects/trustedbsd/mac/MAINTAINERS#33 integrate .. //depot/projects/trustedbsd/mac/Makefile#39 integrate .. //depot/projects/trustedbsd/mac/Makefile.inc1#66 integrate .. //depot/projects/trustedbsd/mac/ObsoleteFiles.inc#7 integrate .. //depot/projects/trustedbsd/mac/README#7 integrate .. //depot/projects/trustedbsd/mac/UPDATING#56 integrate .. //depot/projects/trustedbsd/mac/bin/cp/cp.c#17 integrate .. //depot/projects/trustedbsd/mac/bin/pax/pax.1#11 integrate .. //depot/projects/trustedbsd/mac/bin/setfacl/setfacl.1#9 integrate .. //depot/projects/trustedbsd/mac/bin/setfacl/setfacl.c#9 integrate .. //depot/projects/trustedbsd/mac/bin/sh/cd.c#8 integrate .. //depot/projects/trustedbsd/mac/bin/sh/eval.c#14 integrate .. //depot/projects/trustedbsd/mac/bin/sh/input.c#8 integrate .. //depot/projects/trustedbsd/mac/bin/sh/sh.1#23 integrate .. //depot/projects/trustedbsd/mac/bin/sh/var.c#13 integrate .. //depot/projects/trustedbsd/mac/bin/sh/var.h#8 integrate .. //depot/projects/trustedbsd/mac/contrib/binutils/bfd/elf64-sparc.c#10 integrate .. //depot/projects/trustedbsd/mac/contrib/bsnmp/NEWS#10 integrate .. //depot/projects/trustedbsd/mac/contrib/bsnmp/gensnmpdef/gensnmpdef.1#5 integrate .. //depot/projects/trustedbsd/mac/contrib/bsnmp/gensnmpdef/gensnmpdef.c#3 integrate .. //depot/projects/trustedbsd/mac/contrib/bsnmp/gensnmptree/gensnmptree.1#7 integrate .. //depot/projects/trustedbsd/mac/contrib/bsnmp/gensnmptree/gensnmptree.c#10 integrate .. //depot/projects/trustedbsd/mac/contrib/file/ChangeLog#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/FREEBSD-upgrade#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/adventure#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/amigaos#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/animation#6 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/apple#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/archive#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/audio#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/basis#1 branch .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/bflt#1 branch .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/bout#2 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/btsnoop#1 branch .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/c64#2 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/cad#2 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/commands#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/compress#6 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/console#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/cracklib#1 branch .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/ctags#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/database#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/diff#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/digital#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/dump#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/elf#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/filesystems#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/flash#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/fsav#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/gnu#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/iff#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/images#6 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/java#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/linux#6 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/lisp#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/mach#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/macintosh#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/mail.news#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/maple#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/misctools#2 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/msdos#6 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/mup#1 branch .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/ncr#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/perl#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/printer#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/psion#2 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/python#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/riff#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/scientific#1 branch .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/sgi#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/sharc#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/sql#2 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/varied.out#5 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Magdir/wordprocessors#2 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Makefile.am#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/Makefile.in#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/aclocal.m4#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/apprentice.c#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/ascmagic.c#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/compress.c#6 integrate .. //depot/projects/trustedbsd/mac/contrib/file/config.h.in#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/configure#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/configure.in#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/file.c#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/file.h#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/file.man#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/fsmagic.c#6 integrate .. //depot/projects/trustedbsd/mac/contrib/file/funcs.c#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/libmagic.man#2 integrate .. //depot/projects/trustedbsd/mac/contrib/file/magic.c#3 integrate .. //depot/projects/trustedbsd/mac/contrib/file/magic.man#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/magic.mime#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/magic2mime#4 integrate .. //depot/projects/trustedbsd/mac/contrib/file/patchlevel.h#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/print.c#7 integrate .. //depot/projects/trustedbsd/mac/contrib/file/readelf.c#8 integrate .. //depot/projects/trustedbsd/mac/contrib/file/readelf.h#6 integrate .. //depot/projects/trustedbsd/mac/contrib/file/softmagic.c#8 integrate .. //depot/projects/trustedbsd/mac/contrib/netcat/atomicio.c#2 integrate .. //depot/projects/trustedbsd/mac/contrib/netcat/atomicio.h#1 branch .. //depot/projects/trustedbsd/mac/contrib/netcat/nc.1#4 integrate .. //depot/projects/trustedbsd/mac/contrib/netcat/netcat.c#2 integrate .. //depot/projects/trustedbsd/mac/contrib/netcat/socks.c#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/FREEBSD-upgrade#4 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/HISTORY#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/Makefile.am#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/Makefile.in#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/README#4 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/TODO#3 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/VERSION#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/Makefile.am#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/Makefile.in#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/auditd/auditd.c#4 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/auditfilterd/Makefile.am#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/auditfilterd/Makefile.in#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/auditfilterd/auditfilterd.8#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/auditfilterd/auditfilterd.c#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/auditfilterd/auditfilterd.h#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/bin/auditreduce/auditreduce.c#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bsm/Makefile.am#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bsm/Makefile.in#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bsm/audit.h#3 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bsm/audit_filter.h#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/bsm/audit_kevents.h#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bsm/audit_record.h#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/bsm/libbsm.h#4 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/config/config.h#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/config/config.h.in#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/config/ltmain.sh#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/configure#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/configure.ac#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/etc/audit_event#3 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/etc/audit_filter#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/Makefile.am#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/Makefile.in#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/au_open.3#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/au_token.3#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/audit_submit.3#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/bsm_audit.c#3 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/bsm_io.c#3 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/bsm_notify.c#4 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/bsm_token.c#3 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/bsm_wrappers.c#4 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/libbsm/libbsm.3#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/man/audit.log.5#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/man/auditctl.2#2 integrate .. //depot/projects/trustedbsd/mac/contrib/openbsm/modules/Makefile.am#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/modules/Makefile.in#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/modules/auditfilter_noop/Makefile.am#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/modules/auditfilter_noop/Makefile.in#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/test/Makefile.am#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/test/Makefile.in#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/test/bsm/Makefile.am#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/test/bsm/Makefile.in#1 branch .. //depot/projects/trustedbsd/mac/contrib/openbsm/test/bsm/generate.c#1 branch .. //depot/projects/trustedbsd/mac/contrib/pf/man/pfsync.4#8 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/FREEBSD-upgrade#19 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/PGPKEYS#10 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/RELEASE_NOTES#17 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/cf/README#16 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/cf/cf/submit.cf#16 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/cf/cf/submit.mc#8 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/cf/feature/dnsbl.m4#7 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/cf/feature/enhdnsbl.m4#5 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/cf/m4/proto.m4#15 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/cf/m4/version.m4#17 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/include/libmilter/mfapi.h#11 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/libmilter/docs/xxfi_header.html#4 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/libmilter/engine.c#12 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/libsm/t-memstat.c#2 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/README#16 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/bf.c#9 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/collect.c#14 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/conf.c#18 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/daemon.c#15 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/deliver.c#21 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/domain.c#12 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/envelope.c#10 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/headers.c#13 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/helpfile#8 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/main.c#15 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/map.c#14 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/mci.c#14 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/mime.c#11 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/parseaddr.c#16 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/queue.c#17 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/savemail.c#11 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/sendmail.h#17 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/sfsasl.c#13 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/sfsasl.h#6 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/srvrsmtp.c#17 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/tls.c#13 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/util.c#13 integrate .. //depot/projects/trustedbsd/mac/contrib/sendmail/src/version.c#17 integrate .. //depot/projects/trustedbsd/mac/contrib/tcpdump/tcpdump.1#7 integrate .. //depot/projects/trustedbsd/mac/contrib/top/top.X#8 integrate .. //depot/projects/trustedbsd/mac/contrib/traceroute/traceroute.8#5 integrate .. //depot/projects/trustedbsd/mac/contrib/traceroute/traceroute.c#8 integrate .. //depot/projects/trustedbsd/mac/crypto/openssh/config.h#11 integrate .. //depot/projects/trustedbsd/mac/crypto/openssh/loginrec.c#12 integrate .. //depot/projects/trustedbsd/mac/crypto/openssh/ssh_namespace.h#1 branch .. //depot/projects/trustedbsd/mac/etc/Makefile#49 integrate .. //depot/projects/trustedbsd/mac/etc/bluetooth/hcsecd.conf#3 integrate .. //depot/projects/trustedbsd/mac/etc/cached.conf#1 branch .. //depot/projects/trustedbsd/mac/etc/defaults/periodic.conf#16 integrate .. //depot/projects/trustedbsd/mac/etc/defaults/rc.conf#47 integrate .. //depot/projects/trustedbsd/mac/etc/devd.conf#18 integrate .. //depot/projects/trustedbsd/mac/etc/hosts.allow#7 integrate .. //depot/projects/trustedbsd/mac/etc/mtree/BSD.root.dist#15 integrate .. //depot/projects/trustedbsd/mac/etc/mtree/BSD.usr.dist#38 integrate .. //depot/projects/trustedbsd/mac/etc/netstart#8 integrate .. //depot/projects/trustedbsd/mac/etc/nsswitch.conf#1 branch .. //depot/projects/trustedbsd/mac/etc/periodic/daily/470.status-named#7 integrate .. //depot/projects/trustedbsd/mac/etc/periodic/security/600.ip6fwdenied#6 delete .. //depot/projects/trustedbsd/mac/etc/periodic/security/650.ip6fwlimit#7 delete .. //depot/projects/trustedbsd/mac/etc/periodic/security/Makefile#5 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/Makefile#33 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/abi#7 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/auditd#2 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/bridge#1 branch .. //depot/projects/trustedbsd/mac/etc/rc.d/cached#1 branch .. //depot/projects/trustedbsd/mac/etc/rc.d/devd#8 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/ip6fw#6 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/isdnd#12 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/jail#14 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/ldconfig#13 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/mdconfig#1 branch .. //depot/projects/trustedbsd/mac/etc/rc.d/mdconfig2#1 branch .. //depot/projects/trustedbsd/mac/etc/rc.d/moused#8 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/netif#12 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/nsswitch#4 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/pcvt#5 delete .. //depot/projects/trustedbsd/mac/etc/rc.d/pf#8 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/syscons#11 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/sysctl#10 integrate .. //depot/projects/trustedbsd/mac/etc/rc.firewall6#8 integrate .. //depot/projects/trustedbsd/mac/etc/rc.subr#24 integrate .. //depot/projects/trustedbsd/mac/etc/sendmail/freebsd.mc#11 integrate .. //depot/projects/trustedbsd/mac/etc/sendmail/freebsd.submit.mc#3 integrate .. //depot/projects/trustedbsd/mac/games/fortune/datfiles/fortunes#42 integrate .. //depot/projects/trustedbsd/mac/gnu/lib/libgcc_r/Makefile#2 delete .. //depot/projects/trustedbsd/mac/include/arpa/nameser.h#5 integrate .. //depot/projects/trustedbsd/mac/include/glob.h#4 integrate .. //depot/projects/trustedbsd/mac/include/malloc_np.h#2 integrate .. //depot/projects/trustedbsd/mac/include/netdb.h#13 integrate .. //depot/projects/trustedbsd/mac/include/nsswitch.h#4 integrate .. //depot/projects/trustedbsd/mac/include/res_update.h#2 integrate .. //depot/projects/trustedbsd/mac/include/resolv.h#10 integrate .. //depot/projects/trustedbsd/mac/include/rpc/rpcent.h#3 integrate .. //depot/projects/trustedbsd/mac/kerberos5/lib/libroken/Makefile#7 integrate .. //depot/projects/trustedbsd/mac/lib/csu/common/crtbegin.c#3 delete .. //depot/projects/trustedbsd/mac/lib/csu/common/crtend.c#2 delete .. //depot/projects/trustedbsd/mac/lib/libarchive/Makefile#16 integrate .. //depot/projects/trustedbsd/mac/lib/libarchive/archive_entry.c#12 integrate .. //depot/projects/trustedbsd/mac/lib/libarchive/archive_read_extract.c#11 integrate .. //depot/projects/trustedbsd/mac/lib/libarchive/archive_read_support_format_tar.c#11 integrate .. //depot/projects/trustedbsd/mac/lib/libatm/Makefile#8 integrate .. //depot/projects/trustedbsd/mac/lib/libbsm/Makefile#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/Makefile#23 integrate .. //depot/projects/trustedbsd/mac/lib/libc/arm/SYS.h#3 integrate .. //depot/projects/trustedbsd/mac/lib/libc/gen/getgrent.c#7 integrate .. //depot/projects/trustedbsd/mac/lib/libc/gen/gethostname.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/gen/getpwent.c#14 integrate .. //depot/projects/trustedbsd/mac/lib/libc/gen/glob.3#7 integrate .. //depot/projects/trustedbsd/mac/lib/libc/gen/glob.c#7 integrate .. //depot/projects/trustedbsd/mac/lib/libc/gen/signal.3#9 integrate .. //depot/projects/trustedbsd/mac/lib/libc/gen/syslog.c#14 integrate .. //depot/projects/trustedbsd/mac/lib/libc/i386/gen/_ctx_start.S#4 integrate .. //depot/projects/trustedbsd/mac/lib/libc/i386/sys/i386_set_watch.3#4 integrate .. //depot/projects/trustedbsd/mac/lib/libc/include/isc/list.h#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/include/nscache.h#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/include/nscachedcli.h#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/nameser/Symbol.map#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/nameser/ns_samedomain.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/Makefile.inc#15 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/Symbol.map#3 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/gai_strerror.3#3 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/gai_strerror.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getaddrinfo.c#23 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/gethostbydns.c#16 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/gethostbyht.c#8 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/gethostbyname.3#10 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/gethostbynis.c#9 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/gethostnamadr.c#9 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getnameinfo.c#8 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getnetnamadr.c#9 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getproto.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getprotoent.c#8 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getprotoname.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getservbyname.c#6 delete .. //depot/projects/trustedbsd/mac/lib/libc/net/getservbyport.c#6 delete .. //depot/projects/trustedbsd/mac/lib/libc/net/getservent.c#12 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/name6.c#21 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/netdb_private.h#7 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/nscache.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/net/nscachedcli.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/net/nsdispatch.c#8 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/nsparser.y#4 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/res_mkupdate.c#6 delete .. //depot/projects/trustedbsd/mac/lib/libc/net/res_update.c#5 delete .. //depot/projects/trustedbsd/mac/lib/libc/resolv/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/resolv/Symbol.map#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/resolv/h_errno.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/resolv/res_findzonecut.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/resolv/res_mkupdate.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/resolv/res_state.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/resolv/res_update.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/rpc/getrpcent.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libc/stdlib/a64l.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libc/stdlib/malloc.c#24 integrate .. //depot/projects/trustedbsd/mac/lib/libc/stdlib/strtol.3#8 integrate .. //depot/projects/trustedbsd/mac/lib/libc/stdlib/strtoul.3#9 integrate .. //depot/projects/trustedbsd/mac/lib/libc/stdlib/tsearch.3#8 integrate .. //depot/projects/trustedbsd/mac/lib/libc/string/strlcpy.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/chflags.2#6 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/mincore.2#7 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/stat.2#12 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/truncate.2#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/wait.2#7 integrate .. //depot/projects/trustedbsd/mac/lib/libcam/camlib.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libfetch/ftp.c#18 integrate .. //depot/projects/trustedbsd/mac/lib/libkvm/kvm_minidump_amd64.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libkvm/kvm_minidump_i386.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libmagic/Makefile#6 integrate .. //depot/projects/trustedbsd/mac/lib/libmagic/config.h#3 integrate .. //depot/projects/trustedbsd/mac/lib/libpam/modules/pam_ssh/Makefile#15 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/i386/i386/thr_getcontext.S#5 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/pthread.map#12 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/thread/thr_private.h#23 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/thread/thr_sig.c#17 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/thread/thr_sigaction.c#7 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/thread/thr_symbols.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libsdp/sdp.h#5 integrate .. //depot/projects/trustedbsd/mac/lib/libsdp/util.c#6 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/pthread.map#7 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/thread/thr_attr.c#6 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/thread/thr_getschedparam.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/thread/thr_init.c#16 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/thread/thr_mutex.c#15 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/thread/thr_mutexattr.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/thread/thr_private.h#16 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/thread/thr_setschedparam.c#8 integrate .. //depot/projects/trustedbsd/mac/lib/libthr/thread/thr_spec.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libthread_db/libpthread_db.c#7 integrate .. //depot/projects/trustedbsd/mac/lib/libthread_db/libpthread_db.h#3 integrate .. //depot/projects/trustedbsd/mac/lib/libthread_db/libthr_db.c#7 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/Makefile#14 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/kld.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/login_class.3#6 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/pidfile.c#3 integrate .. //depot/projects/trustedbsd/mac/lib/msun/src/e_scalbf.c#6 integrate .. //depot/projects/trustedbsd/mac/libexec/ftpd/Makefile#14 integrate .. //depot/projects/trustedbsd/mac/libexec/ftpd/ftpcmd.y#21 integrate .. //depot/projects/trustedbsd/mac/release/Makefile#70 integrate .. //depot/projects/trustedbsd/mac/release/doc/README#3 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/hardware/Makefile#6 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/hardware/alpha/Makefile#4 delete .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/hardware/alpha/article.sgml#3 delete .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#26 delete .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/hardware/common/artheader.sgml#7 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#58 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#7 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/installation/Makefile#6 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/installation/alpha/Makefile#2 delete .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/installation/alpha/article.sgml#3 delete .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/installation/common/artheader.sgml#6 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/installation/common/install.sgml#15 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/installation/common/layout.sgml#6 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/relnotes/Makefile#6 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/relnotes/alpha/Makefile#2 delete .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/relnotes/alpha/article.sgml#4 delete .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#86 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#22 integrate .. //depot/projects/trustedbsd/mac/release/doc/ru_RU.KOI8-R/hardware/Makefile#2 integrate .. //depot/projects/trustedbsd/mac/release/doc/ru_RU.KOI8-R/hardware/common/dev.sgml#8 integrate .. //depot/projects/trustedbsd/mac/release/doc/share/examples/Makefile.relnotesng#10 integrate .. //depot/projects/trustedbsd/mac/release/doc/share/misc/dev.archlist.txt#11 integrate .. //depot/projects/trustedbsd/mac/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#7 integrate .. //depot/projects/trustedbsd/mac/release/i386/mkisoimages.sh#7 integrate .. //depot/projects/trustedbsd/mac/release/pc98/fixit-small_crunch.conf#7 integrate .. //depot/projects/trustedbsd/mac/release/picobsd/build/picobsd#12 integrate .. //depot/projects/trustedbsd/mac/sbin/Makefile#35 integrate .. //depot/projects/trustedbsd/mac/sbin/adjkerntz/adjkerntz.c#5 integrate .. //depot/projects/trustedbsd/mac/sbin/devfs/devfs.c#3 integrate .. //depot/projects/trustedbsd/mac/sbin/dhclient/dhclient.c#5 integrate .. //depot/projects/trustedbsd/mac/sbin/dumpon/dumpon.c#8 integrate .. //depot/projects/trustedbsd/mac/sbin/fdisk/fdisk.c#23 integrate .. //depot/projects/trustedbsd/mac/sbin/ffsinfo/ffsinfo.8#10 integrate .. //depot/projects/trustedbsd/mac/sbin/fsdb/fsdb.8#10 integrate .. //depot/projects/trustedbsd/mac/sbin/fsdb/fsdb.c#11 integrate .. //depot/projects/trustedbsd/mac/sbin/geom/class/eli/geli.8#5 integrate .. //depot/projects/trustedbsd/mac/sbin/geom/class/eli/geom_eli.c#5 integrate .. //depot/projects/trustedbsd/mac/sbin/ggate/ggatec/ggatec.8#7 integrate .. //depot/projects/trustedbsd/mac/sbin/gpt/add.c#10 integrate .. //depot/projects/trustedbsd/mac/sbin/gpt/gpt.8#11 integrate .. //depot/projects/trustedbsd/mac/sbin/gpt/gpt.c#11 integrate .. //depot/projects/trustedbsd/mac/sbin/gpt/gpt.h#9 integrate .. //depot/projects/trustedbsd/mac/sbin/gpt/label.c#2 integrate .. //depot/projects/trustedbsd/mac/sbin/gpt/remove.c#5 integrate .. //depot/projects/trustedbsd/mac/sbin/gpt/show.c#10 integrate .. //depot/projects/trustedbsd/mac/sbin/ifconfig/Makefile#12 integrate .. //depot/projects/trustedbsd/mac/sbin/ifconfig/ifconfig.8#35 integrate .. //depot/projects/trustedbsd/mac/sbin/ifconfig/ifgroup.c#1 branch .. //depot/projects/trustedbsd/mac/sbin/ifconfig/ifieee80211.c#16 integrate .. //depot/projects/trustedbsd/mac/sbin/ifconfig/ifpfsync.c#3 integrate .. //depot/projects/trustedbsd/mac/sbin/init/init.c#14 integrate .. //depot/projects/trustedbsd/mac/sbin/ip6fw/Makefile#4 delete .. //depot/projects/trustedbsd/mac/sbin/ip6fw/ip6fw.8#13 delete .. //depot/projects/trustedbsd/mac/sbin/ip6fw/ip6fw.c#11 delete .. //depot/projects/trustedbsd/mac/sbin/ip6fw/sample.sh#2 delete .. //depot/projects/trustedbsd/mac/sbin/ipf/ipf/Makefile#5 integrate .. //depot/projects/trustedbsd/mac/sbin/ipfw/ipfw.8#38 integrate .. //depot/projects/trustedbsd/mac/sbin/ipfw/ipfw2.c#33 integrate .. //depot/projects/trustedbsd/mac/sbin/mount/mount.8#21 integrate .. //depot/projects/trustedbsd/mac/sbin/mount/mount.c#22 integrate .. //depot/projects/trustedbsd/mac/sbin/mount_msdosfs/mount_msdosfs.c#10 integrate .. //depot/projects/trustedbsd/mac/sbin/mount_std/mount_std.8#10 integrate .. //depot/projects/trustedbsd/mac/sbin/rcorder/rcorder.c#5 integrate .. //depot/projects/trustedbsd/mac/sbin/setkey/setkey.8#3 integrate .. //depot/projects/trustedbsd/mac/secure/lib/libssh/Makefile#21 integrate .. //depot/projects/trustedbsd/mac/secure/libexec/sftp-server/Makefile#10 integrate .. //depot/projects/trustedbsd/mac/secure/libexec/ssh-keysign/Makefile#5 integrate .. //depot/projects/trustedbsd/mac/secure/usr.bin/scp/Makefile#9 integrate .. //depot/projects/trustedbsd/mac/secure/usr.bin/sftp/Makefile#10 integrate .. //depot/projects/trustedbsd/mac/secure/usr.bin/ssh-add/Makefile#8 integrate .. //depot/projects/trustedbsd/mac/secure/usr.bin/ssh-agent/Makefile#8 integrate .. //depot/projects/trustedbsd/mac/secure/usr.bin/ssh-keygen/Makefile#8 integrate .. //depot/projects/trustedbsd/mac/secure/usr.bin/ssh-keyscan/Makefile#7 integrate .. //depot/projects/trustedbsd/mac/secure/usr.bin/ssh/Makefile#14 integrate .. //depot/projects/trustedbsd/mac/secure/usr.sbin/sshd/Makefile#19 integrate .. //depot/projects/trustedbsd/mac/share/examples/diskless/clone_root#3 integrate .. //depot/projects/trustedbsd/mac/share/examples/etc/README.examples#5 integrate .. //depot/projects/trustedbsd/mac/share/examples/kld/cdev/module/cdevmod.c#4 integrate .. //depot/projects/trustedbsd/mac/share/examples/mdoc/example.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/Makefile#60 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/aac.4#11 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/acpi.4#22 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/acpi_dock.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/adv.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/adw.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/aha.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ahb.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ahc.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ahd.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/altq.4#10 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/amd.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/amr.4#11 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/arcmsr.4#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ath.4#16 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/atkbd.4#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/audit.4#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/auditpipe.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/bge.4#15 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/bt.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/carp.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ciss.4#9 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/cpufreq.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/dc.4#14 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ddb.4#9 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/dpt.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/enc.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/esp.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/fast_ipsec.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/fdc.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/fxp.4#13 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/geom.4#12 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/geom_fox.4#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/hptmv.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ida.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/if_bridge.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/iir.4#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ip.4#14 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ips.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/isp.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ispfw.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/kbdmux.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ktr.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/lmc.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/man4.alpha/Makefile#2 delete .. //depot/projects/trustedbsd/mac/share/man/man4/man4.alpha/linux.4#4 delete .. //depot/projects/trustedbsd/mac/share/man/man4/man4.alpha/osf1.4#4 delete .. //depot/projects/trustedbsd/mac/share/man/man4/man4.i386/Makefile#19 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/man4.i386/linux.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/man4.i386/lnc.4#8 delete .. //depot/projects/trustedbsd/mac/share/man/man4/man4.i386/padlock.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/mlx.4#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/mly.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/mpt.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/mxge.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/myri10ge.4#2 delete .. //depot/projects/trustedbsd/mac/share/man/man4/ncr.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ncv.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/nfe.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/ng_etf.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ng_netflow.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ng_tag.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/nsp.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/pcvt.4#7 delete .. //depot/projects/trustedbsd/mac/share/man/man4/pst.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/re.4#10 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/rr232x.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/sched_4bsd.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/sched_core.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/sched_ule.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/sio.4#13 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/smp.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/snd_csa.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/snd_envy24.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/snd_gusc.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/snd_ich.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/snd_sbc.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/splash.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/stg.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/sym.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/trm.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/twa.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/twe.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/umodem.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/uplcom.4#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/uscanner.4#11 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/uvisor.4#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/vinum.4#12 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/vkbd.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/wi.4#23 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/Makefile#20 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/devfs.5#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/ext2fs.5#1 branch .. //depot/projects/trustedbsd/mac/share/man/man5/linprocfs.5#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/linsysfs.5#1 branch .. //depot/projects/trustedbsd/mac/share/man/man5/mailer.conf.5#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/make.conf.5#38 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/nsswitch.conf.5#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/periodic.conf.5#17 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/procfs.5#10 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/rc.conf.5#47 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/reiserfs.5#1 branch .. //depot/projects/trustedbsd/mac/share/man/man5/src.conf.5#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man7/build.7#11 integrate .. //depot/projects/trustedbsd/mac/share/man/man7/hier.7#23 integrate .. //depot/projects/trustedbsd/mac/share/man/man7/security.7#15 integrate .. //depot/projects/trustedbsd/mac/share/man/man8/rc.subr.8#9 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/Makefile#46 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/bus_dma.9#13 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/crypto.9#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_sysctl.9#1 branch .. //depot/projects/trustedbsd/mac/share/man/man9/lock.9#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/make_dev.9#10 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/suser.9#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/sysctl.9#1 branch .. //depot/projects/trustedbsd/mac/share/man/man9/sysctl_add_oid.9#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/sysctl_ctx_init.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vflush.9#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vgone.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/zero_copy.9#8 integrate .. //depot/projects/trustedbsd/mac/share/misc/bsd-family-tree#26 integrate .. //depot/projects/trustedbsd/mac/share/misc/iso3166#8 integrate .. //depot/projects/trustedbsd/mac/share/mk/bsd.README#12 integrate .. //depot/projects/trustedbsd/mac/share/mk/bsd.own.mk#14 integrate .. //depot/projects/trustedbsd/mac/share/monetdef/pt_PT.ISO8859-1.src#3 integrate .. //depot/projects/trustedbsd/mac/share/syscons/fonts/iso15-8x14.fnt#3 integrate .. //depot/projects/trustedbsd/mac/share/syscons/fonts/iso15-8x16.fnt#3 integrate .. //depot/projects/trustedbsd/mac/share/syscons/fonts/iso15-8x8.fnt#3 integrate .. //depot/projects/trustedbsd/mac/share/syscons/fonts/iso15-thin-8x16.fnt#3 integrate .. //depot/projects/trustedbsd/mac/share/termcap/termcap.src#17 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/africa#5 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/antarctica#5 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/asia#10 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/australasia#9 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/backward#7 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/etcetera#3 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/europe#10 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/factory#2 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/leapseconds#9 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/northamerica#10 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/southamerica#11 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/systemv#3 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/yearistype.sh#3 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/zone.tab#11 integrate .. //depot/projects/trustedbsd/mac/sys/Makefile#14 integrate .. //depot/projects/trustedbsd/mac/sys/alpha/Makefile#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/api_up1000.c#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/atomic.s#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/autoconf.c#12 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/busdma_machdep.c#19 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/busspace.c#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/clock.c#16 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/clock_if.m#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/cpuconf.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/db_disasm.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/db_instruction.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/db_interface.c#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/db_trace.c#13 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_1000a.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_2100_a50.c#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_2100_a500.c#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_3000_300.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_3000_500.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_axppci_33.c#10 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_eb164.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_eb64plus.c#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_kn20aa.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_kn300.c#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_kn8ae.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_st550.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dec_st6600.c#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/divrem.m4#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/dump_machdep.c#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/elf_machdep.c#13 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/exception.s#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/fp_emulate.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/gdb_machdep.c#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/genassym.c#13 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/ieee_float.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/ieee_float.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/in_cksum.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/interrupt.c#22 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/locore.s#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/machdep.c#39 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/mem.c#12 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/mp_machdep.c#23 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/pal.s#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/pmap.c#42 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/prom.c#11 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/prom_disp.s#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/promcons.c#13 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/sgmap.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/support.s#10 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/swtch.s#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/sys_machdep.c#14 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/trap.c#32 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/uio_machdep.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/uma_machdep.c#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/vm_machdep.c#29 delete .. //depot/projects/trustedbsd/mac/sys/alpha/compile/.cvsignore#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/conf/.cvsignore#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/conf/DEFAULTS#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/conf/GENERIC#39 delete .. //depot/projects/trustedbsd/mac/sys/alpha/conf/GENERIC.hints#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/conf/MAC#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/conf/Makefile#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/conf/NOTES#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/_bus.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/_inttypes.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/_limits.h#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/_stdint.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/_types.h#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/alpha_cpu.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/asm.h#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/atomic.h#12 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/bootinfo.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/bus.h#18 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/bus_dma.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/bwx.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/chipset.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/clock.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/clockvar.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/cpu.h#11 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/cpuconf.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/cpufunc.h#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/db_machdep.h#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/elf.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/endian.h#10 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/exec.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/float.h#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/floatingpoint.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/fpu.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/frame.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/gdb_machdep.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/ieee.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/ieeefp.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/in_cksum.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/inst.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/intr.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/intrcnt.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/ioctl_bt848.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/ioctl_meteor.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/kdb.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/limits.h#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/md_var.h#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/memdev.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/mutex.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pal.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/param.h#12 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pc/bios.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pc/display.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pc/vesa.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pcb.h#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pcpu.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pmap.h#17 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pmc_mdep.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/ppireg.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/proc.h#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/profile.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/prom.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/pte.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/ptrace.h#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/reg.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/reloc.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/resource.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/rpb.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/runq.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/setjmp.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/sf_buf.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/sgmap.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/sigframe.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/signal.h#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/smp.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/stdarg.h#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/swiz.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/sysarch.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/timerreg.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/ucontext.h#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/varargs.h#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/include/vmparam.h#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/isa/isa.c#12 delete .. //depot/projects/trustedbsd/mac/sys/alpha/isa/isa_dma.c#10 delete .. //depot/projects/trustedbsd/mac/sys/alpha/isa/isavar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/isa/mcclock_isa.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/Makefile#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux.h#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_dummy.c#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_genassym.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_ipc64.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_locore.s#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_machdep.c#15 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_proto.h#17 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_syscall.h#16 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_sysent.c#16 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/linux_sysvec.c#19 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/syscalls.conf#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/linux/syscalls.master#16 delete .. //depot/projects/trustedbsd/mac/sys/alpha/mcbus/mcbus.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/mcbus/mcbusreg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/mcbus/mcbusvar.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/mcbus/mcmem.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/mcbus/mcpcia.c#14 delete .. //depot/projects/trustedbsd/mac/sys/alpha/mcbus/mcpciareg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/mcbus/mcpciavar.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/Makefile#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/README.mach-traps#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/exec_ecoff.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/imgact_osf1.c#14 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_ioctl.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_misc.c#25 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_mount.c#18 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_proto.h#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_signal.c#18 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_signal.h#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_syscall.h#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_sysent.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_sysvec.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/osf1_util.h#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/syscalls.conf#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/osf1/syscalls.master#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/alphapci_if.m#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/apecs.c#10 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/apecs_pci.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/apecsreg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/apecsvar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/bwx.c#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/cia.c#10 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/cia_pci.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/ciareg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/ciavar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/irongate.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/irongate_pci.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/irongatereg.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/irongatevar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/lca.c#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/lca_pci.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/lcareg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/lcavar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/pci_eb164_intr.s#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/pci_eb64plus_intr.s#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/pcibus.c#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/pcibus.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/swiz.c#4 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/t2.c#10 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/t2_pci.c#7 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/t2reg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/t2var.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/tsunami.c#9 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/tsunami_pci.c#8 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/tsunamireg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/pci/tsunamivar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/dwlpx.c#11 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/dwlpxreg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/dwlpxvar.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/gbus.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/gbusreg.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/gbusvar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/kftxx.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/kftxxreg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/kftxxvar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/mcclock_tlsb.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/tlsb.c#6 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/tlsbcpu.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/tlsbmem.c#5 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/tlsbreg.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/tlsbvar.h#3 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/zs_tlsb.c#12 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/zsreg.h#2 delete .. //depot/projects/trustedbsd/mac/sys/alpha/tlsb/zsvar.h#2 delete .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/apic_vector.S#10 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/busdma_machdep.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/fpu.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/initcpu.c#6 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/machdep.c#22 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/mp_machdep.c#18 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/pmap.c#22 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/trap.c#23 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/conf/DEFAULTS#3 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/conf/GENERIC#20 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/conf/NOTES#12 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/apicvar.h#9 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/clock.h#7 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/cpu.h#6 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/md_var.h#10 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/mutex.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/pmap.h#17 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/smp.h#9 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/specialreg.h#9 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/linux32/linux32_dummy.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/linux32/linux32_proto.h#8 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/linux32/linux32_syscall.h#8 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/linux32/linux32_sysent.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/linux32/linux32_sysvec.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/linux32/syscalls.master#8 integrate .. //depot/projects/trustedbsd/mac/sys/arm/arm/busdma_machdep.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/arm/arm/elf_trampoline.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/arm/arm/inckern.S#3 integrate .. //depot/projects/trustedbsd/mac/sys/arm/arm/locore.S#7 integrate .. //depot/projects/trustedbsd/mac/sys/arm/arm/machdep.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/arm/arm/pmap.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/arm/arm/vm_machdep.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/at91.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/at91_pdcreg.h#1 branch .. //depot/projects/trustedbsd/mac/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/trustedbsd/mac/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/trustedbsd/mac/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/at91_st.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/files.at91#4 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/if_ate.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/uart_bus_at91usart.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/uart_cpu_at91rm9200usart.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/arm/at91/uart_dev_at91usart.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/arm/conf/IQ31244#7 integrate .. //depot/projects/trustedbsd/mac/sys/arm/conf/KB920X#3 integrate .. //depot/projects/trustedbsd/mac/sys/arm/conf/SIMICS#6 integrate .. //depot/projects/trustedbsd/mac/sys/arm/conf/SKYEYE#3 integrate .. //depot/projects/trustedbsd/mac/sys/arm/include/_types.h#7 integrate .. //depot/projects/trustedbsd/mac/sys/arm/include/atomic.h#11 integrate .. //depot/projects/trustedbsd/mac/sys/arm/include/cpu.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/arm/include/cpuconf.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/arm/include/cpufunc.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/arm/include/pmap.h#10 integrate .. //depot/projects/trustedbsd/mac/sys/arm/sa11x0/assabet_machdep.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/arm/sa11x0/sa11x0_io.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/arm/sa11x0/sa11x0_reg.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/arm/sa11x0/sa11x0_var.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/arm/sa11x0/uart_cpu_sa1110.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/arm/sa11x0/uart_dev_sa1110.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/arm/xscale/i80321/i80321_space.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/arm/xscale/i80321/iq31244_machdep.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/arm/xscale/i80321/iq80321.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/boot/Makefile#14 integrate .. //depot/projects/trustedbsd/mac/sys/boot/alpha/Makefile#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/Makefile.inc#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/boot1/Makefile#8 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/boot1/boot1.c#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/cdboot/Makefile#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/cdboot/version#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/common/Makefile.common#7 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/common/conf.c#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/common/help.alpha#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/common/ldscript#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/common/main.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/Makefile#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/OSFpal.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/alpha_copy.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/alpha_module.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/bbinfo.h#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/bootinfo.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/common.h#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/delay.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/devicename.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/elf_freebsd.c#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/getsecs.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/libalpha.h#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/pal.S#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/prom.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/prom_disp.S#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/prom_swpal.S#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/reboot.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/srmdisk.c#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/srmnet.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/start.S#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/libalpha/time.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/loader/Makefile#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/loader/version#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/netboot/Makefile#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/alpha/netboot/version#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/Makefile#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/Makefile.inc#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/include/arcfuncs.h#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/include/arctypes.h#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/include/libarc.h#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/Makefile#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/abort.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/arcconsole.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/arcdisk.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/arch/alpha/copy.c#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/arch/alpha/rpb.c#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/arch/alpha/setjmp.S#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/arch/alpha/start.S#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/bootinfo.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/delay.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/devicename.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/elf_freebsd.c#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/module.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/prom.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/setjmperr.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/lib/time.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/loader/Makefile#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/loader/conf.c#4 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/loader/help.alpha#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/loader/main.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/arc/loader/version#2 delete .. //depot/projects/trustedbsd/mac/sys/boot/common/Makefile.inc#10 integrate .. //depot/projects/trustedbsd/mac/sys/boot/common/load_elf.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/boot/common/loader.8#29 integrate .. //depot/projects/trustedbsd/mac/sys/boot/efi/libefi/bootinfo.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/boot/ficl/Makefile#13 integrate .. //depot/projects/trustedbsd/mac/sys/boot/ficl/alpha/sysdep.c#3 delete .. //depot/projects/trustedbsd/mac/sys/boot/ficl/alpha/sysdep.h#5 delete .. //depot/projects/trustedbsd/mac/sys/boot/ficl/loader.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/boot/forth/loader.4th#4 integrate .. //depot/projects/trustedbsd/mac/sys/boot/forth/loader.conf#32 integrate .. //depot/projects/trustedbsd/mac/sys/boot/i386/boot0/boot0.S#5 integrate .. //depot/projects/trustedbsd/mac/sys/boot/i386/libi386/biosdisk.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/boot/ia64/ski/bootinfo.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/boot/ia64/ski/conf.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/boot/pc98/Makefile#5 integrate .. //depot/projects/trustedbsd/mac/sys/boot/pc98/boot2/io.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/boot/pc98/cdboot/Makefile#1 branch .. //depot/projects/trustedbsd/mac/sys/boot/pc98/cdboot/cdboot.s#1 branch .. //depot/projects/trustedbsd/mac/sys/boot/pc98/libpc98/bioscd.c#1 branch .. //depot/projects/trustedbsd/mac/sys/boot/powerpc/loader/conf.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/bsm/audit.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/bsm/audit_kevents.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/bsm/audit_record.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/cam/cam_ccb.h#8 integrate .. //depot/projects/trustedbsd/mac/sys/cam/cam_debug.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/cam/cam_periph.c#18 integrate .. //depot/projects/trustedbsd/mac/sys/cam/cam_xpt.c#24 integrate .. //depot/projects/trustedbsd/mac/sys/cam/scsi/scsi_all.h#8 integrate .. //depot/projects/trustedbsd/mac/sys/cam/scsi/scsi_target.c#18 integrate .. //depot/projects/trustedbsd/mac/sys/coda/cnode.h#9 integrate .. //depot/projects/trustedbsd/mac/sys/compat/freebsd32/freebsd32_misc.c#18 integrate .. //depot/projects/trustedbsd/mac/sys/compat/freebsd32/freebsd32_proto.h#16 integrate .. //depot/projects/trustedbsd/mac/sys/compat/freebsd32/freebsd32_syscall.h#16 integrate .. //depot/projects/trustedbsd/mac/sys/compat/freebsd32/freebsd32_syscalls.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/compat/freebsd32/freebsd32_sysent.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/compat/freebsd32/syscalls.master#16 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linprocfs/linprocfs.c#31 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linsysfs/linsysfs.c#1 branch .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_file.c#29 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_ioctl.c#32 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_ioctl.h#10 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_ipc.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_misc.c#42 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_signal.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_socket.c#20 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_stats.c#28 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_util.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_util.h#9 integrate .. //depot/projects/trustedbsd/mac/sys/compat/ndis/kern_ndis.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/compat/ndis/subr_hal.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/compat/ndis/subr_ndis.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/compat/ndis/subr_ntoskrnl.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/compat/ndis/winx32_wrap.S#3 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_ipc.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_misc.c#36 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_proto.h#8 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_syscall.h#7 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 5 15:16:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DE87516A4E2; Wed, 5 Jul 2006 15:16:47 +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 A513816A4E7 for ; Wed, 5 Jul 2006 15:16:47 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 45DB643D53 for ; Wed, 5 Jul 2006 15:16:47 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65FGlue059776 for ; Wed, 5 Jul 2006 15:16:47 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65FGl0o059773 for perforce@freebsd.org; Wed, 5 Jul 2006 15:16:47 GMT (envelope-from piso@freebsd.org) Date: Wed, 5 Jul 2006 15:16:47 GMT Message-Id: <200607051516.k65FGl0o059773@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100631 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 15:16:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=100631 Change 100631 by piso@piso_newluxor on 2006/07/05 15:15:46 Convert dll to queue(3). Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#10 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#10 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#10 (text+ko) ==== @@ -61,7 +61,7 @@ /* protocol and userland module handlers chains */ struct chain handler_chain; -struct dll *dll_chain; +SLIST_HEAD(dll_chain, dll) dll_chain = SLIST_HEAD_INITIALIZER(foo); #ifdef _KERNEL @@ -257,55 +257,38 @@ /* dll manipulation code - this code is not thread safe... */ -static int -_attach_dll(struct dll **b, struct dll *p) { - int i = 0; +int +attach_dll(struct dll *p) { + struct dll *b; - p->next = NULL; /* i'm paranoid... */ - for(; *b != NULL; b = &((*b)->next), i++) - if (!strncmp((*b)->name, p->name, DLL_LEN)) + SLIST_FOREACH(b, &dll_chain, next) { + if (!strncmp(b->name, p->name, DLL_LEN)) return (EHDCON); /* dll name conflict */ + } /* end of list, insert here */ - *b = p; + SLIST_INSERT_HEAD(&dll_chain, p, next); return (OK); } -static void * -_detach_dll(struct dll **b, char *p) { - void *err = NULL; +void * +detach_dll(char *p) { + struct dll *b = NULL, *b_tmp; + void *error = NULL; - for(; *b != NULL; b = &((*b)->next)) - if (!strncmp((*b)->name, p, DLL_LEN)) { - err = *b; - *b = (*b)->next; + SLIST_FOREACH_SAFE(b, &dll_chain, next, b_tmp) + if (!strncmp(b->name, p, DLL_LEN)) { + SLIST_REMOVE(&dll_chain, b, dll, next); + error = b; break; } - return (err); -} - -int -attach_dll(struct dll *p) { - int i; - - i = _attach_dll(&dll_chain, p); - return (i); -} - -void * -detach_dll(char *p) { - void *i; - - i = _detach_dll(&dll_chain, p); - return (i); + return (error); } struct dll * walk_dll_chain(void) { - struct dll *t, **b = &dll_chain; + struct dll *t; - for(t = *b; *b != NULL;) { - *b = (*b)->next; - break; - } + t = SLIST_FIRST(&dll_chain); + SLIST_REMOVE_HEAD(&dll_chain, next); return (t); } ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#10 (text+ko) ==== @@ -86,12 +86,6 @@ struct rwlock rw; }; -struct dll_chain { - void *chain; - // XXX - what if a process with 2 threads manipulate the - // libalias dll list? we still need a lock here... -}; - /* * Used only in userland when libalias needs to keep track of all * module loaded. In kernel land (kld mode) we don't need to care @@ -107,7 +101,7 @@ * to any symbols from a loaded module * via dlsym(). */ - struct dll *next; + SLIST_ENTRY(dll) next; }; /* Functions used with protocol handlers. */ From owner-p4-projects@FreeBSD.ORG Wed Jul 5 15:49:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A11E216A4E5; Wed, 5 Jul 2006 15:49:29 +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 436CB16A4DA for ; Wed, 5 Jul 2006 15:49:29 +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 AFE0443D5F for ; Wed, 5 Jul 2006 15:49:28 +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 k65FnSkU061432 for ; Wed, 5 Jul 2006 15:49:28 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 k65FnSUu061429 for perforce@freebsd.org; Wed, 5 Jul 2006 15:49:28 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 15:49:28 GMT Message-Id: <200607051549.k65FnSUu061429@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 100634 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 15:49:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=100634 Change 100634 by rwatson@rwatson_zoo on 2006/07/05 15:49:02 Integrate trustedbsd_mac2 branch, which will hold structural changes targeted at the 7.x branch. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/acpica/madt.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/amd64_mem.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/apic_vector.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/atomic.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/autoconf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/bios.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/bpf_jit_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/bpf_jit_machdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/db_disasm.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/db_interface.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/db_trace.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/fpu.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/gdb_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/genassym.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/identcpu.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/initcpu.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/intr_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/io.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/io_apic.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/legacy.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/local_apic.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/mem.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/minidump_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/mp_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/mp_watchdog.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/mpboot.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/mptable.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/mptable_pci.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/nexus.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/pmap.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/prof_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/support.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/trap.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/tsc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/uio_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/compile/.cvsignore#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/conf/.cvsignore#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/conf/DEFAULTS#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/conf/GENERIC#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/conf/MAC#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/conf/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/conf/NOTES#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/ia32/ia32_exception.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/ia32/ia32_reg.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/ia32/ia32_signal.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/ia32/ia32_syscall.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/_bus.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/_inttypes.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/_limits.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/_stdint.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/_types.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/acpica_machdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/apicreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/apicvar.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/asm.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/asmacros.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/atomic.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/bus.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/bus_dma.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/clock.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/cpu.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/cpufunc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/cputypes.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/db_machdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/elf.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/endian.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/exec.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/float.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/floatingpoint.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/fpu.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/frame.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/gdb_machdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/ieeefp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/in_cksum.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/intr_machdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/iodev.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/kdb.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/legacyvar.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/limits.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/md_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/memdev.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/metadata.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/minidump.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/mp_watchdog.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/mptable.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/mutex.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/param.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/pc/bios.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/pc/display.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/pcb.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/pcb_ext.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/pcpu.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/pmap.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/pmc_mdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/ppireg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/proc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/profile.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/psl.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/ptrace.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/reg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/reloc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/resource.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/runq.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/segments.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/setjmp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/sf_buf.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/sigframe.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/signal.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/smp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/specialreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/stdarg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/sysarch.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/timerreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/trap.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/tss.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/ucontext.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/varargs.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/include/vmparam.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/atpic.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/atpic_vector.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/clock.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/elcr.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/icu.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/isa.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/isa.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/isa_dma.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/isa/nmi.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_dummy.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_genassym.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_ipc64.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_locore.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_proto.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_syscall.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_sysent.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/linux32_sysvec.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/syscalls.conf#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/linux32/syscalls.master#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/pci/pci_bus.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/autoconf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/bcopy_page.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/bcopyinout.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/bcopyinout_xscale.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/blockio.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/bootconfig.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/bus_space_asm_generic.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/busdma_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/copystr.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_arm10.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_arm7tdmi.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_arm8.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_arm9.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_armv4.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_ixp12x0.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_sa1.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_sa11x0.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/cpufunc_asm_xscale.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/db_disasm.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/db_interface.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/db_trace.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/disassem.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/dump_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/elf_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/elf_trampoline.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/exception.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/fiq.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/fiq_subr.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/fusu.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/genassym.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/identcpu.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/in_cksum.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/in_cksum_arm.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/inckern.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/intr.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/irq_dispatch.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/locore.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/mem.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/nexus.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/nexus_io.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/nexus_io_asm.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/pmap.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/setcpsr.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/setstack.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/support.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/swtch.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/sys_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/trap.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/uio_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/undefined.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/vectors.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/arm/vm_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_pdcreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_pio.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_pioreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_pmc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_pmcreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_pmcvar.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_rtc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_rtcreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_spi.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_spiio.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_spireg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_ssc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_sscreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_st.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_streg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_twi.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_twiio.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_twireg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91_usartreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91rm92reg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/at91var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/files.at91#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/files.kb920x#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/hints.at91rm9200#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/hints.at91sam9261#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/if_ate.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/if_atereg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/kb920x_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/ohci_atmelarm.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/std.at91#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/std.kb920x#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/uart_bus_at91usart.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/uart_cpu_at91rm9200usart.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/at91/uart_dev_at91usart.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/compile/.cvsignore#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/conf/.cvsignore#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/conf/IQ31244#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/conf/KB920X#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/conf/SIMICS#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/conf/SKYEYE#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/_bus.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/_inttypes.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/_limits.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/_stdint.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/_types.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/armreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/asm.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/asmacros.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/atomic.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/blockio.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/bootconfig.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/bus.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/bus_dma.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/clock.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/cpu.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/cpuconf.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/cpufunc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/db_machdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/disassem.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/elf.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/endian.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/exec.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/fiq.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/float.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/floatingpoint.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/fp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/frame.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/ieee.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/ieeefp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/in_cksum.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/intr.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/katelib.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/kdb.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/limits.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/machdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/md_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/memdev.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/metadata.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/mutex.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/param.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/pcb.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/pcpu.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/pmap.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/pmc_mdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/proc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/profile.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/psl.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/pte.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/ptrace.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/reg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/reloc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/resource.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/runq.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/setjmp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/sf_buf.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/sigframe.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/signal.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/smp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/stdarg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/swi.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/sysarch.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/trap.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/ucontext.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/undefined.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/utrap.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/include/vmparam.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/assabet_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/files.sa11x0#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_dmacreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_gpioreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_io.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_io_asm.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_irq.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_irqhandler.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_ost.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_ostreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_ppcreg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_reg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/sa11x0_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/std.sa11x0#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/uart_bus_sa1110.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/uart_cpu_sa1110.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/uart_dev_sa1110.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/sa11x0/uart_dev_sa1110.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/files.i80321#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/files.iq31244#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321_aau.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321_dma.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321_intr.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321_mcu.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321_pci.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321_space.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321_timer.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321_wdog.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321reg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/i80321var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/iq31244_7seg.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/iq31244_machdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/iq80321.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/iq80321reg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/iq80321var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/obio.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/obio_space.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/obiovar.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/std.i80321#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/std.iq31244#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/uart_bus_i80321.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/i80321/uart_cpu_i80321.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/std.xscale#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/xscalereg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/arm/xscale/xscalevar.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/README#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0/README#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0/arm_init.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0/linker.cfg#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0iic/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0iic/doit.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0iic/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0spi/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0spi/doit.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/boot0spi/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/bootiic/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/bootiic/README#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/bootiic/arm_init.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/bootiic/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/bootspi/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/bootspi/README#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/bootspi/arm_init.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/bootspi/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/at91rm9200.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/eeprom.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/eeprom.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/emac.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/emac.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/env_vars.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/env_vars.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/getc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/lib.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/loader_prompt.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/loader_prompt.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/p_string.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/p_string.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/printf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/putchar.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/tag_list.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/tag_list.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/libat91/xmodem.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/arm/at91/linker.cfg#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/bcache.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/boot.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/bootstrap.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/commands.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/console.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/dev_net.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/dev_net.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/devopen.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/help.common#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/interp.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/interp_backslash.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/interp_forth.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/interp_parse.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/isapnp.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/isapnp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/load.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/load_elf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/load_elf32.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/load_elf32_obj.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/load_elf64.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/load_elf64_obj.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/load_elf_obj.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/loader.8#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/ls.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/merge_help.awk#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/misc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/module.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/newvers.sh#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/panic.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/pnp.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/pnpdata#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/reloc_elf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/reloc_elf32.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/reloc_elf64.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/common/ufsread.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/README#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efi.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efi_nii.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efiapi.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/eficon.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efidebug.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efidef.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efidevp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efierr.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efifpswa.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efifs.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efilib.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efinet.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efipart.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efiprot.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efipxebc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efiser.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/efistdarg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/i386/efibind.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/i386/pe.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/ia64/efibind.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/include/ia64/pe.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/bootinfo.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/copy.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/delay.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/devicename.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/efi_console.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/efiboot.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/efifpswa.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/efifs.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/efinet.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/elf_freebsd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/libefi.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/module.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/efi/libefi/time.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/dict.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/ficl.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/ficl.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/fileaccess.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/float.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/i386/sysdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/i386/sysdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/ia64/sysdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/ia64/sysdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/loader.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/math64.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/math64.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/powerpc/sysdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/powerpc/sysdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/prefix.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/search.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/classes.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/ficlclass.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/ficllocal.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/fileaccess.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/forml.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/freebsd.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/ifbrack.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/jhlocal.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/marker.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/oo.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/prefix.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/softcore.awk#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/softcore.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/softwords/string.fr#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/sparc64/sysdep.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/sparc64/sysdep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/stack.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/testmain.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/tools.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/unix.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/vm.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ficl/words.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/beastie.4th#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/frames.4th#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/loader.4th#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/loader.4th.8#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/loader.conf#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/loader.conf.5#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/loader.rc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/pnp.4th#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/screen.4th#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/forth/support.4th#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot0/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot0/boot0.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot0/boot0ext.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot0ext/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot0sio/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot2/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot2/boot1.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot2/boot2.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot2/lib.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/boot2/sio.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/btx/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/btx/btx.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/btxldr/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/btxldr/btxldr.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/lib/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/lib/btxcsu.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/lib/btxsys.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/lib/btxv86.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/btx/lib/btxv86.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/cdboot/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/cdboot/cdboot.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/kgzldr/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/kgzldr/boot.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/kgzldr/crt.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/kgzldr/kgzldr.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/kgzldr/lib.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/kgzldr/sio.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/kgzldr/start.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/biosacpi.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/bioscd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/biosdisk.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/biosmem.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/biospci.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/biospnp.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/bootinfo.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/comconsole.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/devicename.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/i386_copy.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/i386_module.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/libi386.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/nullconsole.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/pread.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/pxe.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/pxe.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/pxetramp.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/smbios.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/time.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/libi386/vidconsole.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/loader/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/loader/conf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/loader/help.i386#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/loader/loader.rc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/loader/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/loader/version#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/mbr/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/mbr/mbr.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/pxeldr/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/pxeldr/pxeboot.8#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/i386/pxeldr/pxeldr.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/efi/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/efi/conf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/efi/efimd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/efi/ldscript.ia64#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/efi/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/efi/start.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/efi/version#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/acpi_stub.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/bootinfo.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/conf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/copy.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/delay.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/devicename.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/efi_stub.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/elf_freebsd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/exit.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/ldscript.ia64#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/libski.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/pal_stub.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/sal_stub.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/skiconsole.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/skifs.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/skiload.cmd#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/ssc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/start.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/time.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ia64/ski/version#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/common/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/common/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/devicename.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/elf_freebsd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/libofw.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/ofw_console.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/ofw_copy.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/ofw_disk.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/ofw_memory.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/ofw_module.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/ofw_net.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/ofw_reboot.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/ofw_time.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/openfirm.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/ofw/libofw/openfirm.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0.5/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0.5/boot.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0.5/boot0.5.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0.5/disk.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0.5/selector.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0.5/start.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0.5/support.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0.5/syscons.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot0/boot0.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/README.serial.98#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/asm.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/asm.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/bios.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/boot.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/boot.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/boot2.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/dinode.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/disk.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/fs.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/inode.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/io.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/probe_keyboard.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/quota.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/serial.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/serial_16550.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/serial_8251.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/start.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/sys.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/boot2/table.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/btx/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/btx/btx.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/btxldr/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/btxldr/btxldr.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/lib/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/lib/btxcsu.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/lib/btxsys.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/lib/btxv86.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/btx/lib/btxv86.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/cdboot/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/cdboot/cdboot.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/kgzldr/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/kgzldr/crt.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/libpc98/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/libpc98/bioscd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/libpc98/biosdisk.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/libpc98/biosmem.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/libpc98/comconsole.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/libpc98/i386_module.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/libpc98/time.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/libpc98/vidconsole.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/loader/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/loader/conf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/loader/help.pc98#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/pc98/loader/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/powerpc/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/powerpc/loader/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/powerpc/loader/conf.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/powerpc/loader/help.ofw#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/powerpc/loader/ldscript.powerpc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/powerpc/loader/metadata.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/powerpc/loader/start.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/powerpc/loader/version#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/boot1/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/boot1/_start.s#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/boot1/boot1.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/loader/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/loader/help.sparc64#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/loader/locore.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/loader/main.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/loader/metadata.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/boot/sparc64/loader/version#1 branch .. //depot/projects/trustedbsd/mac2/sys/bsm/audit.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/bsm/audit_internal.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/bsm/audit_kevents.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/bsm/audit_record.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_ccb.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_debug.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_periph.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_periph.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_queue.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_queue.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_sim.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_sim.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_xpt.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_xpt.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_xpt_periph.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/cam_xpt_sim.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_all.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_all.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_cd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_cd.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_ch.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_ch.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_da.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_da.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_dvcfg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_iu.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_low.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_low.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_low_pisa.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_low_pisa.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_message.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_pass.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_pass.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_pt.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_pt.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_sa.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_sa.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_ses.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_ses.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_targ_bh.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_target.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/cam/scsi/scsi_targetio.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/00READ#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/README#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/TODO#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/cnode.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_fbsd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_io.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_kernel.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_namecache.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_namecache.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_opstats.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_pioctl.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_psdev.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_psdev.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_subr.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_subr.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_venus.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_venus.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_vfsops.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_vfsops.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_vnops.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/coda/coda_vnops.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ia32/ia32_reg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linprocfs/linprocfs.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linsysfs/linsysfs.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_file.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_getcwd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_ioctl.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_ioctl.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_ipc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_ipc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_mib.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_mib.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_misc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_signal.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_signal.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_socket.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_socket.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_stats.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_sysctl.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_sysproto.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_uid16.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_util.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_util.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/cfg_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/hal_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/kern_ndis.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/kern_windrv.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/ndis_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/ntoskrnl_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/pe_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/resource_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/subr_hal.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/subr_ndis.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/subr_ntoskrnl.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/subr_pe.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/subr_usbd.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/usbd_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/winx32_wrap.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/ndis/winx64_wrap.S#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/netbsd/dvcfg.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/netbsd/physio_proc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/pecoff/imgact_pecoff.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/pecoff/imgact_pecoff.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/Makefile#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/imgact_svr4.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_acl.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_dirent.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_errno.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_exec.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_fcntl.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_fcntl.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_filio.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_filio.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_fuser.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_hrt.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ioctl.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ioctl.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ipc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ipc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_misc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_mman.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_proto.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_resource.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_resource.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_siginfo.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_signal.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_signal.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_socket.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_socket.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_sockio.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_sockio.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_sockmod.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_stat.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_stat.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_statvfs.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_stream.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_stropts.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_syscall.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_syscallnames.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_sysconfig.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_sysent.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_systeminfo.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_sysvec.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_termios.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_termios.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_time.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_timod.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ttold.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ttold.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_types.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ucontext.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ulimit.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_ustat.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_util.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_utsname.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_wait.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/syscalls.conf#1 branch .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/syscalls.master#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/Makefile.amd64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/Makefile.arm#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/Makefile.i386#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/Makefile.ia64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/Makefile.pc98#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/Makefile.powerpc#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/Makefile.sparc64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/NOTES#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/defines#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/files#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/files.amd64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/files.arm#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/files.i386#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/files.ia64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/files.pc98#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/files.powerpc#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/files.sparc64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/kern.mk#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/kern.post.mk#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/kern.pre.mk#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/kmod.mk#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/kmod_syms.awk#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/ldscript.amd64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/ldscript.arm#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/ldscript.i386#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/ldscript.ia64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/ldscript.powerpc#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/ldscript.sparc64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/makeLINT.mk#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/makeLINT.sed#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/newvers.sh#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/options#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/options.amd64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/options.arm#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/options.i386#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/options.ia64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/options.pc98#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/options.powerpc#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/options.sparc64#1 branch .. //depot/projects/trustedbsd/mac2/sys/conf/systags.sh#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_cbq.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_cbq.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_cdnr.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_cdnr.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_classq.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_hfsc.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_hfsc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_priq.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_priq.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_red.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_red.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_rio.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_rio.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_rmclass.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_rmclass.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_rmclass_debug.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_subr.c#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altq_var.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/altqconf.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/altq/altq/if_altq.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/CHANGES.txt#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acapps.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acconfig.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acdebug.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acdisasm.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acdispat.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acefi.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acenv.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acevents.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acexcep.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acfreebsd.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acgcc.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acglobal.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/achware.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/acinterp.h#1 branch .. //depot/projects/trustedbsd/mac2/sys/contrib/dev/acpica/aclocal.h#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 5 16:10:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DA7CB16A4E0; Wed, 5 Jul 2006 16:10:55 +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 84E0116A4DE for ; Wed, 5 Jul 2006 16:10:55 +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 5427743D4C for ; Wed, 5 Jul 2006 16:10:55 +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 k65GAtvB093657 for ; Wed, 5 Jul 2006 16:10:55 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 k65GAtvN093641 for perforce@freebsd.org; Wed, 5 Jul 2006 16:10:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 16:10:55 GMT Message-Id: <200607051610.k65GAtvN093641@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 100636 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 16:10:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=100636 Change 100636 by rwatson@rwatson_zoo on 2006/07/05 16:10:19 Start dropping in the basics of the new entry point naming scheme. Much to be fleshed out. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#2 (text+ko) ==== @@ -54,6 +54,24 @@ * * Operations are sorted first by general class of operation, then * alphabetically. + * + * XXX: New World Order + * + * MAC entry points are generally named using the following template: + * + * mpo__() + * + * or: + * + * mpo__check_() + * + * Entry points are sorted by object type; when a single method refers to + * more than one object type, one is considered the "primary" according to + * the following sort order: + * + * inpcb > socket > mbuf + * bpfdesc > ifnet > mbuf + * * > cred */ struct acl; struct bpf_d; From owner-p4-projects@FreeBSD.ORG Wed Jul 5 17:14:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B062F16A4E1; Wed, 5 Jul 2006 17:14:18 +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 7283E16A4DF for ; Wed, 5 Jul 2006 17:14:18 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8F3FB43D53 for ; Wed, 5 Jul 2006 17:14:16 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65HEGrC032376 for ; Wed, 5 Jul 2006 17:14:16 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65HEGKU032373 for perforce@freebsd.org; Wed, 5 Jul 2006 17:14:16 GMT (envelope-from bushman@freebsd.org) Date: Wed, 5 Jul 2006 17:14:16 GMT Message-Id: <200607051714.k65HEGKU032373@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 100641 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 17:14:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=100641 Change 100641 by bushman@bushman_nss_ldap_cached on 2006/07/05 17:13:38 Minor fix in testuil.h; gethostby***() test finished. It was extended to support the getipnode**() functions testing, IPv4, IPv6 and IPv4-to-IPv6 mapped requests. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/mach#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getgr.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getgr.t#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.c#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.t#3 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getpw.c#4 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getpw.t#2 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getserv.c#6 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getserv.t#5 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/testutil.h#7 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#6 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getgr.c#4 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getgr.t#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.c#3 (text+ko) ==== @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include @@ -50,9 +51,13 @@ TEST_GETHOSTBYNAME2, TEST_GETHOSTBYADDR, TEST_GETHOSTBYNAME2_GETADDRINFO, - TEST_BUILD_SNAPSHOT + TEST_GETHOSTBYADDR_GETNAMEINFO, + TEST_BUILD_SNAPSHOT, + TEST_BUILD_ADDR_SNAPSHOT }; +static int use_ipnode_functions = 0; +static int use_ipv6_mapping = 0; static int debug = 0; static int af_type = AF_INET; static enum test_methods method = TEST_BUILD_SNAPSHOT; @@ -62,6 +67,12 @@ DECLARE_1PASS_TEST(hostent) DECLARE_2PASS_TEST(hostent) +/* These stubs will use gethostby***() or getipnodeby***() functions, + * depending on the use_ipnode_functions global variable value */ +static struct hostent *__gethostbyname2(const char *, int); +static struct hostent *__gethostbyaddr(const void *, socklen_t, int); +static void __freehostent(struct hostent *); + static void clone_hostent(struct hostent *, struct hostent const *); static int compare_hostent(struct hostent *, struct hostent *, void *); static void dump_hostent(struct hostent *); @@ -74,11 +85,10 @@ static int hostent_read_snapshot_addr(char *, unsigned char *, size_t); static int hostent_read_snapshot_func(struct hostent *, char *); -static int hostent_fill_gethostbyname2_data(char const *, - struct hostent_test_data *); static int hostent_test_correctness(struct hostent *, void *); static int hostent_test_gethostbyaddr(struct hostent *, void *); static int hostent_test_getaddrinfo_eq(struct hostent *, void *); +static int hostent_test_getnameinfo_eq(struct hostent *, void *); static void usage(void) __attribute__((__noreturn__)); @@ -87,6 +97,62 @@ IMPLEMENT_1PASS_TEST(hostent) IMPLEMENT_2PASS_TEST(hostent) +static struct hostent * +__gethostbyname2(const char *name, int af) +{ + struct hostent *he; + int error; + + if (use_ipnode_functions == 0) { + if (use_ipv6_mapping != 0) + af = AF_INET; + + he = gethostbyname2(name, af); + } else { + error = 0; + if (use_ipv6_mapping != 0) + af = AF_INET6; + he = getipnodebyname(name, af, use_ipv6_mapping == 0 ? AI_ALL : + AI_ALL | AI_V4MAPPED, &error); + if (he == NULL); + errno = error; + } + + return (he); +} + +static struct hostent * +__gethostbyaddr(const void *addr, socklen_t len, int af) +{ + struct hostent *he; + int error; + + if (use_ipnode_functions == 0) { + if (use_ipv6_mapping != 0) + af = AF_INET; + + he = gethostbyaddr(addr, len, af); + } else { + error = 0; + if (use_ipv6_mapping != 0) + af = AF_INET6; + he = getipnodebyaddr(addr, len, use_ipv6_mapping == 0 ? AI_ALL : + AI_ALL | AI_V4MAPPED, &error); + if (he == NULL) + errno = error; + } + + return (he); +} + +static void +__freehostent(struct hostent *he) +{ + /* NOTE: checking for he != NULL - just in case */ + if ((use_ipnode_functions != 0) && (he != NULL)) + freehostent(he); +} + static void clone_hostent(struct hostent *dest, struct hostent const *src) { @@ -179,6 +245,9 @@ if ((ht1 == NULL) || (ht2 == NULL)) goto errfin; + + if ((ht1->h_name == NULL) || (ht2->h_name == NULL)) + goto errfin; if ((ht1->h_addrtype != ht2->h_addrtype) || (ht1->h_length != ht2->h_length) || @@ -248,24 +317,10 @@ { struct addrinfo *ai2; -/* char buffer[100]; - memset(buffer, 0, sizeof(buffer)); - - char *res = inet_ntop(af, addr, buffer, - sizeof(buffer)); - if (res != NULL) - printf("===he %s %s\n", buffer, ai->ai_canonname); - -*/ for (ai2 = ai; ai2 != NULL; ai2 = ai2->ai_next) { if (af != ai2->ai_family) continue; - -/* res = inet_ntop(ai2->ai_family, (void *)&((struct sockaddr_in *)ai2->ai_addr)->sin_addr, buffer, - sizeof(buffer)); - if (res != NULL) - printf("===ai %s\n", buffer);*/ - + switch (af) { case AF_INET: if (memcmp(addr, @@ -290,7 +345,6 @@ static int is_hostent_equal(struct hostent *he, struct addrinfo *ai) { - struct addrinfo *ai2; char **cp; int rv; @@ -305,17 +359,6 @@ return (rv); } - /* getaddrinfo doesn't provide the aliases information */ -/* for (cp = he->h_aliases; *cp; ++cp) { - rv = check_addrinfo_for_name(ai, *cp); - if (rv != 0) { - if (debug) - printf("not equal - one of he->h_aliases couldn't be found\n"); - - return (rv); - } - }*/ - for (cp = he->h_addr_list; *cp; ++cp) { rv = check_addrinfo_for_addr(ai, *cp, he->h_length, he->h_addrtype); @@ -395,6 +438,14 @@ if (buflen == 0) return; } + + if (*(cp + 1) ) { + written = snprintf(buffer, buflen, " "); + buffer += written; + if (written > buflen) + return; + buflen -= written; + } } } else { written = snprintf(buffer, buflen, " noaddrs"); @@ -420,16 +471,19 @@ if (debug) printf("resolving %s: ", line); - result = gethostbyname2(line, af_type); + result = __gethostbyname2(line, af_type); if (result != NULL) { if (debug) printf("found\n"); rv = hostent_test_correctness(result, NULL); - if (rv != 0) + if (rv != 0) { + __freehostent(result); return (rv); + } clone_hostent(he, result); + __freehostent(result); } else { if (debug) printf("not found\n"); @@ -458,8 +512,10 @@ --len; } - - return (0); + if (len != 0) + return (-1); + else + return (0); } static int @@ -607,8 +663,8 @@ if (!((ht->h_addrtype >= 0) && (ht->h_addrtype < AF_MAX))) goto errfin; - /* NOTE: i hope this check is correct */ - if ((ht->h_length != 4) && (ht->h_length != 6)) + if ((ht->h_length != sizeof(struct in_addr)) && + (ht->h_length != sizeof(struct in6_addr))) goto errfin; if (ht->h_aliases == NULL) @@ -616,7 +672,7 @@ if (ht->h_addr_list == NULL) goto errfin; - + if (debug) printf("correct\n"); @@ -628,14 +684,6 @@ return (-1); } -static int -hostent_fill_gethostbyname2_data(char const *filename, - struct hostent_test_data *td) -{ - return (TEST_SNAPSHOT_FILE_READ(hostent, filename, td, - hostent_read_hostlist_func)); -} - static int hostent_test_gethostbyaddr(struct hostent *he, void *mdata) { @@ -652,7 +700,7 @@ if (debug) printf("doing reverse lookup for %s\n", he->h_name); - result = gethostbyaddr(cp, he->h_length, + result = __gethostbyaddr(*cp, he->h_length, he->h_addrtype); if (result == NULL) { if (debug) @@ -661,11 +709,15 @@ continue; } rv = hostent_test_correctness(result, NULL); - if (rv != 0) + if (rv != 0) { + __freehostent(result); return (rv); + } if (addr_test_data != NULL) TEST_DATA_APPEND(hostent, addr_test_data, result); + + __freehostent(result); } } @@ -715,11 +767,109 @@ return (0); } +static int +hostent_test_getnameinfo_eq(struct hostent *he, void *mdata) +{ + char buffer[NI_MAXHOST]; + struct sockaddr_in sin; + struct sockaddr_in6 sin6; + struct sockaddr *saddr; + struct hostent *result; + int rv; + + if (he->h_addr_list != NULL) { + char **cp; + for (cp = he->h_addr_list; *cp; ++cp) { + if (debug) + printf("doing reverse lookup for %s\n", he->h_name); + + result = __gethostbyaddr(*cp, he->h_length, + he->h_addrtype); + if (result != NULL) { + rv = hostent_test_correctness(result, NULL); + if (rv != 0) { + __freehostent(result); + return (rv); + } + } else { + if (debug) + printf("reverse lookup failed\n"); + } + + switch (he->h_addrtype) { + case AF_INET: + memset(&sin, 0, sizeof(struct sockaddr_in)); + sin.sin_len = sizeof(struct sockaddr_in); + sin.sin_family = AF_INET; + memcpy(&sin.sin_addr, *cp, he->h_length); + + saddr = (struct sockaddr *)&sin; + break; + case AF_INET6: + memset(&sin6, 0, sizeof(struct sockaddr_in6)); + sin6.sin6_len = sizeof(struct sockaddr_in6); + sin6.sin6_family = AF_INET6; + memcpy(&sin6.sin6_addr, *cp, he->h_length); + + saddr = (struct sockaddr *)&sin6; + break; + default: + if (debug) + printf("warning: %d family is unsupported\n", + he->h_addrtype); + continue; + } + + assert(saddr != NULL); + rv = getnameinfo(saddr, saddr->sa_len, buffer, + sizeof(buffer), NULL, 0, NI_NAMEREQD); + + if ((rv != 0) && (result != NULL)) { + if (debug) + printf("not ok - getnameinfo() didn't make the reverse lookup, when it should have (%s)\n", + gai_strerror(rv)); + return (rv); + } + + if ((rv == 0) && (result == NULL)) { + if (debug) + printf("not ok - getnameinfo() made the reverse lookup, when it shouldn't have\n"); + return (rv); + } + + if ((rv != 0) && (result == NULL)) { + if (debug) + printf("ok - both getnameinfo() and ***byaddr() failed\n"); + + continue; + } + + if (debug) + printf("comparing %s with %s\n", result->h_name, + buffer); + + rv = strcmp(result->h_name, buffer); + __freehostent(result); + + if (rv != 0) { + if (debug) + printf("not ok - getnameinfo() and ***byaddr() results are not equal\n"); + return (rv); + } else { + if (debug) + printf("ok - getnameinfo() and ***byaddr() results are equal\n"); + } + } + } + + return (0); +} + static void usage(void) { (void)fprintf(stderr, - "Usage: %s [-dna2] [-s ] -f \n", + "Usage: %s [-na2i] [-d] [-46] [-s ] -f \n", getprogname()); exit(1); } @@ -727,8 +877,9 @@ int main(int argc, char **argv) { - struct hostent_test_data td, td_snap; + struct hostent_test_data td, td_addr, td_snap; char *snapshot_file, *hostlist_file; + res_state statp; int rv; int c; @@ -737,10 +888,45 @@ snapshot_file = NULL; hostlist_file = NULL; - while ((c = getopt(argc, argv, "na2ds:f:")) != -1) + while ((c = getopt(argc, argv, "m46na2idos:f:")) != -1) switch (c) { + case '4': + case '6': + case 'm': + statp = __res_state(); + if ((statp == NULL) || + ((statp->options & RES_INIT) == 0 && + res_ninit(statp) == -1)) { + if (debug) + printf("error: can't init res_state\n"); + + free(snapshot_file); + free(hostlist_file); + return (-1); + } + + switch (c) { + case '4': + af_type = AF_INET; + statp->options &= ~RES_USE_INET6; + break; + case '6': + af_type = AF_INET6; + statp->options &= ~RES_USE_INET6; + break; + case 'm': + statp->options |= RES_USE_INET6; + use_ipv6_mapping = 1; + break; + default: + break; + }; + break; + case 'o': + use_ipnode_functions = 1; + break; case 'd': - debug++; + debug = 1; break; case 'n': method = TEST_GETHOSTBYNAME2; @@ -751,6 +937,9 @@ case '2': method = TEST_GETHOSTBYNAME2_GETADDRINFO; break; + case 'i': + method = TEST_GETHOSTBYADDR_GETNAMEINFO; + break; case 's': snapshot_file = strdup(optarg); break; @@ -762,6 +951,7 @@ } TEST_DATA_INIT(hostent, &td, clone_hostent, free_hostent); + TEST_DATA_INIT(hostent, &td_addr, clone_hostent, free_hostent); TEST_DATA_INIT(hostent, &td_snap, clone_hostent, free_hostent); if (hostlist_file == NULL) @@ -777,16 +967,20 @@ if (debug) printf("building host lists from %s\n", hostlist_file); + rv = TEST_SNAPSHOT_FILE_READ(hostent, hostlist_file, &td, hostent_read_hostlist_func); if (rv != 0) - goto fin; - + goto fin; + if (snapshot_file != NULL) { if (access(snapshot_file, W_OK | R_OK) != 0) { - if (errno == ENOENT) - method = TEST_BUILD_SNAPSHOT; - else { + if (errno == ENOENT) { + if (method != TEST_GETHOSTBYADDR) + method = TEST_BUILD_SNAPSHOT; + else + method = TEST_BUILD_ADDR_SNAPSHOT; + } else { if (debug) printf("can't access the snapshot file %s\n", snapshot_file); @@ -795,13 +989,13 @@ goto fin; } } else { - if (method == TEST_BUILD_SNAPSHOT) { - rv = 0; + rv = TEST_SNAPSHOT_FILE_READ(hostent, snapshot_file, + &td_snap, hostent_read_snapshot_func); + if (rv != 0) { + if (debug) + printf("error reading snapshot file\n"); goto fin; } - - TEST_SNAPSHOT_FILE_READ(hostent, snapshot_file, - &td_snap, hostent_read_snapshot_func); } } @@ -812,25 +1006,35 @@ compare_hostent, NULL); break; case TEST_GETHOSTBYADDR: - if (snapshot_file == NULL) - rv = DO_1PASS_TEST(hostent, &td, - hostent_test_gethostbyaddr, (void *)&td); - else - rv = DO_1PASS_TEST(hostent, &td_snap, - hostent_test_gethostbyaddr, (void *)&td_snap); + rv = DO_1PASS_TEST(hostent, &td, + hostent_test_gethostbyaddr, (void *)&td_addr); + + if (snapshot_file != NULL) + rv = DO_2PASS_TEST(hostent, &td_addr, &td_snap, + compare_hostent, NULL); break; case TEST_GETHOSTBYNAME2_GETADDRINFO: - if (snapshot_file == NULL) - rv = DO_1PASS_TEST(hostent, &td, - hostent_test_getaddrinfo_eq, (void *)&td); - else - rv = DO_1PASS_TEST(hostent, &td_snap, - hostent_test_getaddrinfo_eq, (void *)&td); + rv = DO_1PASS_TEST(hostent, &td, + hostent_test_getaddrinfo_eq, NULL); + break; + case TEST_GETHOSTBYADDR_GETNAMEINFO: + rv = DO_1PASS_TEST(hostent, &td, + hostent_test_getnameinfo_eq, NULL); break; case TEST_BUILD_SNAPSHOT: - if (snapshot_file != NULL) + if (snapshot_file != NULL) { rv = TEST_SNAPSHOT_FILE_WRITE(hostent, snapshot_file, &td, sdump_hostent); + } + break; + case TEST_BUILD_ADDR_SNAPSHOT: + if (snapshot_file != NULL) { + rv = DO_1PASS_TEST(hostent, &td, + hostent_test_gethostbyaddr, (void *)&td_addr); + + rv = TEST_SNAPSHOT_FILE_WRITE(hostent, snapshot_file, + &td_addr, sdump_hostent); + } break; default: rv = 0; @@ -839,40 +1043,9 @@ fin: TEST_DATA_DESTROY(hostent, &td_snap); + TEST_DATA_DESTROY(hostent, &td_addr); TEST_DATA_DESTROY(hostent, &td); free(hostlist_file); free(snapshot_file); return (rv); } - - -/*int -main(int argc, char **argv) -{ - struct hostent_test_data td; - debug = 1; - - TEST_DATA_INIT(hostent, &td, clone_hostent, free_hostent); - hostent_fill_gethostbyname2_data("../resolv/mach", &td); - TEST_DATA_DESTROY(hostent, &td); - return (0); -}*/ - -/*int -main(int argc, char **argv) -{ - char buffer[1024]; - - struct hostent *he = gethostbyname("yandex.ru"); - sdump_hostent(he, buffer, sizeof(buffer)); - dump_hostent(he); - - struct hostent he2; - int rv = hostent_read_snapshot_func(&he2, buffer); - printf("rv %d\n", rv); - dump_hostent(&he2); - rv = compare_hostent(he, &he2, NULL); - printf("compare %d\n", rv); - - return (0); -}*/ ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-gethostby.t#3 (text+ko) ==== @@ -18,12 +18,61 @@ make $executable 2>&1 > /dev/null -echo 1..8 -do_test 1 'gethostbyname2()' '-n -f ../resolv/mach' -do_test 2 'gethostbyaddr()' '-a -f ../resolv/mach' -do_test 3 'gethostbyname()-getaddrinfo()' '-2 -f ../resolv/mach' -do_test 5 'building snapshot, if needed' '-s snapshot_ht -f ../resolv/mach' -do_test 6 'gethostbyname2() snapshot' '-n -s snapshot_serv -f ../resolv/mach' -do_test 7 'gethostbyaddr() snapshot' '-a -s snapshot_serv -f ../resolv/mach' -do_test 8 'gethostbyname2()-getaddrinfo snapshot'\ - '-2 -s snapshot_serv -f ../resolv/mach' +echo 1..32 +#Tests for gethostby***() functions +#IPv4-driven testing +do_test 1 'gethostbyname2() (IPv4)' '-4 -n -f mach' +do_test 2 'gethostbyaddr() (IPv4)' '-4 -a -f mach' +do_test 3 'gethostbyname2()-getaddrinfo() (IPv4)' '-4 -2 -f mach' +do_test 4 'gethostbyaddr()-getnameinfo() (IPv4)' '-4 -i -f mach' +do_test 5 'gethostbyname2() snapshot (IPv4)'\ + '-4 -n -s snapshot_htname4 -f mach' +do_test 6 'gethostbyaddr() snapshot (IPv4)'\ + '-4 -a -s snapshot_htaddr4 -f mach' + +#IPv6-driven testing +do_test 7 'gethostbyname2() (IPv6)' '-6 -n -f mach' +do_test 8 'gethostbyaddr() (IPv6)' '-6 -a -f mach' +do_test 9 'gethostbyname2()-getaddrinfo() (IPv6)' '-6 -2 -f mach' +do_test 10 'gethostbyaddr()-getnameinfo() (IPv6)' '-6 -i -f mach' +do_test 11 'gethostbyname2() snapshot (IPv6)'\ + '-6 -n -s snapshot_htname6 -f mach' +do_test 12 'gethostbyaddr() snapshot (IPv6)'\ + '-6 -a -s snapshot_htaddr6 -f mach' + +#Mapped IPv6-driven testing (getaddrinfo() equality test is useless here) +do_test 13 'gethostbyname2() (IPv6 mapped)' '-m -n -f mach' +do_test 14 'gethostbyaddr() (IPv6 mapped)' '-m -a -f mach' +do_test 15 'gethostbyname2() snapshot (IPv6 mapped)'\ + '-m -n -s snapshot_htname6map -f mach' +do_test 16 'gethostbyaddr() snapshot (IPv6 mapped)'\ + '-m -a -s snapshot_htaddr6map -f mach' + +#Tests for getipnodeby***() functions +#IPv4-driven testing +do_test 17 'getipnodebyname() (IPv4)' '-o -4 -n -f mach' +do_test 18 'getipnodebyaddr() (IPv4)' '-o -4 -a -f mach' +do_test 19 'getipnodebyname()-getaddrinfo() (IPv4)' '-o -4 -2 -f mach' +do_test 20 'getipnodebyaddr()-getnameinfo() (IPv4)' '-o -4 -i -f mach' +do_test 21 'getipnodebyname() snapshot (IPv4)'\ + '-o -4 -n -s snapshot_ipnodename4 -f mach' +do_test 22 'getipnodebyname() snapshot (IPv4)'\ + '-o -4 -a -s snapshot_ipnodeaddr4 -f mach' + +#IPv6-driven testing +do_test 23 'getipnodebyname() (IPv6)' '-o -6 -n -f mach' +do_test 24 'getipnodebyaddr() (IPv6)' '-o -6 -a -f mach' +do_test 25 'getipnodebyname()-getaddrinfo() (IPv6)' '-o -6 -2 -f mach' +do_test 26 'getipnodebyaddr()-getnameinfo() (IPv6)' '-o -6 -i -f mach' +do_test 27 'getipnodebyname() snapshot (IPv6)'\ + '-o -6 -n -s snapshot_ipnodename6 -f mach' +do_test 28 'getipnodebyaddr() snapshot (IPv6)'\ + '-o -6 -a -s snapshot_ipnodeaddr6 -f mach' + +#Mapped IPv6-driven testing (getaddrinfo() equality test is useless here) +do_test 29 'getipnodebyname() (IPv6)' '-o -m -n -f mach' +do_test 30 'getipnodebyaddr() (IPv6)' '-o -m -a -f mach' +do_test 31 'getipnodebyname() snapshot (IPv6)'\ + '-o -m -n -s snapshot_ipnodename6map -f mach' +do_test 32 'getipnodebyaddr() snapshot (IPv6)'\ + '-o -m -a -s snapshot_ipnodeaddr6map -f mach' ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getpw.c#4 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getpw.t#2 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getserv.c#6 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getserv.t#5 (text+ko) ==== ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/testutil.h#7 (text+ko) ==== @@ -267,6 +267,7 @@ if (fi == NULL) \ return (-1); \ \ + rv = 0; \ memset(buffer, 0, sizeof(buffer)); \ while (!feof(fi)) { \ s = fgets(buffer, sizeof(buffer), fi); \ @@ -281,13 +282,14 @@ if (rv == 0) { \ __##ent##_test_data_append(td, &data); \ td->free_func(&data); \ - } \ + } else \ + goto fin; \ } \ } \ \ +fin: \ fclose(fi); \ - \ - return (0); \ + return (rv); \ } #define DECLARE_1PASS_TEST(ent) \ From owner-p4-projects@FreeBSD.ORG Wed Jul 5 17:16:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD94616A4E7; Wed, 5 Jul 2006 17:16:22 +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 80B0D16A4DD for ; Wed, 5 Jul 2006 17:16:22 +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 CC1FC43D53 for ; Wed, 5 Jul 2006 17:16:21 +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 k65HGLIe032639 for ; Wed, 5 Jul 2006 17:16:21 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 k65HGJ5o032636 for perforce@freebsd.org; Wed, 5 Jul 2006 17:16:19 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 17:16:19 GMT Message-Id: <200607051716.k65HGJ5o032636@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 100642 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 17:16:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=100642 Change 100642 by rwatson@rwatson_zoo on 2006/07/05 17:16:17 Start resort of entry points by object type. No renaming yet. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#3 (text+ko) ==== @@ -72,6 +72,9 @@ * inpcb > socket > mbuf * bpfdesc > ifnet > mbuf * * > cred + * + * It may be desirable also to consider some subsystems as "objects", such + * as system, netinet, etc. */ struct acl; struct bpf_d; @@ -104,6 +107,11 @@ /* * Policy module operations. + * + * XXXRW: There should probably be separate init/attach/detach/destroy + * operations so that policies can perform sleeping memory allocation before + * attaching, which occurs with locks held. We might also want to allow + * attach to fail. */ typedef void (*mpo_destroy_t)(struct mac_policy_conf *mpc); typedef void (*mpo_init_t)(struct mac_policy_conf *mpc); @@ -121,103 +129,28 @@ typedef void (*mpo_placeholder_t)(void); /* - * Label operations. Initialize label storage, destroy label - * storage, recycle for re-use without init/destroy, copy a label to - * initialized storage, and externalize/internalize from/to - * initialized storage. + * Object: struct bpfdesc (BPF descriptor) */ typedef void (*mpo_init_bpfdesc_label_t)(struct label *label); -typedef void (*mpo_init_cred_label_t)(struct label *label); -typedef void (*mpo_init_devfsdirent_label_t)(struct label *label); -typedef void (*mpo_init_ifnet_label_t)(struct label *label); -typedef int (*mpo_init_inpcb_label_t)(struct label *label, int flag); -typedef void (*mpo_init_sysv_msgmsg_label_t)(struct label *label); -typedef void (*mpo_init_sysv_msgqueue_label_t)(struct label *label); -typedef void (*mpo_init_sysv_sem_label_t)(struct label *label); -typedef void (*mpo_init_sysv_shm_label_t)(struct label *label); -typedef int (*mpo_init_ipq_label_t)(struct label *label, int flag); -typedef int (*mpo_init_mbuf_label_t)(struct label *label, int flag); -typedef void (*mpo_init_mount_label_t)(struct label *label); -typedef void (*mpo_init_mount_fs_label_t)(struct label *label); -typedef int (*mpo_init_socket_label_t)(struct label *label, int flag); -typedef int (*mpo_init_socket_peer_label_t)(struct label *label, - int flag); -typedef void (*mpo_init_pipe_label_t)(struct label *label); -typedef void (*mpo_init_posix_sem_label_t)(struct label *label); -typedef void (*mpo_init_proc_label_t)(struct label *label); -typedef void (*mpo_init_vnode_label_t)(struct label *label); typedef void (*mpo_destroy_bpfdesc_label_t)(struct label *label); -typedef void (*mpo_destroy_cred_label_t)(struct label *label); -typedef void (*mpo_destroy_devfsdirent_label_t)(struct label *label); -typedef void (*mpo_destroy_ifnet_label_t)(struct label *label); -typedef void (*mpo_destroy_inpcb_label_t)(struct label *label); -typedef void (*mpo_destroy_sysv_msgmsg_label_t)(struct label *label); -typedef void (*mpo_destroy_sysv_msgqueue_label_t)(struct label *label); -typedef void (*mpo_destroy_sysv_sem_label_t)(struct label *label); -typedef void (*mpo_destroy_sysv_shm_label_t)(struct label *label); -typedef void (*mpo_destroy_ipq_label_t)(struct label *label); -typedef void (*mpo_destroy_mbuf_label_t)(struct label *label); -typedef void (*mpo_destroy_mount_label_t)(struct label *label); -typedef void (*mpo_destroy_mount_fs_label_t)(struct label *label); -typedef void (*mpo_destroy_socket_label_t)(struct label *label); -typedef void (*mpo_destroy_socket_peer_label_t)(struct label *label); -typedef void (*mpo_destroy_pipe_label_t)(struct label *label); -typedef void (*mpo_destroy_posix_sem_label_t)(struct label *label); -typedef void (*mpo_destroy_proc_label_t)(struct label *label); -typedef void (*mpo_destroy_vnode_label_t)(struct label *label); -typedef void (*mpo_cleanup_sysv_msgmsg_t)(struct label *msglabel); -typedef void (*mpo_cleanup_sysv_msgqueue_t)(struct label *msqlabel); -typedef void (*mpo_cleanup_sysv_sem_t)(struct label *semalabel); -typedef void (*mpo_cleanup_sysv_shm_t)(struct label *shmlabel); -typedef void (*mpo_copy_cred_label_t)(struct label *src, - struct label *dest); -typedef void (*mpo_copy_ifnet_label_t)(struct label *src, - struct label *dest); -typedef void (*mpo_copy_mbuf_label_t)(struct label *src, - struct label *dest); -typedef void (*mpo_copy_pipe_label_t)(struct label *src, - struct label *dest); -typedef void (*mpo_copy_socket_label_t)(struct label *src, - struct label *dest); -typedef void (*mpo_copy_vnode_label_t)(struct label *src, - struct label *dest); -typedef int (*mpo_externalize_cred_label_t)(struct label *label, - char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_externalize_ifnet_label_t)(struct label *label, - char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_externalize_pipe_label_t)(struct label *label, - char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_externalize_socket_label_t)(struct label *label, - char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_externalize_socket_peer_label_t)(struct label *label, - char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_externalize_vnode_label_t)(struct label *label, - char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_internalize_cred_label_t)(struct label *label, - char *element_name, char *element_data, int *claimed); -typedef int (*mpo_internalize_ifnet_label_t)(struct label *label, - char *element_name, char *element_data, int *claimed); -typedef int (*mpo_internalize_pipe_label_t)(struct label *label, - char *element_name, char *element_data, int *claimed); -typedef int (*mpo_internalize_socket_label_t)(struct label *label, - char *element_name, char *element_data, int *claimed); -typedef int (*mpo_internalize_vnode_label_t)(struct label *label, - char *element_name, char *element_data, int *claimed); +typedef void (*mpo_create_bpfdesc_t)(struct ucred *cred, + struct bpf_d *bpf_d, struct label *bpflabel); +typedef void (*mpo_create_mbuf_from_bpfdesc_t)(struct bpf_d *bpf_d, + struct label *bpflabel, struct mbuf *mbuf, + struct label *mbuflabel); +typedef int (*mpo_check_bpfdesc_receive_t)(struct bpf_d *bpf_d, + struct label *bpflabel, struct ifnet *ifnet, + struct label *ifnetlabel); /* - * Labeling event operations: file system objects, and things that - * look a lot like file system objects. + * Object: struct devfsdirent (Devfs directory entry) */ +typedef void (*mpo_init_devfsdirent_label_t)(struct label *label); +typedef void (*mpo_destroy_devfsdirent_label_t)(struct label *label); typedef void (*mpo_associate_vnode_devfs_t)(struct mount *mp, struct label *fslabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel); -typedef int (*mpo_associate_vnode_extattr_t)(struct mount *mp, - struct label *fslabel, struct vnode *vp, - struct label *vlabel); -typedef void (*mpo_associate_vnode_singlelabel_t)(struct mount *mp, - struct label *fslabel, struct vnode *vp, - struct label *vlabel); typedef void (*mpo_create_devfs_device_t)(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *de, struct label *label); @@ -228,157 +161,181 @@ struct mount *mp, struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, struct label *delabel); -typedef int (*mpo_create_vnode_extattr_t)(struct ucred *cred, - struct mount *mp, struct label *fslabel, - struct vnode *dvp, struct label *dlabel, - struct vnode *vp, struct label *vlabel, - struct componentname *cnp); -typedef void (*mpo_create_mount_t)(struct ucred *cred, struct mount *mp, - struct label *mntlabel, struct label *fslabel); -typedef void (*mpo_relabel_vnode_t)(struct ucred *cred, struct vnode *vp, - struct label *vnodelabel, struct label *label); -typedef int (*mpo_setlabel_vnode_extattr_t)(struct ucred *cred, - struct vnode *vp, struct label *vlabel, - struct label *intlabel); typedef void (*mpo_update_devfsdirent_t)(struct mount *mp, struct devfs_dirent *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel); /* - * Labeling event operations: IPC objects. + * Object: struct ucred (User credential) */ -typedef void (*mpo_create_mbuf_from_socket_t)(struct socket *so, - struct label *socketlabel, struct mbuf *m, - struct label *mbuflabel); -typedef void (*mpo_create_socket_t)(struct ucred *cred, struct socket *so, - struct label *socketlabel); -typedef void (*mpo_create_socket_from_socket_t)(struct socket *oldsocket, - struct label *oldsocketlabel, struct socket *newsocket, - struct label *newsocketlabel); -typedef void (*mpo_relabel_socket_t)(struct ucred *cred, struct socket *so, - struct label *oldlabel, struct label *newlabel); -typedef void (*mpo_relabel_pipe_t)(struct ucred *cred, struct pipepair *pp, - struct label *oldlabel, struct label *newlabel); -typedef void (*mpo_set_socket_peer_from_mbuf_t)(struct mbuf *mbuf, - struct label *mbuflabel, struct socket *so, - struct label *socketpeerlabel); -typedef void (*mpo_set_socket_peer_from_socket_t)(struct socket *oldsocket, - struct label *oldsocketlabel, struct socket *newsocket, - struct label *newsocketpeerlabel); -typedef void (*mpo_create_pipe_t)(struct ucred *cred, struct pipepair *pp, - struct label *pipelabel); +typedef void (*mpo_init_cred_label_t)(struct label *label); +typedef void (*mpo_destroy_cred_label_t)(struct label *label); +typedef void (*mpo_copy_cred_label_t)(struct label *src, + struct label *dest); +typedef int (*mpo_externalize_cred_label_t)(struct label *label, + char *element_name, struct sbuf *sb, int *claimed); +typedef int (*mpo_internalize_cred_label_t)(struct label *label, + char *element_name, char *element_data, int *claimed); +typedef void (*mpo_relabel_cred_t)(struct ucred *cred, + struct label *newlabel); +typedef int (*mpo_check_cred_relabel_t)(struct ucred *cred, + struct label *newlabel); +typedef int (*mpo_check_cred_visible_t)(struct ucred *u1, + struct ucred *u2); /* - * Labeling event operations: System V IPC primitives. + * Object: struct ifnet (Network interface) */ -typedef void (*mpo_create_sysv_msgmsg_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqlabel, - struct msg *msgptr, struct label *msglabel); -typedef void (*mpo_create_sysv_msgqueue_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqlabel); -typedef void (*mpo_create_sysv_sem_t)(struct ucred *cred, - struct semid_kernel *semakptr, struct label *semalabel); -typedef void (*mpo_create_sysv_shm_t)(struct ucred *cred, - struct shmid_kernel *shmsegptr, struct label *shmlabel); +typedef void (*mpo_init_ifnet_label_t)(struct label *label); +typedef void (*mpo_destroy_ifnet_label_t)(struct label *label); +typedef void (*mpo_copy_ifnet_label_t)(struct label *src, + struct label *dest); +typedef int (*mpo_externalize_ifnet_label_t)(struct label *label, + char *element_name, struct sbuf *sb, int *claimed); +typedef int (*mpo_internalize_ifnet_label_t)(struct label *label, + char *element_name, char *element_data, int *claimed); +typedef void (*mpo_create_ifnet_t)(struct ifnet *ifnet, + struct label *ifnetlabel); +typedef void (*mpo_create_mbuf_linklayer_t)(struct ifnet *ifnet, + struct label *ifnetlabel, struct mbuf *mbuf, + struct label *mbuflabel); +typedef void (*mpo_create_mbuf_from_ifnet_t)(struct ifnet *ifnet, + struct label *ifnetlabel, struct mbuf *mbuf, + struct label *mbuflabel); +typedef void (*mpo_create_mbuf_multicast_encap_t)(struct mbuf *oldmbuf, + struct label *oldmbuflabel, struct ifnet *ifnet, + struct label *ifnetlabel, struct mbuf *newmbuf, + struct label *newmbuflabel); +typedef void (*mpo_relabel_ifnet_t)(struct ucred *cred, + struct ifnet *ifnet, struct label *ifnetlabel, + struct label *newlabel); +typedef int (*mpo_check_ifnet_relabel_t)(struct ucred *cred, + struct ifnet *ifnet, struct label *ifnetlabel, + struct label *newlabel); +typedef int (*mpo_check_ifnet_transmit_t)(struct ifnet *ifnet, + struct label *ifnetlabel, struct mbuf *m, + struct label *mbuflabel); /* - * Labeling event operations: POSIX (global/inter-process) semaphores. + * Object: struct inpcb (Internet protocol control block) */ -typedef void (*mpo_create_posix_sem_t)(struct ucred *cred, - struct ksem *ksemptr, struct label *ks_label); +typedef int (*mpo_init_inpcb_label_t)(struct label *label, int flag); +typedef void (*mpo_destroy_inpcb_label_t)(struct label *label); +typedef void (*mpo_create_inpcb_from_socket_t)(struct socket *so, + struct label *solabel, struct inpcb *inp, + struct label *inplabel); +typedef void (*mpo_create_mbuf_from_inpcb_t)(struct inpcb *inp, + struct label *inplabel, struct mbuf *m, + struct label *mlabel); +typedef void (*mpo_inpcb_sosetlabel_t)(struct socket *so, + struct label *label, struct inpcb *inp, + struct label *inplabel); +typedef int (*mpo_check_inpcb_deliver_t)(struct inpcb *inp, + struct label *inplabel, struct mbuf *m, + struct label *mlabel); /* - * Labeling event operations: network objects. + * Object: struct ipq (IP fragment reassembly queue) */ -typedef void (*mpo_create_bpfdesc_t)(struct ucred *cred, - struct bpf_d *bpf_d, struct label *bpflabel); -typedef void (*mpo_create_ifnet_t)(struct ifnet *ifnet, - struct label *ifnetlabel); -typedef void (*mpo_create_inpcb_from_socket_t)(struct socket *so, - struct label *solabel, struct inpcb *inp, - struct label *inplabel); +typedef int (*mpo_init_ipq_label_t)(struct label *label, int flag); +typedef void (*mpo_destroy_ipq_label_t)(struct label *label); typedef void (*mpo_create_ipq_t)(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel); typedef void (*mpo_create_datagram_from_ipq) (struct ipq *ipq, struct label *ipqlabel, struct mbuf *datagram, struct label *datagramlabel); +typedef int (*mpo_fragment_match_t)(struct mbuf *fragment, + struct label *fragmentlabel, struct ipq *ipq, + struct label *ipqlabel); +typedef void (*mpo_update_ipq_t)(struct mbuf *fragment, + struct label *fragmentlabel, struct ipq *ipq, + struct label *ipqlabel); + +/* + * Object: kenv (Kernel environment) + */ +typedef int (*mpo_check_kenv_dump_t)(struct ucred *cred); +typedef int (*mpo_check_kenv_get_t)(struct ucred *cred, char *name); +typedef int (*mpo_check_kenv_set_t)(struct ucred *cred, char *name, + char *value); +typedef int (*mpo_check_kenv_unset_t)(struct ucred *cred, char *name); + +/* + * Object: kld (Loadable kernel module) + */ +typedef int (*mpo_check_kld_load_t)(struct ucred *cred, struct vnode *vp, + struct label *vlabel); +typedef int (*mpo_check_kld_stat_t)(struct ucred *cred); +typedef int (*mpo_check_kld_unload_t)(struct ucred *cred); + +/* + * Object: struct ksem (POSIX semaphore) + */ +typedef void (*mpo_init_posix_sem_label_t)(struct label *label); +typedef void (*mpo_destroy_posix_sem_label_t)(struct label *label); +typedef void (*mpo_create_posix_sem_t)(struct ucred *cred, + struct ksem *ksemptr, struct label *ks_label); +typedef int (*mpo_check_posix_sem_destroy_t)(struct ucred *cred, + struct ksem *ksemptr, struct label *ks_label); +typedef int (*mpo_check_posix_sem_getvalue_t)(struct ucred *cred, + struct ksem *ksemptr, struct label *ks_label); +typedef int (*mpo_check_posix_sem_open_t)(struct ucred *cred, + struct ksem *ksemptr, struct label *ks_label); +typedef int (*mpo_check_posix_sem_post_t)(struct ucred *cred, + struct ksem *ksemptr, struct label *ks_label); +typedef int (*mpo_check_posix_sem_unlink_t)(struct ucred *cred, + struct ksem *ksemptr, struct label *ks_label); +typedef int (*mpo_check_posix_sem_wait_t)(struct ucred *cred, + struct ksem *ksemptr, struct label *ks_label); + +/* + * Object: struct mbuf (Message buffer) + */ +typedef int (*mpo_init_mbuf_label_t)(struct label *label, int flag); +typedef void (*mpo_destroy_mbuf_label_t)(struct label *label); +typedef void (*mpo_copy_mbuf_label_t)(struct label *src, + struct label *dest); +typedef void (*mpo_create_mbuf_from_socket_t)(struct socket *so, + struct label *socketlabel, struct mbuf *m, + struct label *mbuflabel); +typedef void (*mpo_set_socket_peer_from_mbuf_t)(struct mbuf *mbuf, + struct label *mbuflabel, struct socket *so, + struct label *socketpeerlabel); typedef void (*mpo_create_fragment_t)(struct mbuf *datagram, struct label *datagramlabel, struct mbuf *fragment, struct label *fragmentlabel); -typedef void (*mpo_create_mbuf_from_inpcb_t)(struct inpcb *inp, - struct label *inplabel, struct mbuf *m, - struct label *mlabel); -typedef void (*mpo_create_mbuf_linklayer_t)(struct ifnet *ifnet, - struct label *ifnetlabel, struct mbuf *mbuf, - struct label *mbuflabel); -typedef void (*mpo_create_mbuf_from_bpfdesc_t)(struct bpf_d *bpf_d, - struct label *bpflabel, struct mbuf *mbuf, - struct label *mbuflabel); -typedef void (*mpo_create_mbuf_from_ifnet_t)(struct ifnet *ifnet, - struct label *ifnetlabel, struct mbuf *mbuf, - struct label *mbuflabel); -typedef void (*mpo_create_mbuf_multicast_encap_t)(struct mbuf *oldmbuf, - struct label *oldmbuflabel, struct ifnet *ifnet, - struct label *ifnetlabel, struct mbuf *newmbuf, - struct label *newmbuflabel); typedef void (*mpo_create_mbuf_netlayer_t)(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct mbuf *newmbuf, struct label *newmbuflabel); -typedef int (*mpo_fragment_match_t)(struct mbuf *fragment, - struct label *fragmentlabel, struct ipq *ipq, - struct label *ipqlabel); typedef void (*mpo_reflect_mbuf_icmp_t)(struct mbuf *m, struct label *mlabel); typedef void (*mpo_reflect_mbuf_tcp_t)(struct mbuf *m, struct label *mlabel); -typedef void (*mpo_relabel_ifnet_t)(struct ucred *cred, - struct ifnet *ifnet, struct label *ifnetlabel, - struct label *newlabel); -typedef void (*mpo_update_ipq_t)(struct mbuf *fragment, - struct label *fragmentlabel, struct ipq *ipq, - struct label *ipqlabel); -typedef void (*mpo_inpcb_sosetlabel_t)(struct socket *so, - struct label *label, struct inpcb *inp, - struct label *inplabel); /* - * Labeling event operations: processes. + * Object: struct mount (File system mountpoint) */ -typedef void (*mpo_execve_transition_t)(struct ucred *old, - struct ucred *new, struct vnode *vp, - struct label *vnodelabel, struct label *interpvnodelabel, - struct image_params *imgp, struct label *execlabel); -typedef int (*mpo_execve_will_transition_t)(struct ucred *old, - struct vnode *vp, struct label *vnodelabel, - struct label *interpvnodelabel, - struct image_params *imgp, struct label *execlabel); -typedef void (*mpo_create_proc0_t)(struct ucred *cred); -typedef void (*mpo_create_proc1_t)(struct ucred *cred); -typedef void (*mpo_relabel_cred_t)(struct ucred *cred, - struct label *newlabel); -typedef void (*mpo_thread_userret_t)(struct thread *thread); +typedef void (*mpo_init_mount_label_t)(struct label *label); +typedef void (*mpo_init_mount_fs_label_t)(struct label *label); +typedef void (*mpo_destroy_mount_label_t)(struct label *label); +typedef void (*mpo_destroy_mount_fs_label_t)(struct label *label); +typedef int (*mpo_check_mount_stat_t)(struct ucred *cred, + struct mount *mp, struct label *mntlabel); /* - * Access control checks. + * Object: struct msqid_kernel (System V message queue) */ -typedef int (*mpo_check_bpfdesc_receive_t)(struct bpf_d *bpf_d, - struct label *bpflabel, struct ifnet *ifnet, - struct label *ifnetlabel); -typedef int (*mpo_check_cred_relabel_t)(struct ucred *cred, - struct label *newlabel); -typedef int (*mpo_check_cred_visible_t)(struct ucred *u1, - struct ucred *u2); -typedef int (*mpo_check_ifnet_relabel_t)(struct ucred *cred, - struct ifnet *ifnet, struct label *ifnetlabel, - struct label *newlabel); -typedef int (*mpo_check_ifnet_transmit_t)(struct ifnet *ifnet, - struct label *ifnetlabel, struct mbuf *m, - struct label *mbuflabel); -typedef int (*mpo_check_inpcb_deliver_t)(struct inpcb *inp, - struct label *inplabel, struct mbuf *m, - struct label *mlabel); +typedef void (*mpo_init_sysv_msgqueue_label_t)(struct label *label); +typedef void (*mpo_destroy_sysv_msgqueue_label_t)(struct label *label); +typedef void (*mpo_cleanup_sysv_msgqueue_t)(struct label *msqlabel); +typedef void (*mpo_create_sysv_msgmsg_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqlabel, + struct msg *msgptr, struct label *msglabel); +typedef void (*mpo_create_sysv_msgqueue_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqlabel); + typedef int (*mpo_check_sysv_msgmsq_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel, struct msqid_kernel *msqkptr, struct label *msqklabel); @@ -395,40 +352,28 @@ typedef int (*mpo_check_sysv_msqctl_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel, int cmd); -typedef int (*mpo_check_sysv_semctl_t)(struct ucred *cred, - struct semid_kernel *semakptr, struct label *semaklabel, - int cmd); -typedef int (*mpo_check_sysv_semget_t)(struct ucred *cred, - struct semid_kernel *semakptr, struct label *semaklabel); -typedef int (*mpo_check_sysv_semop_t)(struct ucred *cred, - struct semid_kernel *semakptr, struct label *semaklabel, - size_t accesstype); -typedef int (*mpo_check_sysv_shmat_t)(struct ucred *cred, - struct shmid_kernel *shmsegptr, - struct label *shmseglabel, int shmflg); -typedef int (*mpo_check_sysv_shmctl_t)(struct ucred *cred, - struct shmid_kernel *shmsegptr, - struct label *shmseglabel, int cmd); -typedef int (*mpo_check_sysv_shmdt_t)(struct ucred *cred, - struct shmid_kernel *shmsegptr, - struct label *shmseglabel); -typedef int (*mpo_check_sysv_shmget_t)(struct ucred *cred, - struct shmid_kernel *shmsegptr, - struct label *shmseglabel, int shmflg); -typedef int (*mpo_check_kenv_dump_t)(struct ucred *cred); -typedef int (*mpo_check_kenv_get_t)(struct ucred *cred, char *name); -typedef int (*mpo_check_kenv_set_t)(struct ucred *cred, char *name, - char *value); -typedef int (*mpo_check_kenv_unset_t)(struct ucred *cred, char *name); -typedef int (*mpo_check_kld_load_t)(struct ucred *cred, struct vnode *vp, - struct label *vlabel); -typedef int (*mpo_check_kld_stat_t)(struct ucred *cred); -typedef int (*mpo_check_kld_unload_t)(struct ucred *cred); -typedef int (*mpo_mpo_placeholder19_t)(void); -typedef int (*mpo_mpo_placeholder20_t)(void); -typedef int (*mpo_check_mount_stat_t)(struct ucred *cred, - struct mount *mp, struct label *mntlabel); -typedef int (*mpo_mpo_placeholder21_t)(void); +/* + * Object: struct msg (System V message) + */ +typedef void (*mpo_init_sysv_msgmsg_label_t)(struct label *label); +typedef void (*mpo_destroy_sysv_msgmsg_label_t)(struct label *label); +typedef void (*mpo_cleanup_sysv_msgmsg_t)(struct label *msglabel); + +/* + * Object: struct pipepair (Pipe) + */ +typedef void (*mpo_init_pipe_label_t)(struct label *label); +typedef void (*mpo_destroy_pipe_label_t)(struct label *label); +typedef void (*mpo_copy_pipe_label_t)(struct label *src, + struct label *dest); +typedef int (*mpo_externalize_pipe_label_t)(struct label *label, + char *element_name, struct sbuf *sb, int *claimed); +typedef int (*mpo_internalize_pipe_label_t)(struct label *label, + char *element_name, char *element_data, int *claimed); +typedef void (*mpo_relabel_pipe_t)(struct ucred *cred, struct pipepair *pp, + struct label *oldlabel, struct label *newlabel); +typedef void (*mpo_create_pipe_t)(struct ucred *cred, struct pipepair *pp, + struct label *pipelabel); typedef int (*mpo_check_pipe_ioctl_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, unsigned long cmd, void *data); @@ -443,18 +388,15 @@ struct pipepair *pp, struct label *pipelabel); typedef int (*mpo_check_pipe_write_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel); -typedef int (*mpo_check_posix_sem_destroy_t)(struct ucred *cred, - struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_getvalue_t)(struct ucred *cred, - struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_open_t)(struct ucred *cred, - struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_post_t)(struct ucred *cred, - struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_unlink_t)(struct ucred *cred, - struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_wait_t)(struct ucred *cred, - struct ksem *ksemptr, struct label *ks_label); + +/* + * Object: struct proc (Process) + */ +typedef void (*mpo_init_proc_label_t)(struct label *label); +typedef void (*mpo_destroy_proc_label_t)(struct label *label); +typedef void (*mpo_create_proc0_t)(struct ucred *cred); +typedef void (*mpo_create_proc1_t)(struct ucred *cred); +typedef void (*mpo_thread_userret_t)(struct thread *thread); typedef int (*mpo_check_proc_debug_t)(struct ucred *cred, struct proc *proc); typedef int (*mpo_check_proc_sched_t)(struct ucred *cred, @@ -477,6 +419,71 @@ struct proc *proc, int signum); typedef int (*mpo_check_proc_wait_t)(struct ucred *cred, struct proc *proc); + +/* + * Object: struct semid_kernel (System V IPC semaphore) + */ +typedef void (*mpo_init_sysv_sem_label_t)(struct label *label); +typedef void (*mpo_destroy_sysv_sem_label_t)(struct label *label); +typedef void (*mpo_cleanup_sysv_sem_t)(struct label *semalabel); +typedef void (*mpo_create_sysv_sem_t)(struct ucred *cred, + struct semid_kernel *semakptr, struct label *semalabel); +typedef int (*mpo_check_sysv_semctl_t)(struct ucred *cred, + struct semid_kernel *semakptr, struct label *semaklabel, + int cmd); +typedef int (*mpo_check_sysv_semget_t)(struct ucred *cred, + struct semid_kernel *semakptr, struct label *semaklabel); +typedef int (*mpo_check_sysv_semop_t)(struct ucred *cred, + struct semid_kernel *semakptr, struct label *semaklabel, + size_t accesstype); + +/* + * Object: struct shmid_kernel (System V shared memory segment) + */ +typedef void (*mpo_init_sysv_shm_label_t)(struct label *label); +typedef void (*mpo_destroy_sysv_shm_label_t)(struct label *label); +typedef void (*mpo_cleanup_sysv_shm_t)(struct label *shmlabel); +typedef void (*mpo_create_sysv_shm_t)(struct ucred *cred, + struct shmid_kernel *shmsegptr, struct label *shmlabel); +typedef int (*mpo_check_sysv_shmat_t)(struct ucred *cred, + struct shmid_kernel *shmsegptr, + struct label *shmseglabel, int shmflg); +typedef int (*mpo_check_sysv_shmctl_t)(struct ucred *cred, + struct shmid_kernel *shmsegptr, + struct label *shmseglabel, int cmd); +typedef int (*mpo_check_sysv_shmdt_t)(struct ucred *cred, + struct shmid_kernel *shmsegptr, + struct label *shmseglabel); +typedef int (*mpo_check_sysv_shmget_t)(struct ucred *cred, + struct shmid_kernel *shmsegptr, + struct label *shmseglabel, int shmflg); + +/* + * Object: struct socket (Socket) + */ +typedef int (*mpo_init_socket_label_t)(struct label *label, int flag); +typedef int (*mpo_init_socket_peer_label_t)(struct label *label, + int flag); +typedef void (*mpo_destroy_socket_label_t)(struct label *label); +typedef void (*mpo_destroy_socket_peer_label_t)(struct label *label); +typedef void (*mpo_copy_socket_label_t)(struct label *src, + struct label *dest); +typedef int (*mpo_externalize_socket_label_t)(struct label *label, + char *element_name, struct sbuf *sb, int *claimed); +typedef int (*mpo_externalize_socket_peer_label_t)(struct label *label, + char *element_name, struct sbuf *sb, int *claimed); +typedef int (*mpo_internalize_socket_label_t)(struct label *label, + char *element_name, char *element_data, int *claimed); +typedef void (*mpo_create_socket_t)(struct ucred *cred, struct socket *so, + struct label *socketlabel); +typedef void (*mpo_create_socket_from_socket_t)(struct socket *oldsocket, + struct label *oldsocketlabel, struct socket *newsocket, + struct label *newsocketlabel); +typedef void (*mpo_relabel_socket_t)(struct ucred *cred, struct socket *so, + struct label *oldlabel, struct label *newlabel); +typedef void (*mpo_set_socket_peer_from_socket_t)(struct socket *oldsocket, + struct label *oldsocketlabel, struct socket *newsocket, + struct label *newsocketpeerlabel); typedef int (*mpo_check_socket_accept_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); typedef int (*mpo_check_socket_bind_t)(struct ucred *cred, @@ -505,6 +512,10 @@ struct socket *so, struct label *socketlabel); typedef int (*mpo_check_socket_visible_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); + +/* + * Object: system (Global system state) + */ typedef int (*mpo_check_sysarch_ioperm_t)(struct ucred *cred); typedef int (*mpo_check_system_acct_t)(struct ucred *cred, struct vnode *vp, struct label *vlabel); @@ -518,6 +529,44 @@ typedef int (*mpo_check_system_sysctl_t)(struct ucred *cred, struct sysctl_oid *oidp, void *arg1, int arg2, struct sysctl_req *req); + +/* + * Object: struct vnode (VFS node) + */ +typedef void (*mpo_init_vnode_label_t)(struct label *label); +typedef void (*mpo_destroy_vnode_label_t)(struct label *label); +typedef int (*mpo_associate_vnode_extattr_t)(struct mount *mp, + struct label *fslabel, struct vnode *vp, + struct label *vlabel); +typedef void (*mpo_associate_vnode_singlelabel_t)(struct mount *mp, + struct label *fslabel, struct vnode *vp, + struct label *vlabel); +typedef int (*mpo_create_vnode_extattr_t)(struct ucred *cred, + struct mount *mp, struct label *fslabel, + struct vnode *dvp, struct label *dlabel, + struct vnode *vp, struct label *vlabel, + struct componentname *cnp); +typedef void (*mpo_create_mount_t)(struct ucred *cred, struct mount *mp, + struct label *mntlabel, struct label *fslabel); +typedef void (*mpo_relabel_vnode_t)(struct ucred *cred, struct vnode *vp, + struct label *vnodelabel, struct label *label); +typedef int (*mpo_setlabel_vnode_extattr_t)(struct ucred *cred, + struct vnode *vp, struct label *vlabel, + struct label *intlabel); +typedef void (*mpo_copy_vnode_label_t)(struct label *src, + struct label *dest); +typedef int (*mpo_externalize_vnode_label_t)(struct label *label, + char *element_name, struct sbuf *sb, int *claimed); +typedef int (*mpo_internalize_vnode_label_t)(struct label *label, + char *element_name, char *element_data, int *claimed); +typedef void (*mpo_execve_transition_t)(struct ucred *old, + struct ucred *new, struct vnode *vp, + struct label *vnodelabel, struct label *interpvnodelabel, + struct image_params *imgp, struct label *execlabel); +typedef int (*mpo_execve_will_transition_t)(struct ucred *old, + struct vnode *vp, struct label *vnodelabel, + struct label *interpvnodelabel, + struct image_params *imgp, struct label *execlabel); typedef int (*mpo_check_vnode_access_t)(struct ucred *cred, struct vnode *vp, struct label *label, int acc_mode); typedef int (*mpo_check_vnode_chdir_t)(struct ucred *cred, From owner-p4-projects@FreeBSD.ORG Wed Jul 5 18:10:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EAAF916A4E5; Wed, 5 Jul 2006 18:10:31 +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 C6D7B16A4E0 for ; Wed, 5 Jul 2006 18:10:31 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8E14543D6A for ; Wed, 5 Jul 2006 18:10:31 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65IAVtC036459 for ; Wed, 5 Jul 2006 18:10:31 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65IAVuo036456 for perforce@freebsd.org; Wed, 5 Jul 2006 18:10:31 GMT (envelope-from jhb@freebsd.org) Date: Wed, 5 Jul 2006 18:10:31 GMT Message-Id: <200607051810.k65IAVuo036456@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100645 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 18:10:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=100645 Change 100645 by jhb@jhb_mutex on 2006/07/05 18:10:29 Use kern_connect() and axe stackgap usage. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_other.c#8 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_other.c#8 (text+ko) ==== @@ -35,7 +35,9 @@ #include #include #include +#include #include +#include #include #include @@ -85,10 +87,8 @@ spx_open(struct thread *td) { struct socket_args sock; - struct connect_args conn; - struct sockaddr_un *Xaddr; + struct sockaddr_un sun; int fd, error; - caddr_t sg = stackgap_init(); /* obtain a socket. */ DPRINTF(("SPX: open socket\n")); @@ -98,19 +98,16 @@ error = socket(td, &sock); if (error) return error; + fd = td->td_retval[0]; /* connect the socket to standard X socket */ DPRINTF(("SPX: connect to /tmp/X11-unix/X0\n")); - Xaddr = stackgap_alloc(&sg, sizeof(struct sockaddr_un)); - Xaddr->sun_family = AF_UNIX; - Xaddr->sun_len = sizeof(struct sockaddr_un) - sizeof(Xaddr->sun_path) + - strlen(Xaddr->sun_path) + 1; - copyout("/tmp/.X11-unix/X0", Xaddr->sun_path, 18); + sun.sun_family = AF_UNIX; + strcpy(sun.sun_path, "/tmp/.X11-unix/X0"); + sun.sun_len = sizeof(struct sockaddr_un) - sizeof(sun.sun_path) + + strlen(sun.sun_path) + 1; - conn.s = fd = td->td_retval[0]; - conn.name = (caddr_t)Xaddr; - conn.namelen = sizeof(struct sockaddr_un); - error = connect(td, &conn); + error = kern_connect(td, fd, (struct sockaddr *)&sun); if (error) { struct close_args cl; cl.fd = fd; From owner-p4-projects@FreeBSD.ORG Wed Jul 5 18:58:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0CACB16A4E2; Wed, 5 Jul 2006 18:58:32 +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 BCB1216A4E0 for ; Wed, 5 Jul 2006 18:58:31 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 676CD43D78 for ; Wed, 5 Jul 2006 18:58:31 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65IwVM1038491 for ; Wed, 5 Jul 2006 18:58:31 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65IwVC4038486 for perforce@freebsd.org; Wed, 5 Jul 2006 18:58:31 GMT (envelope-from jhb@freebsd.org) Date: Wed, 5 Jul 2006 18:58:31 GMT Message-Id: <200607051858.k65IwVC4038486@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 18:58:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=100646 Change 100646 by jhb@jhb_mutex on 2006/07/05 18:58:08 - Change kern_semctl() to always assume UIO_SYSSPACE and just fix __semctl() to do the copyout's aside from GETALL and SETALL. Also, don't set td->td_retval[0] directly in kern_semctl() so we only set it in ABIs on success now. - Remove the race loop from SETALL with notes about why. Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_ipc.c#26 edit .. //depot/projects/smpng/sys/compat/svr4/svr4_ipc.c#17 edit .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_ipc.c#12 edit .. //depot/projects/smpng/sys/kern/sysv_sem.c#39 edit .. //depot/projects/smpng/sys/sys/syscallsubr.h#39 edit Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_ipc.c#26 (text+ko) ==== @@ -494,6 +494,7 @@ struct l_seminfo linux_seminfo; struct semid_ds semid; union semun semun; + register_t rval; int cmd, error; switch (args->cmd & ~LINUX_IPC_64) { @@ -524,25 +525,25 @@ return (error); linux_to_bsd_semid_ds(&linux_semid, &semid); semun.buf = &semid; - return kern_semctl(td, args->semid, args->semnum, cmd, &semun, - UIO_SYSSPACE); + return (kern_semctl(td, args->semid, args->semnum, cmd, &semun, + td->td_retval)); case LINUX_IPC_STAT: case LINUX_SEM_STAT: - if((args->cmd & ~LINUX_IPC_64) == LINUX_IPC_STAT) + if ((args->cmd & ~LINUX_IPC_64) == LINUX_IPC_STAT) cmd = IPC_STAT; else cmd = SEM_STAT; semun.buf = &semid; error = kern_semctl(td, args->semid, args->semnum, cmd, &semun, - UIO_SYSSPACE); + &rval); if (error) return (error); - td->td_retval[0] = (cmd == SEM_STAT) ? - IXSEQ_TO_IPCID(args->semid, semid.sem_perm) : - 0; bsd_to_linux_semid_ds(&semid, &linux_semid); - return (linux_semid_pushdown(args->cmd & LINUX_IPC_64, - &linux_semid, (caddr_t)PTRIN(args->arg.buf))); + error = linux_semid_pushdown(args->cmd & LINUX_IPC_64, + &linux_semid, (caddr_t)PTRIN(args->arg.buf)); + if (error == 0) + td->td_retval[0] = (cmd == SEM_STAT) ? rval : 0; + return (error); case LINUX_IPC_INFO: case LINUX_SEM_INFO: bcopy(&seminfo, &linux_seminfo, sizeof(linux_seminfo) ); @@ -567,8 +568,8 @@ args->cmd & ~LINUX_IPC_64); return EINVAL; } - return kern_semctl(td, args->semid, args->semnum, cmd, &semun, - UIO_USERSPACE); + return (kern_semctl(td, args->semid, args->semnum, cmd, &semun, + td->td_retval)); } int ==== //depot/projects/smpng/sys/compat/svr4/svr4_ipc.c#17 (text+ko) ==== @@ -209,6 +209,7 @@ struct svr4_semid_ds ss; struct semid_ds bs; union semun semun; + register_t rval; int cmd, error; switch (uap->cmd) { @@ -244,21 +245,24 @@ cmd = IPC_STAT; semun.buf = &bs; error = kern_semctl(td, uap->semid, uap->semnum, cmd, &semun, - UIO_SYSSPACE); + &rval); if (error) - return error; + return (error); bsd_to_svr4_semid_ds(&bs, &ss); - return copyout(&ss, uap->arg.buf, sizeof(ss)); + error = copyout(&ss, uap->arg.buf, sizeof(ss)); + if (error == 0) + td->td_retval[0] = rval; + return (error); case SVR4_IPC_SET: cmd = IPC_SET; error = copyin(uap->arg.buf, (caddr_t) &ss, sizeof ss); if (error) - return error; + return (error); svr4_to_bsd_semid_ds(&ss, &bs); semun.buf = &bs; - return kern_semctl(td, uap->semid, uap->semnum, cmd, &semun, - UIO_SYSSPACE); + return (kern_semctl(td, uap->semid, uap->semnum, cmd, &semun, + td->td_retval)); case SVR4_IPC_RMID: cmd = IPC_RMID; @@ -268,8 +272,8 @@ return EINVAL; } - return kern_semctl(td, uap->semid, uap->semnum, cmd, &uap->arg, - UIO_USERSPACE); + return (kern_semctl(td, uap->semid, uap->semnum, cmd, &uap->arg, + td->td_retval)); } struct svr4_sys_semget_args { ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_ipc.c#12 (text+ko) ==== @@ -316,17 +316,21 @@ struct ibcs2_semid_ds is; struct semid_ds bs; union semun semun; + register_t rval; int error; switch(uap->cmd) { case IBCS2_IPC_STAT: semun.buf = &bs; error = kern_semctl(td, uap->semid, uap->semnum, IPC_STAT, - &semun, UIO_SYSSPACE); + &semun, &rval); if (error) return (error); cvt_semid2isemid(&bs, &is); - return (copyout(&is, uap->arg.buf, sizeof(is))); + error = copyout(&is, uap->arg.buf, sizeof(is)); + if (error == 0) + td->td_retval[0] = rval; + return (error); case IBCS2_IPC_SET: error = copyin(uap->arg.buf, &is, sizeof(is)); @@ -335,11 +339,11 @@ cvt_isemid2semid(&is, &bs); semun.buf = &bs; return (kern_semctl(td, uap->semid, uap->semnum, IPC_SET, - &semun, UIO_SYSSPACE)); + &semun, td->td_retval)); } return (kern_semctl(td, uap->semid, uap->semnum, uap->cmd, &uap->arg, - UIO_USERSPACE)); + td->td_retval)); } struct ibcs2_semget_args { ==== //depot/projects/smpng/sys/kern/sysv_sem.c#39 (text+ko) ==== @@ -556,8 +556,9 @@ struct thread *td; struct __semctl_args *uap; { - union semun real_arg; - union semun *arg; + struct semid_ds dsbuf; + union semun arg, semun; + register_t rval; int error; switch (uap->cmd) { @@ -567,27 +568,57 @@ case GETALL: case SETVAL: case SETALL: - error = copyin(uap->arg, &real_arg, sizeof(real_arg)); + error = copyin(uap->arg, &arg, sizeof(arg)); + if (error) + return (error); + break; + } + + switch (uap->cmd) { + case SEM_STAT: + case IPC_STAT: + semun.buf = &dsbuf; + break; + case IPC_SET: + error = copyin(arg.buf, &dsbuf, sizeof(dsbuf)); if (error) return (error); - arg = &real_arg; + semun.buf = &dsbuf; + break; + case GETALL: + case SETALL: + semun.array = arg.array; break; - default: - arg = NULL; + case SETVAL: + semun.val = arg.val; + break; + } + + error = kern_semctl(td, uap->semid, uap->semnum, uap->cmd, &semun, + &rval); + if (error) + return (error); + + switch (uap->cmd) { + case SEM_STAT: + case IPC_STAT: + error = copyout(&dsbuf, arg.buf, sizeof(dsbuf)); break; } - return (kern_semctl(td, uap->semid, uap->semnum, uap->cmd, arg, - UIO_USERSPACE)); + + if (error == 0) + td->td_retval[0] = rval; + return (error); } int -kern_semctl(struct thread *td, int semid, int semnum, int cmd, union semun *arg, - enum uio_seg bufseg) +kern_semctl(struct thread *td, int semid, int semnum, int cmd, + union semun *arg, register_t *rval) { u_short *array; struct ucred *cred = td->td_ucred; - int i, rval, error; - struct semid_ds sbuf; + int i, error; + struct semid_ds *sbuf; struct semid_kernel *semakptr; struct mtx *sema_mtxp; u_short usval, count; @@ -625,16 +656,10 @@ goto done2; } #endif + bcopy(&semakptr->u, arg->buf, sizeof(struct semid_ds)); + *rval = IXSEQ_TO_IPCID(semid, semakptr->u.sem_perm); mtx_unlock(sema_mtxp); - if (bufseg == UIO_USERSPACE) - error = copyout(&semakptr->u, arg->buf, - sizeof(struct semid_ds)); - else - bcopy(&semakptr->u, arg->buf, sizeof(struct semid_ds)); - rval = IXSEQ_TO_IPCID(semid, semakptr->u.sem_perm); - if (error == 0) - td->td_retval[0] = rval; - return (error); + return (0); } semidx = IPCID_TO_IX(semid); @@ -643,15 +668,13 @@ semakptr = &sema[semidx]; sema_mtxp = &sema_mtx[semidx]; + mtx_lock(sema_mtxp); #ifdef MAC - mtx_lock(sema_mtxp); error = mac_check_sysv_semctl(cred, semakptr, cmd); if (error != 0) { MPRINTF(("mac_check_sysv_semctl returned %d\n", error)); - mtx_unlock(sema_mtxp); - return (error); + goto done2; } - mtx_unlock(sema_mtxp); #endif error = 0; @@ -659,7 +682,6 @@ switch (cmd) { case IPC_RMID: - mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_M))) @@ -685,41 +707,27 @@ break; case IPC_SET: - if (bufseg == UIO_USERSPACE) { - error = copyin(arg->buf, &sbuf, sizeof(sbuf)); - if (error) - goto done2; - } else - bcopy(arg->buf, &sbuf, sizeof(sbuf)); - mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_M))) goto done2; - semakptr->u.sem_perm.uid = sbuf.sem_perm.uid; - semakptr->u.sem_perm.gid = sbuf.sem_perm.gid; + sbuf = arg->buf; + semakptr->u.sem_perm.uid = sbuf->sem_perm.uid; + semakptr->u.sem_perm.gid = sbuf->sem_perm.gid; semakptr->u.sem_perm.mode = (semakptr->u.sem_perm.mode & - ~0777) | (sbuf.sem_perm.mode & 0777); + ~0777) | (sbuf->sem_perm.mode & 0777); semakptr->u.sem_ctime = time_second; break; case IPC_STAT: - mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; - sbuf = semakptr->u; - mtx_unlock(sema_mtxp); - if (bufseg == UIO_USERSPACE) - error = copyout(&semakptr->u, arg->buf, - sizeof(struct semid_ds)); - else - bcopy(&semakptr->u, arg->buf, sizeof(struct semid_ds)); + bcopy(&semakptr->u, arg->buf, sizeof(struct semid_ds)); break; case GETNCNT: - mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) @@ -728,11 +736,10 @@ error = EINVAL; goto done2; } - rval = semakptr->u.sem_base[semnum].semncnt; + *rval = semakptr->u.sem_base[semnum].semncnt; break; case GETPID: - mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) @@ -741,11 +748,10 @@ error = EINVAL; goto done2; } - rval = semakptr->u.sem_base[semnum].sempid; + *rval = semakptr->u.sem_base[semnum].sempid; break; case GETVAL: - mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) @@ -754,34 +760,47 @@ error = EINVAL; goto done2; } - rval = semakptr->u.sem_base[semnum].semval; + *rval = semakptr->u.sem_base[semnum].semval; break; case GETALL: /* - * Given the fact that this copies out a variable amount - * of data into userland, I don't see any feasible way of - * doing this with a kmem copy of the userland buffer. + * Unfortunately, callers of this function don't know + * in advance how many semaphores are in this set. + * While we could just allocate the maximum size array + * and pass the actual size back to the caller, that + * won't work for SETALL since we can't copyin() more + * data than the user specified as we may return a + * spurious EFAULT. + * + * Note that the number of semaphores in a set is + * fixed for the life of that set. The only way that + * the 'count' could change while are blocked in + * malloc() is if this semaphore set were destroyed + * and a new one created with the same index. + * However, semvalid() will catch that due to the + * sequence number unless exactly 0x8000 (or a + * multiple thereof) semaphore sets for the same index + * are created and destroyed while we are in malloc! + * */ - if (bufseg == UIO_SYSSPACE) - return (EINVAL); - - array = malloc(sizeof(*array) * semakptr->u.sem_nsems, M_TEMP, - M_WAITOK); + count = semakptr->u.sem_nsems; + mtx_unlock(sema_mtxp); + array = malloc(sizeof(*array) * count, M_TEMP, M_WAITOK); mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; + KASSERT(count == semakptr->u.sem_nsems, ("nsems changed")); if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; for (i = 0; i < semakptr->u.sem_nsems; i++) array[i] = semakptr->u.sem_base[i].semval; mtx_unlock(sema_mtxp); - error = copyout(array, arg->array, - i * sizeof(arg->array[0])); + error = copyout(array, arg->array, count * sizeof(*array)); + mtx_lock(sema_mtxp); break; case GETZCNT: - mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) @@ -790,11 +809,10 @@ error = EINVAL; goto done2; } - rval = semakptr->u.sem_base[semnum].semzcnt; + *rval = semakptr->u.sem_base[semnum].semzcnt; break; case SETVAL: - mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_W))) @@ -816,18 +834,11 @@ case SETALL: /* - * Given the fact that this copies in variable amounts of - * userland data in a loop, I don't see any feasible way - * of doing this with a kmem copy of the userland buffer. + * See comment on GETALL for why 'count' shouldn't change + * and why we require a userland buffer. */ - if (bufseg == UIO_SYSSPACE) - return (EINVAL); - mtx_lock(sema_mtxp); -raced: - if ((error = semvalid(semid, semakptr)) != 0) - goto done2; count = semakptr->u.sem_nsems; - mtx_unlock(sema_mtxp); + mtx_unlock(sema_mtxp); array = malloc(sizeof(*array) * count, M_TEMP, M_WAITOK); error = copyin(arg->array, array, count * sizeof(*array)); if (error) @@ -835,12 +846,7 @@ mtx_lock(sema_mtxp); if ((error = semvalid(semid, semakptr)) != 0) goto done2; - /* we could have raced? */ - if (count != semakptr->u.sem_nsems) { - free(array, M_TEMP); - array = NULL; - goto raced; - } + KASSERT(count == semakptr->u.sem_nsems, ("nsems changed")); if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_W))) goto done2; for (i = 0; i < semakptr->u.sem_nsems; i++) { @@ -862,11 +868,8 @@ break; } - if (error == 0) - td->td_retval[0] = rval; done2: - if (mtx_owned(sema_mtxp)) - mtx_unlock(sema_mtxp); + mtx_unlock(sema_mtxp); if (array != NULL) free(array, M_TEMP); return(error); ==== //depot/projects/smpng/sys/sys/syscallsubr.h#39 (text+ko) ==== @@ -125,15 +125,15 @@ char *buf, enum uio_seg bufseg, int count); int kern_readv(struct thread *td, int fd, struct uio *auio); int kern_recvit(struct thread *td, int s, struct msghdr *mp, - void *namelenp, enum uio_seg uioseg, enum uio_seg fromseg, - struct mbuf **controlp); + void *namelenp, enum uio_seg uioseg, enum uio_seg fromseg, + struct mbuf **controlp); int kern_rename(struct thread *td, char *from, char *to, enum uio_seg pathseg); int kern_rmdir(struct thread *td, char *path, enum uio_seg pathseg); int kern_sched_rr_get_interval(struct thread *td, pid_t pid, struct timespec *ts); int kern_semctl(struct thread *td, int semid, int semnum, int cmd, - union semun *arg, enum uio_seg bufseg); + union semun *arg, register_t *rval); int kern_select(struct thread *td, int nd, fd_set *fd_in, fd_set *fd_ou, fd_set *fd_ex, struct timeval *tvp); int kern_sendfile(struct thread *td, struct sendfile_args *uap, From owner-p4-projects@FreeBSD.ORG Wed Jul 5 19:16:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3E84916A4E8; Wed, 5 Jul 2006 19:16:55 +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 0013116A4DE for ; Wed, 5 Jul 2006 19:16:54 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B657443D53 for ; Wed, 5 Jul 2006 19:16:54 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65JGsRP040610 for ; Wed, 5 Jul 2006 19:16:54 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65JGs3t040607 for perforce@freebsd.org; Wed, 5 Jul 2006 19:16:54 GMT (envelope-from wsalamon@computer.org) Date: Wed, 5 Jul 2006 19:16:54 GMT Message-Id: <200607051916.k65JGs3t040607@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 100647 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 19:16:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=100647 Change 100647 by wsalamon@vh3 on 2006/07/05 19:15:56 Regen the syscall files to bring them in sync with the syscalls.master. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/kern/init_sysent.c#31 edit .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.c#22 edit .. //depot/projects/trustedbsd/audit3/sys/sys/syscall.h#21 edit .. //depot/projects/trustedbsd/audit3/sys/sys/syscall.mk#22 edit .. //depot/projects/trustedbsd/audit3/sys/sys/sysproto.h#25 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/kern/init_sysent.c#31 (text+ko) ==== @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp */ #include "opt_compat.h" @@ -50,8 +50,8 @@ { compat4(SYF_MPSAFE | AS(freebsd4_getfsstat_args),getfsstat), AUE_GETFSSTAT }, /* 18 = old getfsstat */ { compat(SYF_MPSAFE | AS(olseek_args),lseek), AUE_LSEEK }, /* 19 = old lseek */ { SYF_MPSAFE | 0, (sy_call_t *)getpid, AUE_GETPID }, /* 20 = getpid */ - { AS(mount_args), (sy_call_t *)mount, AUE_MOUNT }, /* 21 = mount */ - { AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT }, /* 22 = unmount */ + { SYF_MPSAFE | AS(mount_args), (sy_call_t *)mount, AUE_MOUNT }, /* 21 = mount */ + { SYF_MPSAFE | AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT }, /* 22 = unmount */ { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid, AUE_SETUID }, /* 23 = setuid */ { SYF_MPSAFE | 0, (sy_call_t *)getuid, AUE_GETUID }, /* 24 = getuid */ { SYF_MPSAFE | 0, (sy_call_t *)geteuid, AUE_GETEUID }, /* 25 = geteuid */ @@ -407,7 +407,7 @@ { AS(nfsclnt_args), (sy_call_t *)nosys, AUE_NULL }, /* 375 = nfsclnt */ { SYF_MPSAFE | AS(eaccess_args), (sy_call_t *)eaccess, AUE_EACCESS }, /* 376 = eaccess */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 377 = afs_syscall */ - { AS(nmount_args), (sy_call_t *)nmount, AUE_NMOUNT }, /* 378 = nmount */ + { SYF_MPSAFE | AS(nmount_args), (sy_call_t *)nmount, AUE_NMOUNT }, /* 378 = nmount */ { SYF_MPSAFE | 0, (sy_call_t *)kse_exit, AUE_NULL }, /* 379 = kse_exit */ { SYF_MPSAFE | AS(kse_wakeup_args), (sy_call_t *)kse_wakeup, AUE_NULL }, /* 380 = kse_wakeup */ { SYF_MPSAFE | AS(kse_create_args), (sy_call_t *)kse_create, AUE_NULL }, /* 381 = kse_create */ ==== //depot/projects/trustedbsd/audit3/sys/kern/syscalls.c#22 (text+ko) ==== @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp */ const char *syscallnames[] = { ==== //depot/projects/trustedbsd/audit3/sys/sys/syscall.h#21 (text+ko) ==== @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp */ #define SYS_syscall 0 ==== //depot/projects/trustedbsd/audit3/sys/sys/syscall.mk#22 (text+ko) ==== @@ -1,7 +1,7 @@ # FreeBSD system call names. # DO NOT EDIT-- this file is automatically generated. # $FreeBSD$ -# created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp +# created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp MIASM = \ syscall.o \ exit.o \ ==== //depot/projects/trustedbsd/audit3/sys/sys/sysproto.h#25 (text+ko) ==== @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp */ #ifndef _SYS_SYSPROTO_H_ From owner-p4-projects@FreeBSD.ORG Wed Jul 5 20:08:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7A8D516A4DF; Wed, 5 Jul 2006 20:08:10 +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 3689B16A5A8 for ; Wed, 5 Jul 2006 20:08:01 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A5A0E43D45 for ; Wed, 5 Jul 2006 20:08:01 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65K817b044542 for ; Wed, 5 Jul 2006 20:08:01 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65K8196044539 for perforce@freebsd.org; Wed, 5 Jul 2006 20:08:01 GMT (envelope-from jhb@freebsd.org) Date: Wed, 5 Jul 2006 20:08:01 GMT Message-Id: <200607052008.k65K8196044539@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100651 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 20:08:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=100651 Change 100651 by jhb@jhb_mutex on 2006/07/05 20:07:11 Add a kern_ioctl() which assumes data points to a KVM buffer for ioctl's that act on buffers and use it in xenix_rdchk() to stop using stackgap. There might be several places that currently do fget() / fo_ioctl() / fdrop() themselves that might be able to be simplified slightly to just do kern_ioctl() now. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#14 edit .. //depot/projects/smpng/sys/kern/sys_generic.c#44 edit .. //depot/projects/smpng/sys/sys/syscallsubr.h#40 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#14 (text+ko) ==== @@ -84,18 +84,15 @@ struct thread *td; struct xenix_rdchk_args *uap; { - int error; - struct ioctl_args sa; - caddr_t sg = stackgap_init(); + int data, error; DPRINTF(("IBCS2: 'xenix rdchk'\n")); - sa.fd = uap->fd; - sa.com = FIONREAD; - sa.data = stackgap_alloc(&sg, sizeof(int)); - if ((error = ioctl(td, &sa)) != 0) - return error; - td->td_retval[0] = (*((int*)sa.data)) ? 1 : 0; - return 0; + + error = kern_ioctl(td, uap->fd, FIONREAD, &data); + if (error) + return (error); + td->td_retval[0] = data ? 1 : 0; + return (0); } int ==== //depot/projects/smpng/sys/kern/sys_generic.c#44 (text+ko) ==== @@ -523,13 +523,10 @@ int ioctl(struct thread *td, struct ioctl_args *uap) { - struct file *fp; - struct filedesc *fdp; u_long com; - int error = 0; + int error; u_int size; caddr_t data, memp; - int tmp; if (uap->com > 0xffffffff) { printf( @@ -537,27 +534,7 @@ td->td_proc->p_pid, td->td_proc->p_comm, uap->com); uap->com &= 0xffffffff; } - if ((error = fget(td, uap->fd, &fp)) != 0) - return (error); - if ((fp->f_flag & (FREAD | FWRITE)) == 0) { - fdrop(fp, td); - return (EBADF); - } - fdp = td->td_proc->p_fd; - switch (com = uap->com) { - case FIONCLEX: - FILEDESC_LOCK_FAST(fdp); - fdp->fd_ofileflags[uap->fd] &= ~UF_EXCLOSE; - FILEDESC_UNLOCK_FAST(fdp); - fdrop(fp, td); - return (0); - case FIOCLEX: - FILEDESC_LOCK_FAST(fdp); - fdp->fd_ofileflags[uap->fd] |= UF_EXCLOSE; - FILEDESC_UNLOCK_FAST(fdp); - fdrop(fp, td); - return (0); - } + com = uap->com; /* * Interpret high order word to find amount of data to be @@ -571,10 +548,8 @@ #else ((com & (IOC_IN | IOC_OUT)) && size == 0) || #endif - ((com & IOC_VOID) && size > 0)) { - fdrop(fp, td); + ((com & IOC_VOID) && size > 0)) return (ENOTTY); - } if (size > 0) { memp = malloc((u_long)size, M_IOCTLOPS, M_WAITOK); @@ -587,7 +562,6 @@ error = copyin(uap->data, data, (u_int)size); if (error) { free(memp, M_IOCTLOPS); - fdrop(fp, td); return (error); } } else if (com & IOC_OUT) { @@ -598,7 +572,43 @@ bzero(data, size); } - if (com == FIONBIO) { + error = kern_ioctl(td, uap->fd, com, data); + + if (error == 0 && (com & IOC_OUT)) + error = copyout(data, uap->data, (u_int)size); + + if (memp != NULL) + free(memp, M_IOCTLOPS); + return (error); +} + +int +kern_ioctl(struct thread *td, int fd, u_long com, caddr_t data) +{ + struct file *fp; + struct filedesc *fdp; + int error; + int tmp; + + if ((error = fget(td, fd, &fp)) != 0) + return (error); + if ((fp->f_flag & (FREAD | FWRITE)) == 0) { + fdrop(fp, td); + return (EBADF); + } + fdp = td->td_proc->p_fd; + switch (com) { + case FIONCLEX: + FILEDESC_LOCK_FAST(fdp); + fdp->fd_ofileflags[fd] &= ~UF_EXCLOSE; + FILEDESC_UNLOCK_FAST(fdp); + goto out; + case FIOCLEX: + FILEDESC_LOCK_FAST(fdp); + fdp->fd_ofileflags[fd] |= UF_EXCLOSE; + FILEDESC_UNLOCK_FAST(fdp); + goto out; + case FIONBIO: FILE_LOCK(fp); if ((tmp = *(int *)data)) fp->f_flag |= FNONBLOCK; @@ -606,7 +616,8 @@ fp->f_flag &= ~FNONBLOCK; FILE_UNLOCK(fp); data = (void *)&tmp; - } else if (com == FIOASYNC) { + break; + case FIOASYNC: FILE_LOCK(fp); if ((tmp = *(int *)data)) fp->f_flag |= FASYNC; @@ -614,15 +625,11 @@ fp->f_flag &= ~FASYNC; FILE_UNLOCK(fp); data = (void *)&tmp; + break; } error = fo_ioctl(fp, com, data, td->td_ucred, td); - - if (error == 0 && (com & IOC_OUT)) - error = copyout(data, uap->data, (u_int)size); - - if (memp != NULL) - free(memp, M_IOCTLOPS); +out: fdrop(fp, td); return (error); } ==== //depot/projects/smpng/sys/sys/syscallsubr.h#40 (text+ko) ==== @@ -92,6 +92,7 @@ socklen_t *alen); int kern_getsockopt(struct thread *td, int s, int level, int name, void *optval, enum uio_seg valseg, socklen_t *valsize); +int kern_ioctl(struct thread *td, int fd, u_long com, caddr_t data); int kern_kevent(struct thread *td, int fd, int nchanges, int nevents, struct kevent_copyops *k_ops, const struct timespec *timeout); int kern_kldload(struct thread *td, const char *file, int *fileid); From owner-p4-projects@FreeBSD.ORG Wed Jul 5 20:42:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 177CC16A4E1; Wed, 5 Jul 2006 20:42:46 +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 CD77316A4DA for ; Wed, 5 Jul 2006 20:42:45 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C08D43D49 for ; Wed, 5 Jul 2006 20:42:45 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65Kgj13047422 for ; Wed, 5 Jul 2006 20:42:45 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65Kgja9047419 for perforce@freebsd.org; Wed, 5 Jul 2006 20:42:45 GMT (envelope-from jhb@freebsd.org) Date: Wed, 5 Jul 2006 20:42:45 GMT Message-Id: <200607052042.k65Kgja9047419@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100654 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 20:42:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=100654 Change 100654 by jhb@jhb_mutex on 2006/07/05 20:42:09 Just use regular poll() for ibcs2_poll(). ibcs2_poll() was broken in so many ways and completely unnecessary. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_msg.c#7 edit .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#12 edit .. //depot/projects/smpng/sys/notes#71 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_msg.c#7 (text+ko) ==== @@ -38,7 +38,6 @@ #include #include #include -#include #include @@ -57,79 +56,3 @@ { return 0; /* fake */ } - - -int -ibcs2_poll(td, uap) - struct thread *td; - struct ibcs2_poll_args *uap; -{ - int error, i, nfds; - fd_set *readfds, *writefds, *exceptfds; - struct timeval timeout, *tp; - struct ibcs2_poll conv; - caddr_t sg = stackgap_init(); - - if (uap->nfds > FD_SETSIZE) - return EINVAL; - readfds = stackgap_alloc(&sg, sizeof(fd_set *)); - writefds = stackgap_alloc(&sg, sizeof(fd_set *)); - exceptfds = stackgap_alloc(&sg, sizeof(fd_set *)); - - FD_ZERO(readfds); - FD_ZERO(writefds); - FD_ZERO(exceptfds); - if (uap->timeout == -1) - tp = NULL; - else { - timeout.tv_usec = (uap->timeout % 1000)*1000; - timeout.tv_sec = uap->timeout / 1000; - tp = &timeout; - } - - nfds = 0; - for (i = 0; i < uap->nfds; i++) { - if ((error = copyin(uap->fds + i*sizeof(struct ibcs2_poll), - &conv, sizeof(conv))) != 0) - return error; - conv.revents = 0; - if (conv.fd < 0 || conv.fd >= FD_SETSIZE) - continue; - if (conv.fd >= nfds) - nfds = conv.fd + 1; - if (conv.events & IBCS2_READPOLL) - FD_SET(conv.fd, readfds); - if (conv.events & IBCS2_WRITEPOLL) - FD_SET(conv.fd, writefds); - FD_SET(conv.fd, exceptfds); - } - error = kern_select(td, nfds, readfds, writefds, exceptfds, tp); - if (error != 0) - return error; - if (td->td_retval[0] == 0) - return 0; - td->td_retval[0] = 0; - for (td->td_retval[0] = 0, i = 0; i < uap->nfds; i++) { - copyin(uap->fds + i*sizeof(struct ibcs2_poll), - &conv, sizeof(conv)); - conv.revents = 0; - if (conv.fd < 0 || conv.fd > FD_SETSIZE) - /* should check for open as well */ - conv.revents |= IBCS2_POLLNVAL; - else { - if (FD_ISSET(conv.fd, readfds)) - conv.revents |= IBCS2_POLLIN; - if (FD_ISSET(conv.fd, writefds)) - conv.revents |= IBCS2_POLLOUT; - if (FD_ISSET(conv.fd, exceptfds)) - conv.revents |= IBCS2_POLLERR; - if (conv.revents) - ++td->td_retval[0]; - } - if ((error = copyout(&conv, - uap->fds + i*sizeof(struct ibcs2_poll), - sizeof(conv))) != 0) - return error; - } - return 0; -} ==== //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#12 (text+ko) ==== @@ -158,8 +158,8 @@ 86 AUE_PUTMSG MSTD { int ibcs2_putmsg(int fd, \ struct ibcs2_stropts *ctl, \ struct ibcs2_stropts *dat, int flags); } -87 AUE_POLL STD { int ibcs2_poll(struct ibcs2_poll *fds, \ - long nfds, int timeout); } +87 AUE_POLL MNOPROTO { int poll(struct pollfd *fds, u_int nfds, \ + int timeout); } 88 AUE_NULL UNIMPL nosys 89 AUE_NULL MSTD { int ibcs2_secure(int cmd, int a1, int a2, \ int a3, int a4, int a5); } ==== //depot/projects/smpng/sys/notes#71 (text+ko) ==== @@ -79,6 +79,40 @@ recursion) and panic if we try to sleep with any held to provide a cheaper version of the current WITNESS check that doesn't bog the system down quite as bad. +- compat ABI cleanups + - axe stackgap + + svr4 + + linux + - ibcs2 + - ibcs2_msg.c + - push Giant down and mark all remaining syscalls MPSAFE + + freebsd + + compat32 + - svr4 + - svr4_sys_ioctl() + - svr4_sys_getmsg() + - svr4_sys_putmsg() + - svr4_sys_waitsys() + - svr4_sys_fchroot() + - svr4_sys_resolvepath() + - linux + - linux_uselib() + - ibcs2 + - ibcs2_read() + - ibcs2_mount() + - ibcs2_umount() + - ibcs2_msgsys() + - ibcs2_shmsys() + - ibcs2_semsys() + - ibcs2_ioctl() + - ibcs2_getdents() + + ibcs2_poll() + + axe ibcs2_poll.h + - ibcs2_sigprocmask() + - xenix_rdchk() + - ibcs2_getgroups() + - ibcs2_setgruops() + - don't mess with td_retval in any kern_foo() functions Active child branches: - jhb_intr - fast ithreads and MSI? (perhaps do MSI in jhb_acpipci) From owner-p4-projects@FreeBSD.ORG Wed Jul 5 20:42:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 80BDC16A559; Wed, 5 Jul 2006 20:42:46 +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 5F0AD16A556 for ; Wed, 5 Jul 2006 20:42:46 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DFA1E43D4C for ; Wed, 5 Jul 2006 20:42:45 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65Kgj9a047428 for ; Wed, 5 Jul 2006 20:42:45 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65Kgjd0047425 for perforce@freebsd.org; Wed, 5 Jul 2006 20:42:45 GMT (envelope-from jhb@freebsd.org) Date: Wed, 5 Jul 2006 20:42:45 GMT Message-Id: <200607052042.k65Kgjd0047425@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100655 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 20:42:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=100655 Change 100655 by jhb@jhb_mutex on 2006/07/05 20:42:37 Compile. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#15 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#15 (text+ko) ==== @@ -88,7 +88,7 @@ DPRINTF(("IBCS2: 'xenix rdchk'\n")); - error = kern_ioctl(td, uap->fd, FIONREAD, &data); + error = kern_ioctl(td, uap->fd, FIONREAD, (caddr_t)&data); if (error) return (error); td->td_retval[0] = data ? 1 : 0; From owner-p4-projects@FreeBSD.ORG Wed Jul 5 21:03:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5FADA16A4E0; Wed, 5 Jul 2006 21:03:12 +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 1D38016A4DD for ; Wed, 5 Jul 2006 21:03:12 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D919643D46 for ; Wed, 5 Jul 2006 21:03:11 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65L3BLb059250 for ; Wed, 5 Jul 2006 21:03:11 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65L3BWv059247 for perforce@freebsd.org; Wed, 5 Jul 2006 21:03:11 GMT (envelope-from jhb@freebsd.org) Date: Wed, 5 Jul 2006 21:03:11 GMT Message-Id: <200607052103.k65L3BWv059247@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100656 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 21:03:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=100656 Change 100656 by jhb@jhb_mutex on 2006/07/05 21:02:27 Axe stackgap macros from ibcs2 and trim nested includes. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_util.h#8 edit .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#16 edit .. //depot/projects/smpng/sys/i386/ibcs2/imgact_coff.c#21 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_util.h#8 (text+ko) ==== @@ -40,41 +40,9 @@ #ifndef _IBCS2_UTIL_H_ #define _IBCS2_UTIL_H_ -/* - * XXX the inlines have obnoxious prerequisites, only some of which are - * included here. - */ -#include -#include -#include -#include -#include #include #include -static __inline caddr_t stackgap_init(void); -static __inline void *stackgap_alloc(caddr_t *, size_t); - -static __inline caddr_t -stackgap_init() -{ -#define szsigcode (*(curthread->td_proc->p_sysent->sv_szsigcode)) - return (caddr_t)(PS_STRINGS - szsigcode - SPARE_USRSPACE); -} - -static __inline void * -stackgap_alloc(sgp, sz) - caddr_t *sgp; - size_t sz; -{ - void *p = (void *) *sgp; - sz = ALIGN(sz); - if (*sgp + sz > (caddr_t)(PS_STRINGS - szsigcode)) - return NULL; - *sgp += sz; - return p; -} - #ifdef DEBUG_IBCS2 #define DPRINTF(a) printf a; #else ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#16 (text+ko) ==== @@ -42,6 +42,7 @@ #include #include #include +#include #include #include ==== //depot/projects/smpng/sys/i386/ibcs2/imgact_coff.c#21 (text+ko) ==== @@ -32,6 +32,7 @@ #include #include +#include #include #include #include From owner-p4-projects@FreeBSD.ORG Wed Jul 5 21:52:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C38F16A4E0; Wed, 5 Jul 2006 21:52:26 +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 F291E16A4DA for ; Wed, 5 Jul 2006 21:52:25 +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 469D043D6A for ; Wed, 5 Jul 2006 21:52:16 +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 k65LqGRx071162 for ; Wed, 5 Jul 2006 21:52:16 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 k65LqGCF071159 for perforce@freebsd.org; Wed, 5 Jul 2006 21:52:16 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 21:52:16 GMT Message-Id: <200607052152.k65LqGCF071159@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 100660 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 21:52:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=100660 Change 100660 by rwatson@rwatson_zoo on 2006/07/05 21:51:38 Some renaming. (checkpoint) Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#4 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#4 (text+ko) ==== @@ -113,8 +113,8 @@ * attaching, which occurs with locks held. We might also want to allow * attach to fail. */ -typedef void (*mpo_destroy_t)(struct mac_policy_conf *mpc); -typedef void (*mpo_init_t)(struct mac_policy_conf *mpc); +typedef void (*mpo_policy_destroy_t)(struct mac_policy_conf *mpc); +typedef void (*mpo_policy_init_t)(struct mac_policy_conf *mpc); /* * General policy-directed security system call so that policies may @@ -131,37 +131,37 @@ /* * Object: struct bpfdesc (BPF descriptor) */ -typedef void (*mpo_init_bpfdesc_label_t)(struct label *label); -typedef void (*mpo_destroy_bpfdesc_label_t)(struct label *label); -typedef void (*mpo_create_bpfdesc_t)(struct ucred *cred, +typedef void (*mpo_bpfdesc_init_label_t)(struct label *label); +typedef void (*mpo_bpfdesc_destroy_label_t)(struct label *label); +typedef void (*mpo_bpfdesc_create_t)(struct ucred *cred, struct bpf_d *bpf_d, struct label *bpflabel); -typedef void (*mpo_create_mbuf_from_bpfdesc_t)(struct bpf_d *bpf_d, +typedef void (*mpo_bpfdesc_create_mbuf_t)(struct bpf_d *bpf_d, struct label *bpflabel, struct mbuf *mbuf, struct label *mbuflabel); -typedef int (*mpo_check_bpfdesc_receive_t)(struct bpf_d *bpf_d, +typedef int (*mpo_bpfdesc_check_receive_t)(struct bpf_d *bpf_d, struct label *bpflabel, struct ifnet *ifnet, struct label *ifnetlabel); /* * Object: struct devfsdirent (Devfs directory entry) */ -typedef void (*mpo_init_devfsdirent_label_t)(struct label *label); -typedef void (*mpo_destroy_devfsdirent_label_t)(struct label *label); -typedef void (*mpo_associate_vnode_devfs_t)(struct mount *mp, +typedef void (*mpo_devfsdirent_init_label_t)(struct label *label); +typedef void (*mpo_devfsdirent_destroy_label_t)(struct label *label); +typedef void (*mpo_devfs_vnode_associate_t)(struct mount *mp, struct label *fslabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel); -typedef void (*mpo_create_devfs_device_t)(struct ucred *cred, +typedef void (*mpo_devfs_create_device_t)(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *de, struct label *label); -typedef void (*mpo_create_devfs_directory_t)(struct mount *mp, +typedef void (*mpo_devfs_create_directory_t)(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *de, struct label *label); -typedef void (*mpo_create_devfs_symlink_t)(struct ucred *cred, +typedef void (*mpo_devfs_create_symlink_t)(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, struct label *delabel); -typedef void (*mpo_update_devfsdirent_t)(struct mount *mp, +typedef void (*mpo_devfsdirent_update_t)(struct mount *mp, struct devfs_dirent *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel); @@ -169,171 +169,165 @@ /* * Object: struct ucred (User credential) */ -typedef void (*mpo_init_cred_label_t)(struct label *label); -typedef void (*mpo_destroy_cred_label_t)(struct label *label); -typedef void (*mpo_copy_cred_label_t)(struct label *src, +typedef void (*mpo_cred_init_label_t)(struct label *label); +typedef void (*mpo_cred_destroy_cred_label_t)(struct label *label); +typedef void (*mpo_cred_copy_label_t)(struct label *src, struct label *dest); -typedef int (*mpo_externalize_cred_label_t)(struct label *label, +typedef int (*mpo_cred_externalize_label_t)(struct label *label, char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_internalize_cred_label_t)(struct label *label, +typedef int (*mpo_cred_internalize_label_t)(struct label *label, char *element_name, char *element_data, int *claimed); -typedef void (*mpo_relabel_cred_t)(struct ucred *cred, +typedef void (*mpo_cred_relabel_t)(struct ucred *cred, struct label *newlabel); -typedef int (*mpo_check_cred_relabel_t)(struct ucred *cred, +typedef int (*mpo_cred_check_relabel_t)(struct ucred *cred, struct label *newlabel); -typedef int (*mpo_check_cred_visible_t)(struct ucred *u1, +typedef int (*mpo_cred_check_visible_t)(struct ucred *u1, struct ucred *u2); /* * Object: struct ifnet (Network interface) */ -typedef void (*mpo_init_ifnet_label_t)(struct label *label); -typedef void (*mpo_destroy_ifnet_label_t)(struct label *label); -typedef void (*mpo_copy_ifnet_label_t)(struct label *src, +typedef void (*mpo_ifnet_init_label_t)(struct label *label); +typedef void (*mpo_ifnet_destroy_label_t)(struct label *label); +typedef void (*mpo_ifnet_copy_label_t)(struct label *src, struct label *dest); -typedef int (*mpo_externalize_ifnet_label_t)(struct label *label, +typedef int (*mpo_ifnet_externalize_label_t)(struct label *label, char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_internalize_ifnet_label_t)(struct label *label, +typedef int (*mpo_ifnet_internalize_label_t)(struct label *label, char *element_name, char *element_data, int *claimed); -typedef void (*mpo_create_ifnet_t)(struct ifnet *ifnet, +typedef void (*mpo_ifnet_create_t)(struct ifnet *ifnet, struct label *ifnetlabel); typedef void (*mpo_create_mbuf_linklayer_t)(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel); -typedef void (*mpo_create_mbuf_from_ifnet_t)(struct ifnet *ifnet, +typedef void (*mpo_ifnet_create_mbuf_t)(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel); typedef void (*mpo_create_mbuf_multicast_encap_t)(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *newmbuf, struct label *newmbuflabel); -typedef void (*mpo_relabel_ifnet_t)(struct ucred *cred, +typedef void (*mpo_ifnet_relabel_t)(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel); -typedef int (*mpo_check_ifnet_relabel_t)(struct ucred *cred, +typedef int (*mpo_ifnet_check_relabel_t)(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel); -typedef int (*mpo_check_ifnet_transmit_t)(struct ifnet *ifnet, +typedef int (*mpo_ifnet_check_transmit_t)(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel); /* * Object: struct inpcb (Internet protocol control block) */ -typedef int (*mpo_init_inpcb_label_t)(struct label *label, int flag); -typedef void (*mpo_destroy_inpcb_label_t)(struct label *label); -typedef void (*mpo_create_inpcb_from_socket_t)(struct socket *so, +typedef int (*mpo_inpcb_init_label_t)(struct label *label, int flag); +typedef void (*mpo_inpcb_destroy_label_t)(struct label *label); +typedef void (*mpo_inpcb_create_from_socket_t)(struct socket *so, struct label *solabel, struct inpcb *inp, struct label *inplabel); -typedef void (*mpo_create_mbuf_from_inpcb_t)(struct inpcb *inp, +typedef void (*mpo_inpcb_create_mbuf_t)(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel); typedef void (*mpo_inpcb_sosetlabel_t)(struct socket *so, struct label *label, struct inpcb *inp, struct label *inplabel); -typedef int (*mpo_check_inpcb_deliver_t)(struct inpcb *inp, +typedef int (*mpo_inpcb_check_deliver_t)(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel); /* * Object: struct ipq (IP fragment reassembly queue) */ -typedef int (*mpo_init_ipq_label_t)(struct label *label, int flag); -typedef void (*mpo_destroy_ipq_label_t)(struct label *label); -typedef void (*mpo_create_ipq_t)(struct mbuf *fragment, +typedef int (*mpo_ipq_init_label_t)(struct label *label, int flag); +typedef void (*mpo_ipq_destroy_label_t)(struct label *label); +typedef void (*mpo_ipq_create_t)(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel); -typedef void (*mpo_create_datagram_from_ipq) +typedef void (*mpo_ipq_create_datagram_t) (struct ipq *ipq, struct label *ipqlabel, struct mbuf *datagram, struct label *datagramlabel); -typedef int (*mpo_fragment_match_t)(struct mbuf *fragment, +typedef int (*mpo_ipq_fragment_match_t)(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel); -typedef void (*mpo_update_ipq_t)(struct mbuf *fragment, +typedef void (*mpo_ipq_update_t)(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel); /* * Object: kenv (Kernel environment) */ -typedef int (*mpo_check_kenv_dump_t)(struct ucred *cred); -typedef int (*mpo_check_kenv_get_t)(struct ucred *cred, char *name); -typedef int (*mpo_check_kenv_set_t)(struct ucred *cred, char *name, +typedef int (*mpo_kenv_check_dump_t)(struct ucred *cred); +typedef int (*mpo_kenv_check_get_t)(struct ucred *cred, char *name); +typedef int (*mpo_kenv_check_set_t)(struct ucred *cred, char *name, char *value); -typedef int (*mpo_check_kenv_unset_t)(struct ucred *cred, char *name); +typedef int (*mpo_kenv_check_unset_t)(struct ucred *cred, char *name); /* * Object: kld (Loadable kernel module) */ -typedef int (*mpo_check_kld_load_t)(struct ucred *cred, struct vnode *vp, +typedef int (*mpo_kld_check_load_t)(struct ucred *cred, struct vnode *vp, struct label *vlabel); -typedef int (*mpo_check_kld_stat_t)(struct ucred *cred); -typedef int (*mpo_check_kld_unload_t)(struct ucred *cred); +typedef int (*mpo_kld_check_stat_t)(struct ucred *cred); +typedef int (*mpo_kld_check_unload_t)(struct ucred *cred); /* * Object: struct ksem (POSIX semaphore) */ -typedef void (*mpo_init_posix_sem_label_t)(struct label *label); -typedef void (*mpo_destroy_posix_sem_label_t)(struct label *label); -typedef void (*mpo_create_posix_sem_t)(struct ucred *cred, +typedef void (*mpo_posix_sem_init_label_t)(struct label *label); +typedef void (*mpo_posix_sem_destroy_label_t)(struct label *label); +typedef void (*mpo_posix_sem_create_t)(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_destroy_t)(struct ucred *cred, +typedef int (*mpo_posix_sem_check_destroy_t)(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_getvalue_t)(struct ucred *cred, +typedef int (*mpo_posix_sem_check_getvalue_t)(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_open_t)(struct ucred *cred, +typedef int (*mpo_posix_sem_check_open_t)(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_post_t)(struct ucred *cred, +typedef int (*mpo_posix_sem_check_post_t)(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_unlink_t)(struct ucred *cred, +typedef int (*mpo_posix_sem_check_unlink_t)(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label); -typedef int (*mpo_check_posix_sem_wait_t)(struct ucred *cred, +typedef int (*mpo_posix_sem_check_wait_t)(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label); /* * Object: struct mbuf (Message buffer) */ -typedef int (*mpo_init_mbuf_label_t)(struct label *label, int flag); -typedef void (*mpo_destroy_mbuf_label_t)(struct label *label); -typedef void (*mpo_copy_mbuf_label_t)(struct label *src, +typedef int (*mpo_mbuf_init_label_t)(struct label *label, int flag); +typedef void (*mpo_mbuf_destroy_label_t)(struct label *label); +typedef void (*mpo_mbuf_copy_label_t)(struct label *src, struct label *dest); -typedef void (*mpo_create_mbuf_from_socket_t)(struct socket *so, - struct label *socketlabel, struct mbuf *m, - struct label *mbuflabel); -typedef void (*mpo_set_socket_peer_from_mbuf_t)(struct mbuf *mbuf, - struct label *mbuflabel, struct socket *so, - struct label *socketpeerlabel); -typedef void (*mpo_create_fragment_t)(struct mbuf *datagram, +typedef void (*mpo_mbuf_create_fragment_t)(struct mbuf *datagram, struct label *datagramlabel, struct mbuf *fragment, struct label *fragmentlabel); -typedef void (*mpo_create_mbuf_netlayer_t)(struct mbuf *oldmbuf, +typedef void (*mpo_mbuf_create_netlayer_t)(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct mbuf *newmbuf, struct label *newmbuflabel); -typedef void (*mpo_reflect_mbuf_icmp_t)(struct mbuf *m, +typedef void (*mpo_mbuf_reflect_icmp_t)(struct mbuf *m, struct label *mlabel); -typedef void (*mpo_reflect_mbuf_tcp_t)(struct mbuf *m, +typedef void (*mpo_mbuf_reflect_tcp_t)(struct mbuf *m, struct label *mlabel); /* * Object: struct mount (File system mountpoint) */ -typedef void (*mpo_init_mount_label_t)(struct label *label); -typedef void (*mpo_init_mount_fs_label_t)(struct label *label); -typedef void (*mpo_destroy_mount_label_t)(struct label *label); -typedef void (*mpo_destroy_mount_fs_label_t)(struct label *label); -typedef int (*mpo_check_mount_stat_t)(struct ucred *cred, +typedef void (*mpo_mount_init_label_t)(struct label *label); +typedef void (*mpo_mount_fs_init_label_t)(struct label *label); +typedef void (*mpo_mount_destroy_label_t)(struct label *label); +typedef void (*mpo_mount_fs_destroy_label_t)(struct label *label); +typedef int (*mpo_mount_check_stat_t)(struct ucred *cred, struct mount *mp, struct label *mntlabel); /* * Object: struct msqid_kernel (System V message queue) */ -typedef void (*mpo_init_sysv_msgqueue_label_t)(struct label *label); -typedef void (*mpo_destroy_sysv_msgqueue_label_t)(struct label *label); -typedef void (*mpo_cleanup_sysv_msgqueue_t)(struct label *msqlabel); -typedef void (*mpo_create_sysv_msgmsg_t)(struct ucred *cred, +typedef void (*mpo_sysv_msgqueue_init_label_t)(struct label *label); +typedef void (*mpo_sysv_msgqueue_destroy_t)(struct label *label); +typedef void (*mpo_sysv_msgqueue_cleanup_t)(struct label *msqlabel); +typedef void (*mpo_sysv_msgmsg_create_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel, struct msg *msgptr, struct label *msglabel); -typedef void (*mpo_create_sysv_msgqueue_t)(struct ucred *cred, +typedef void (*mpo_sysv_msgqueue_create_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel); typedef int (*mpo_check_sysv_msgmsq_t)(struct ucred *cred, @@ -355,95 +349,95 @@ /* * Object: struct msg (System V message) */ -typedef void (*mpo_init_sysv_msgmsg_label_t)(struct label *label); -typedef void (*mpo_destroy_sysv_msgmsg_label_t)(struct label *label); -typedef void (*mpo_cleanup_sysv_msgmsg_t)(struct label *msglabel); +typedef void (*mpo_sysv_msgmsg_init_label_t)(struct label *label); +typedef void (*mpo_sysv_msgmsg_destroy_label_t)(struct label *label); +typedef void (*mpo_sysv_msgmsg_cleanup_t)(struct label *msglabel); /* * Object: struct pipepair (Pipe) */ -typedef void (*mpo_init_pipe_label_t)(struct label *label); -typedef void (*mpo_destroy_pipe_label_t)(struct label *label); -typedef void (*mpo_copy_pipe_label_t)(struct label *src, +typedef void (*mpo_pipe_init_label_t)(struct label *label); +typedef void (*mpo_pipe_destroy_label_t)(struct label *label); +typedef void (*mpo_pipe_copy_label_t)(struct label *src, struct label *dest); -typedef int (*mpo_externalize_pipe_label_t)(struct label *label, +typedef int (*mpo_pipe_externalize_label_t)(struct label *label, char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_internalize_pipe_label_t)(struct label *label, +typedef int (*mpo_pipe_internalize_label_t)(struct label *label, char *element_name, char *element_data, int *claimed); -typedef void (*mpo_relabel_pipe_t)(struct ucred *cred, struct pipepair *pp, +typedef void (*mpo_pipe_relabel_t)(struct ucred *cred, struct pipepair *pp, struct label *oldlabel, struct label *newlabel); -typedef void (*mpo_create_pipe_t)(struct ucred *cred, struct pipepair *pp, +typedef void (*mpo_pipe_create_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel); -typedef int (*mpo_check_pipe_ioctl_t)(struct ucred *cred, +typedef int (*mpo_pipe_check_ioctl_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, unsigned long cmd, void *data); -typedef int (*mpo_check_pipe_poll_t)(struct ucred *cred, +typedef int (*mpo_pipe_check_poll_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel); -typedef int (*mpo_check_pipe_read_t)(struct ucred *cred, +typedef int (*mpo_pipe_check_read_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel); -typedef int (*mpo_check_pipe_relabel_t)(struct ucred *cred, +typedef int (*mpo_pipe_check_relabel_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel); -typedef int (*mpo_check_pipe_stat_t)(struct ucred *cred, +typedef int (*mpo_pipe_check_stat_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel); -typedef int (*mpo_check_pipe_write_t)(struct ucred *cred, +typedef int (*mpo_pipe_check_write_t)(struct ucred *cred, struct pipepair *pp, struct label *pipelabel); /* * Object: struct proc (Process) */ -typedef void (*mpo_init_proc_label_t)(struct label *label); -typedef void (*mpo_destroy_proc_label_t)(struct label *label); -typedef void (*mpo_create_proc0_t)(struct ucred *cred); -typedef void (*mpo_create_proc1_t)(struct ucred *cred); -typedef void (*mpo_thread_userret_t)(struct thread *thread); -typedef int (*mpo_check_proc_debug_t)(struct ucred *cred, +typedef void (*mpo_proc_init_label_t)(struct label *label); +typedef void (*mpo_proc_destroy_label_t)(struct label *label); +typedef void (*mpo_proc_create_init_t)(struct ucred *cred); +typedef void (*mpo_proc_create_swapper_t)(struct ucred *cred); +typedef void (*mpo_proc_thread_userret_t)(struct thread *thread); +typedef int (*mpo_proc_check_debug_t)(struct ucred *cred, struct proc *proc); -typedef int (*mpo_check_proc_sched_t)(struct ucred *cred, +typedef int (*mpo_proc_check_sched_t)(struct ucred *cred, struct proc *proc); -typedef int (*mpo_check_proc_setuid_t)(struct ucred *cred, uid_t uid); -typedef int (*mpo_check_proc_seteuid_t)(struct ucred *cred, uid_t euid); -typedef int (*mpo_check_proc_setgid_t)(struct ucred *cred, gid_t gid); -typedef int (*mpo_check_proc_setegid_t)(struct ucred *cred, gid_t egid); -typedef int (*mpo_check_proc_setgroups_t)(struct ucred *cred, int ngroups, +typedef int (*mpo_proc_check_setuid_t)(struct ucred *cred, uid_t uid); +typedef int (*mpo_proc_check_seteuid_t)(struct ucred *cred, uid_t euid); +typedef int (*mpo_proc_check_setgid_t)(struct ucred *cred, gid_t gid); +typedef int (*mpo_proc_check_setegid_t)(struct ucred *cred, gid_t egid); +typedef int (*mpo_proc_check_setgroups_t)(struct ucred *cred, int ngroups, gid_t *gidset); -typedef int (*mpo_check_proc_setreuid_t)(struct ucred *cred, uid_t ruid, +typedef int (*mpo_proc_check_setreuid_t)(struct ucred *cred, uid_t ruid, uid_t euid); -typedef int (*mpo_check_proc_setregid_t)(struct ucred *cred, gid_t rgid, +typedef int (*mpo_proc_check_setregid_t)(struct ucred *cred, gid_t rgid, gid_t egid); -typedef int (*mpo_check_proc_setresuid_t)(struct ucred *cred, uid_t ruid, +typedef int (*mpo_proc_check_setresuid_t)(struct ucred *cred, uid_t ruid, uid_t euid, uid_t suid); -typedef int (*mpo_check_proc_setresgid_t)(struct ucred *cred, gid_t rgid, +typedef int (*mpo_proc_check_setresgid_t)(struct ucred *cred, gid_t rgid, gid_t egid, gid_t sgid); -typedef int (*mpo_check_proc_signal_t)(struct ucred *cred, +typedef int (*mpo_proc_check_signal_t)(struct ucred *cred, struct proc *proc, int signum); -typedef int (*mpo_check_proc_wait_t)(struct ucred *cred, +typedef int (*mpo_proc_check_wait_t)(struct ucred *cred, struct proc *proc); /* * Object: struct semid_kernel (System V IPC semaphore) */ -typedef void (*mpo_init_sysv_sem_label_t)(struct label *label); -typedef void (*mpo_destroy_sysv_sem_label_t)(struct label *label); -typedef void (*mpo_cleanup_sysv_sem_t)(struct label *semalabel); -typedef void (*mpo_create_sysv_sem_t)(struct ucred *cred, +typedef void (*mpo_sysv_sem_init_label_t)(struct label *label); +typedef void (*mpo_sysv_sem_destroy_label_t)(struct label *label); +typedef void (*mpo_sysv_sem_cleanup_t)(struct label *semalabel); +typedef void (*mpo_sysv_sem_create_t)(struct ucred *cred, struct semid_kernel *semakptr, struct label *semalabel); -typedef int (*mpo_check_sysv_semctl_t)(struct ucred *cred, +typedef int (*mpo_sysv_sem_check_semctl_t)(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel, int cmd); -typedef int (*mpo_check_sysv_semget_t)(struct ucred *cred, +typedef int (*mpo_sysv_sem_check_semget_t)(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel); -typedef int (*mpo_check_sysv_semop_t)(struct ucred *cred, +typedef int (*mpo_sysv_sem_check_semop_t)(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel, size_t accesstype); /* * Object: struct shmid_kernel (System V shared memory segment) */ -typedef void (*mpo_init_sysv_shm_label_t)(struct label *label); -typedef void (*mpo_destroy_sysv_shm_label_t)(struct label *label); -typedef void (*mpo_cleanup_sysv_shm_t)(struct label *shmlabel); -typedef void (*mpo_create_sysv_shm_t)(struct ucred *cred, +typedef void (*mpo_sysv_shm_init_label_t)(struct label *label); +typedef void (*mpo_sysv_shm_destroy_label_t)(struct label *label); +typedef void (*mpo_sysv_shm_cleanup_t)(struct label *shmlabel); +typedef void (*mpo_sysv_shm_create_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmlabel); typedef int (*mpo_check_sysv_shmat_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, @@ -461,199 +455,205 @@ /* * Object: struct socket (Socket) */ -typedef int (*mpo_init_socket_label_t)(struct label *label, int flag); -typedef int (*mpo_init_socket_peer_label_t)(struct label *label, +typedef int (*mpo_socket_init_label_t)(struct label *label, int flag); +typedef int (*mpo_socket_init_peer_label_t)(struct label *label, int flag); -typedef void (*mpo_destroy_socket_label_t)(struct label *label); -typedef void (*mpo_destroy_socket_peer_label_t)(struct label *label); -typedef void (*mpo_copy_socket_label_t)(struct label *src, +typedef void (*mpo_socket_destroy_label_t)(struct label *label); +typedef void (*mpo_socket_destroy_peer_label_t)(struct label *label); +typedef void (*mpo_socket_copy_label_t)(struct label *src, struct label *dest); -typedef int (*mpo_externalize_socket_label_t)(struct label *label, +typedef int (*mpo_socket_externalize_label_t)(struct label *label, char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_externalize_socket_peer_label_t)(struct label *label, +typedef int (*mpo_socket_externalize_peer_label_t)(struct label *label, char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_internalize_socket_label_t)(struct label *label, +typedef int (*mpo_socket_internalize_label_t)(struct label *label, char *element_name, char *element_data, int *claimed); -typedef void (*mpo_create_socket_t)(struct ucred *cred, struct socket *so, +typedef void (*mpo_socket_create_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); -typedef void (*mpo_create_socket_from_socket_t)(struct socket *oldsocket, +typedef void (*mpo_socket_create_from_socket_t)(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketlabel); -typedef void (*mpo_relabel_socket_t)(struct ucred *cred, struct socket *so, +typedef void (*mpo_socket_relabel_t)(struct ucred *cred, struct socket *so, struct label *oldlabel, struct label *newlabel); -typedef void (*mpo_set_socket_peer_from_socket_t)(struct socket *oldsocket, +typedef void (*mpo_socket_set_peer_from_socket_t)(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketpeerlabel); -typedef int (*mpo_check_socket_accept_t)(struct ucred *cred, +typedef void (*mpo_socket_create_mbuf_t)(struct socket *so, + struct label *socketlabel, struct mbuf *m, + struct label *mbuflabel); +typedef void (*mpo_socket_set_peer_from_mbuf_t)(struct mbuf *mbuf, + struct label *mbuflabel, struct socket *so, + struct label *socketpeerlabel); +typedef int (*mpo_socket_check_accept_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); -typedef int (*mpo_check_socket_bind_t)(struct ucred *cred, +typedef int (*mpo_socket_check_bind_t)(struct ucred *cred, struct socket *so, struct label *socketlabel, struct sockaddr *sockaddr); -typedef int (*mpo_check_socket_connect_t)(struct ucred *cred, +typedef int (*mpo_socket_check_connect_t)(struct ucred *cred, struct socket *so, struct label *socketlabel, struct sockaddr *sockaddr); -typedef int (*mpo_check_socket_create_t)(struct ucred *cred, int domain, +typedef int (*mpo_socket_check_create_t)(struct ucred *cred, int domain, int type, int protocol); -typedef int (*mpo_check_socket_deliver_t)(struct socket *so, +typedef int (*mpo_socket_check_deliver_t)(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel); -typedef int (*mpo_check_socket_listen_t)(struct ucred *cred, +typedef int (*mpo_socket_check_listen_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); -typedef int (*mpo_check_socket_poll_t)(struct ucred *cred, +typedef int (*mpo_socket_check_poll_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); -typedef int (*mpo_check_socket_receive_t)(struct ucred *cred, +typedef int (*mpo_socket_check_receive_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); -typedef int (*mpo_check_socket_relabel_t)(struct ucred *cred, +typedef int (*mpo_socket_check_relabel_t)(struct ucred *cred, struct socket *so, struct label *socketlabel, struct label *newlabel); -typedef int (*mpo_check_socket_send_t)(struct ucred *cred, +typedef int (*mpo_socket_check_send_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); -typedef int (*mpo_check_socket_stat_t)(struct ucred *cred, +typedef int (*mpo_socket_check_stat_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); -typedef int (*mpo_check_socket_visible_t)(struct ucred *cred, +typedef int (*mpo_socket_check_visible_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); /* * Object: system (Global system state) */ -typedef int (*mpo_check_sysarch_ioperm_t)(struct ucred *cred); -typedef int (*mpo_check_system_acct_t)(struct ucred *cred, +typedef int (*mpo_system_check_ioperm_t)(struct ucred *cred); +typedef int (*mpo_system_check_acct_t)(struct ucred *cred, struct vnode *vp, struct label *vlabel); -typedef int (*mpo_check_system_nfsd_t)(struct ucred *cred); -typedef int (*mpo_check_system_reboot_t)(struct ucred *cred, int howto); -typedef int (*mpo_check_system_settime_t)(struct ucred *cred); -typedef int (*mpo_check_system_swapon_t)(struct ucred *cred, +typedef int (*mpo_system_check_nfsd_t)(struct ucred *cred); +typedef int (*mpo_system_check_reboot_t)(struct ucred *cred, int howto); +typedef int (*mpo_system_check_settime_t)(struct ucred *cred); +typedef int (*mpo_system_check_swapon_t)(struct ucred *cred, struct vnode *vp, struct label *label); -typedef int (*mpo_check_system_swapoff_t)(struct ucred *cred, +typedef int (*mpo_system_check_swapoff_t)(struct ucred *cred, struct vnode *vp, struct label *label); -typedef int (*mpo_check_system_sysctl_t)(struct ucred *cred, +typedef int (*mpo_system_check_sysctl_t)(struct ucred *cred, struct sysctl_oid *oidp, void *arg1, int arg2, struct sysctl_req *req); /* * Object: struct vnode (VFS node) */ -typedef void (*mpo_init_vnode_label_t)(struct label *label); -typedef void (*mpo_destroy_vnode_label_t)(struct label *label); -typedef int (*mpo_associate_vnode_extattr_t)(struct mount *mp, +typedef void (*mpo_vnode_init_label_t)(struct label *label); +typedef void (*mpo_vnode_destroy_vnode_label_t)(struct label *label); +typedef int (*mpo_vnode_associate_vnode_extattr_t)(struct mount *mp, struct label *fslabel, struct vnode *vp, struct label *vlabel); -typedef void (*mpo_associate_vnode_singlelabel_t)(struct mount *mp, +typedef void (*mpo_vnode_associate_vnode_singlelabel_t)(struct mount *mp, struct label *fslabel, struct vnode *vp, struct label *vlabel); -typedef int (*mpo_create_vnode_extattr_t)(struct ucred *cred, +typedef int (*mpo_vnode_create_vnode_extattr_t)(struct ucred *cred, struct mount *mp, struct label *fslabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp); -typedef void (*mpo_create_mount_t)(struct ucred *cred, struct mount *mp, +typedef void (*mpo_vnode_create_mount_t)(struct ucred *cred, struct mount *mp, struct label *mntlabel, struct label *fslabel); -typedef void (*mpo_relabel_vnode_t)(struct ucred *cred, struct vnode *vp, +typedef void (*mpo_vnode_relabel_vnode_t)(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *label); -typedef int (*mpo_setlabel_vnode_extattr_t)(struct ucred *cred, +typedef int (*mpo_vnode_setlabel_vnode_extattr_t)(struct ucred *cred, struct vnode *vp, struct label *vlabel, struct label *intlabel); -typedef void (*mpo_copy_vnode_label_t)(struct label *src, +typedef void (*mpo_vnode_copy_vnode_label_t)(struct label *src, struct label *dest); -typedef int (*mpo_externalize_vnode_label_t)(struct label *label, +typedef int (*mpo_vnode_externalize_vnode_label_t)(struct label *label, char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_internalize_vnode_label_t)(struct label *label, +typedef int (*mpo_vnode_internalize_vnode_label_t)(struct label *label, char *element_name, char *element_data, int *claimed); -typedef void (*mpo_execve_transition_t)(struct ucred *old, +typedef void (*mpo_vnode_execve_transition_t)(struct ucred *old, struct ucred *new, struct vnode *vp, struct label *vnodelabel, struct label *interpvnodelabel, struct image_params *imgp, struct label *execlabel); -typedef int (*mpo_execve_will_transition_t)(struct ucred *old, +typedef int (*mpo_vnode_execve_will_transition_t)(struct ucred *old, struct vnode *vp, struct label *vnodelabel, struct label *interpvnodelabel, struct image_params *imgp, struct label *execlabel); -typedef int (*mpo_check_vnode_access_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_access_t)(struct ucred *cred, struct vnode *vp, struct label *label, int acc_mode); typedef int (*mpo_check_vnode_chdir_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel); typedef int (*mpo_check_vnode_chroot_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel); -typedef int (*mpo_check_vnode_create_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_create_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp, struct vattr *vap); -typedef int (*mpo_check_vnode_delete_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_delete_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp); -typedef int (*mpo_check_vnode_deleteacl_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_deleteacl_t)(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type); -typedef int (*mpo_check_vnode_deleteextattr_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_deleteextattr_t)(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name); -typedef int (*mpo_check_vnode_exec_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_exec_t)(struct ucred *cred, struct vnode *vp, struct label *label, struct image_params *imgp, struct label *execlabel); -typedef int (*mpo_check_vnode_getacl_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_getacl_t)(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type); -typedef int (*mpo_check_vnode_getextattr_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_getextattr_t)(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name, struct uio *uio); -typedef int (*mpo_check_vnode_link_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_link_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp); -typedef int (*mpo_check_vnode_listextattr_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_listextattr_t)(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace); -typedef int (*mpo_check_vnode_lookup_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_lookup_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp); -typedef int (*mpo_check_vnode_mmap_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_mmap_t)(struct ucred *cred, struct vnode *vp, struct label *label, int prot, int flags); -typedef void (*mpo_check_vnode_mmap_downgrade_t)(struct ucred *cred, +typedef void (*mpo_vnode_check_mmap_downgrade_t)(struct ucred *cred, struct vnode *vp, struct label *label, int *prot); -typedef int (*mpo_check_vnode_mprotect_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_mprotect_t)(struct ucred *cred, struct vnode *vp, struct label *label, int prot); -typedef int (*mpo_check_vnode_open_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_open_t)(struct ucred *cred, struct vnode *vp, struct label *label, int acc_mode); -typedef int (*mpo_check_vnode_poll_t)(struct ucred *active_cred, +typedef int (*mpo_vnode_check_poll_t)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); -typedef int (*mpo_check_vnode_read_t)(struct ucred *active_cred, +typedef int (*mpo_vnode_check_read_t)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); -typedef int (*mpo_check_vnode_readdir_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_readdir_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel); -typedef int (*mpo_check_vnode_readlink_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_readlink_t)(struct ucred *cred, struct vnode *vp, struct label *label); -typedef int (*mpo_check_vnode_relabel_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_relabel_t)(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *newlabel); -typedef int (*mpo_check_vnode_rename_from_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_rename_from_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp); -typedef int (*mpo_check_vnode_rename_to_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_rename_to_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, int samedir, struct componentname *cnp); -typedef int (*mpo_check_vnode_revoke_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_revoke_t)(struct ucred *cred, struct vnode *vp, struct label *label); -typedef int (*mpo_check_vnode_setacl_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_setacl_t)(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type, struct acl *acl); -typedef int (*mpo_check_vnode_setextattr_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_setextattr_t)(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name, struct uio *uio); -typedef int (*mpo_check_vnode_setflags_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_setflags_t)(struct ucred *cred, struct vnode *vp, struct label *label, u_long flags); -typedef int (*mpo_check_vnode_setmode_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_setmode_t)(struct ucred *cred, struct vnode *vp, struct label *label, mode_t mode); -typedef int (*mpo_check_vnode_setowner_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_setowner_t)(struct ucred *cred, struct vnode *vp, struct label *label, uid_t uid, gid_t gid); -typedef int (*mpo_check_vnode_setutimes_t)(struct ucred *cred, +typedef int (*mpo_vnode_check_setutimes_t)(struct ucred *cred, struct vnode *vp, struct label *label, struct timespec atime, struct timespec mtime); -typedef int (*mpo_check_vnode_stat_t)(struct ucred *active_cred, +typedef int (*mpo_vnode_check_stat_t)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); -typedef int (*mpo_check_vnode_write_t)(struct ucred *active_cred, +typedef int (*mpo_vnode_check_write_t)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); typedef int (*mpo_associate_nfsd_label_t)(struct ucred *cred); From owner-p4-projects@FreeBSD.ORG Wed Jul 5 22:02:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B9E6316A4E0; Wed, 5 Jul 2006 22:02:30 +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 7D56A16A4DA for ; Wed, 5 Jul 2006 22:02:30 +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 EE63A43D46 for ; Wed, 5 Jul 2006 22:02:29 +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 k65M2TGb071904 for ; Wed, 5 Jul 2006 22:02:29 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 k65M2T6T071901 for perforce@freebsd.org; Wed, 5 Jul 2006 22:02:29 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 22:02:29 GMT Message-Id: <200607052202.k65M2T6T071901@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 100661 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 22:02:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=100661 Change 100661 by rwatson@rwatson_zoo on 2006/07/05 22:01:58 More renaming. Not happy with sysvipc names yet. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#5 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#5 (text+ko) ==== @@ -324,34 +324,34 @@ typedef void (*mpo_sysv_msgqueue_init_label_t)(struct label *label); typedef void (*mpo_sysv_msgqueue_destroy_t)(struct label *label); typedef void (*mpo_sysv_msgqueue_cleanup_t)(struct label *msqlabel); -typedef void (*mpo_sysv_msgmsg_create_t)(struct ucred *cred, +typedef void (*mpo_sysv_msgqueue_create_msg_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel, struct msg *msgptr, struct label *msglabel); typedef void (*mpo_sysv_msgqueue_create_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel); -typedef int (*mpo_check_sysv_msgmsq_t)(struct ucred *cred, +typedef int (*mpo_sysv_msgqueue_check_msgmsq_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_check_sysv_msgrcv_t)(struct ucred *cred, +typedef int (*mpo_sysv_msgqueue_check_msgrcv_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel); -typedef int (*mpo_check_sysv_msgrmid_t)(struct ucred *cred, +typedef int (*mpo_sysv_msgqueue_check_msgrmid_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel); -typedef int (*mpo_check_sysv_msqget_t)(struct ucred *cred, +typedef int (*mpo_sysv_msgqueue_check_msqget_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_check_sysv_msqsnd_t)(struct ucred *cred, +typedef int (*mpo_sysv_msgqueue_check_msqsnd_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_check_sysv_msqrcv_t)(struct ucred *cred, +typedef int (*mpo_sysv_msgqueue_check_msqrcv_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_check_sysv_msqctl_t)(struct ucred *cred, +typedef int (*mpo_sysv_msgqueue_check_msqctl_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel, int cmd); /* * Object: struct msg (System V message) */ -typedef void (*mpo_sysv_msgmsg_init_label_t)(struct label *label); -typedef void (*mpo_sysv_msgmsg_destroy_label_t)(struct label *label); -typedef void (*mpo_sysv_msgmsg_cleanup_t)(struct label *msglabel); +typedef void (*mpo_sysv_msg_init_label_t)(struct label *label); +typedef void (*mpo_sysv_msg_destroy_label_t)(struct label *label); +typedef void (*mpo_sysv_msg_cleanup_t)(struct label *msglabel); /* * Object: struct pipepair (Pipe) @@ -439,16 +439,16 @@ typedef void (*mpo_sysv_shm_cleanup_t)(struct label *shmlabel); typedef void (*mpo_sysv_shm_create_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmlabel); -typedef int (*mpo_check_sysv_shmat_t)(struct ucred *cred, +typedef int (*mpo_sysv_shm_check_shmat_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg); -typedef int (*mpo_check_sysv_shmctl_t)(struct ucred *cred, +typedef int (*mpo_sysv_shm_check_shmctl_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int cmd); -typedef int (*mpo_check_sysv_shmdt_t)(struct ucred *cred, +typedef int (*mpo_sysv_shm_check_shmdt_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel); -typedef int (*mpo_check_sysv_shmget_t)(struct ucred *cred, +typedef int (*mpo_sysv_shm_check_shmget_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg); @@ -662,8 +662,8 @@ /* * Policy module operations. */ - mpo_destroy_t mpo_destroy; - mpo_init_t mpo_init; + mpo_policy_destroy_t mpo_policy_destroy; + mpo_policy_init_t mpo_policy_init; /* * General policy-directed security system call so that policies may From owner-p4-projects@FreeBSD.ORG Wed Jul 5 22:24:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9170E16A4E0; Wed, 5 Jul 2006 22:24:59 +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 52CA716A4DE for ; Wed, 5 Jul 2006 22:24:59 +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 135DA43D46 for ; Wed, 5 Jul 2006 22:24:59 +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 k65MOwUN074886 for ; Wed, 5 Jul 2006 22:24:58 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 k65MOwBv074883 for perforce@freebsd.org; Wed, 5 Jul 2006 22:24:58 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 22:24:58 GMT Message-Id: <200607052224.k65MOwBv074883@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 100662 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 22:24:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=100662 Change 100662 by rwatson@rwatson_zoo on 2006/07/05 22:24:42 Checkpoint resort/respell on policy ops structure. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#6 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#6 (text+ko) ==== @@ -170,7 +170,7 @@ * Object: struct ucred (User credential) */ typedef void (*mpo_cred_init_label_t)(struct label *label); -typedef void (*mpo_cred_destroy_cred_label_t)(struct label *label); +typedef void (*mpo_cred_destroy_label_t)(struct label *label); typedef void (*mpo_cred_copy_label_t)(struct label *src, struct label *dest); typedef int (*mpo_cred_externalize_label_t)(struct label *label, @@ -659,18 +659,131 @@ typedef int (*mpo_associate_nfsd_label_t)(struct ucred *cred); struct mac_policy_ops { + mpo_policy_destroy_t mpo_policy_destroy; + mpo_policy_init_t mpo_policy_init; + + mpo_syscall_t mpo_syscall; + + mpo_bpfdesc_init_label_t mpo_bpfdesc_init_label; + mpo_bpfdesc_destroy_label_t mpo_bpfdesc_destroy_label; + mpo_bpfdesc_create_t mpo_bpfdesc_create; + mpo_bpfdesc_create_mbuf_t mpo_bpfdesc_create_mbuf; + mpo_bpfdesc_check_receive_t mpo_bpfdesc_check_receive; + /* - * Policy module operations. + * XXXRW: Naming consistency here -- perhaps should just be + * mpo_devfs_*. + */ + mpo_devfsdirent_init_label_t mpo_devfsdirent_init_label; + mpo_devfsdirent_destroy_label_t mpo_devfsdirent_destroy_label; + mpo_devfs_vnode_associate_t mpo_devfs_vnode_associate; + mpo_devfs_create_device_t mpo_devfs_create_device; + mpo_devfs_create_directory_t mpo_devfs_create_directory; + mpo_devfs_create_symlink_t mpo_devfs_create_symlink; + mpo_devfsdirent_update_t mpo_devfsdirent_update_t; + + /* + * XXXRW: Perhaps should be mpo_ucred_*. + */ + mpo_cred_init_label_t mpo_cred_init_label; + mpo_cred_destroy_label_t mpo_cred_destroy_label; + mpo_cred_copy_label_t mpo_cred_copy_label; + mpo_cred_externalize_label_t mpo_cred_externalize_label; + mpo_cred_internalize_label_t mpo_cred_internalize_label; + mpo_cred_relabel_t mpo_cred_relabel; + mpo_cred_check_relabel_t mpo_cred_check_relabel; + mpo_cred_check_visible_t mpo_cred_check_visible; + + /* + * XXXRW: Names here still inconsistent. + */ + mpo_ifnet_init_label_t mpo_ifnet_init_label; + mpo_ifnet_destroy_label_t mpo_ifnet_destroy_label; + mpo_ifnet_copy_label_t mpo_ifnet_copy_label; + mpo_ifnet_externalize_label_t mpo_ifnet_externalize_label; + mpo_ifnet_internalize_label_t mpo_ifnet_internalize_label; + mpo_ifnet_create_t mpo_ifnet_create; + mpo_create_mbuf_linklayer_t mpo_create_mbuf_linklayer; + mpo_ifnet_create_mbuf_t mpo_ifnet_create_mbuf; + mpo_create_mbuf_multicast_encap_t mpo_create_mbuf_mulicast_encap; + mpo_ifnet_relabel_t mpo_ifnet_relabel; + mpo_ifnet_check_relabel_t mpo_ifnet_check_relabel; + mpo_ifnet_check_transmit_t mpo_ifnet_check_transmit; + + /* + * XXXRW: Could s/create_from_socket/create/. + */ + mpo_inpcb_init_label_t mpo_inpcb_init_label; + mpo_inpcb_destroy_label_t mpo_inpcb_destroy_label; + mpo_inpcb_create_from_socket_t mpo_inpcb_create_from_socket; + mpo_inpcb_create_mbuf_t mpo_inpcb_create_mbuf; + mpo_inpcb_sosetlabel_t mpo_inpcb_sosetlabel; + mpo_inpcb_check_deliver_t mpo_inpcb_check_deliver; + + /* + * XXXRW: Maybe s/create_datagram/reassemble/, + * s/fragment_match/match/. + */ + mpo_ipq_init_label_t mpo_ipq_init_label; + mpo_ipq_destroy_label_t mpo_ipq_destroy_label; + mpo_ipq_create_t mpo_ipq_create; + mpo_ipq_create_datagram_t mpo_ipq_create_datagram; + mpo_ipq_fragment_match_t mpo_ipq_fragment_match; + mpo_ipq_update_t mpo_ipq_update; + + mpo_kenv_check_dump_t mpo_kenv_check_dump; + mpo_kenv_check_get_t mpo_kenv_check_get; + mpo_kenv_check_set_t mpo_kenv_check_set; + mpo_kenv_check_unset_t mpo_kenv_check_unset; + + mpo_kld_check_load_t mpo_kld_check_load; + mpo_kld_check_stat_t mpo_kld_check_stat; + mpo_kld_check_unload_t mpo_kld_check_unload; + + /* + * XXXRW: Since the structure is ksem, maybe these should be + * renamed; alternatively, maybe ksem should be renamed? Should + * be unlink instead of destroy? + */ + mpo_posix_sem_init_label_t mpo_posix_sem_init_label; + mpo_posix_sem_destroy_label_t mpo_posix_sem_destroy_label; + mpo_posix_sem_create_t mpo_posix_sem_create; + mpo_posix_sem_check_destroy_t mpo_posix_sem_check_destroy; + mpo_posix_sem_check_getvalue_t mpo_posix_sem_check_getvalue; + mpo_posix_sem_check_open_t mpo_posix_sem_check_open; + mpo_posix_sem_check_post_t mpo_posix_sem_check_post; + mpo_posix_sem_check_unlink_t mpo_posix_sem_check_unlink; + mpo_posix_sem_check_wait_t mpo_posix_sem_check_wait; + + /* + * XXXRW: Perhaps fragment, netlayer, icmp, tcp, etc, should be + * netinet calls rather than mbuf calls? */ - mpo_policy_destroy_t mpo_policy_destroy; - mpo_policy_init_t mpo_policy_init; + mpo_mbuf_init_label_t mpo_mbuf_init_label; + mpo_mbuf_destroy_label_t mpo_mbuf_destroy_label; + mpo_mbuf_copy_label_t mpo_mbuf_copy_label; + mpo_mbuf_create_fragment_t mpo_mbuf_create_fragment; + mpo_mbuf_create_netlayer_t mpo_mbuf_create_netlayer; + mpo_mbuf_reflect_icmp_t mpo_mbuf_reflect_icmp; + mpo_mbuf_reflect_tcp_t mpo_mbuf_reflect_tcp; /* - * General policy-directed security system call so that policies may - * implement new services without reserving explicit system call - * numbers. + * XXXRW: Time to toast mount_fs label since it basically is unused? */ - mpo_syscall_t mpo_syscall; + mpo_mount_init_label_t mpo_mount_init_label; + mpo_mount_fs_init_label_t mpo_mount_fs_init_label; + mpo_mount_destroy_label_t mpo_mount_destroy_label; + mpo_mount_fs_destroy_label_t mpo_mount_fs_destroy_label; + mpo_mount_check_stat_t mpo_mount_check_stat; + + + + + + + + + /* * Label operations. Initialize label storage, destroy label From owner-p4-projects@FreeBSD.ORG Wed Jul 5 22:35:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A6FDB16A4E1; Wed, 5 Jul 2006 22:35:12 +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 8024716A4DA for ; Wed, 5 Jul 2006 22:35:12 +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 2D0FC43D62 for ; Wed, 5 Jul 2006 22:35:12 +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 k65MZBvL077979 for ; Wed, 5 Jul 2006 22:35:12 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 k65MZBU3077976 for perforce@freebsd.org; Wed, 5 Jul 2006 22:35:11 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 22:35:11 GMT Message-Id: <200607052235.k65MZBU3077976@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 100663 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 22:35:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=100663 Change 100663 by rwatson@rwatson_zoo on 2006/07/05 22:34:39 Checkpoint renames. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#7 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#7 (text+ko) ==== @@ -776,11 +776,43 @@ mpo_mount_fs_destroy_label_t mpo_mount_fs_destroy_label; mpo_mount_check_stat_t mpo_mount_check_stat; + /* + * XXXRW: These names are a bit awkard. Perhaps sysv_msq to match + * conventional usage? + */ + mpo_sysv_msgqueue_init_label_t mpo_sysv_msgqueue_init_label; + mpo_sysv_msgqueue_destroy_t mpo_sysv_msgqueue_destroy; + mpo_sysv_msgqueue_cleanup_t mpo_sysv_msgqueue_cleanup; + mpo_sysv_msgqueue_create_msg_t mpo_sysv_msgqueue_create_msg; + mpo_sysv_msgqueue_create_t mpo_sysv_msgqueue_create; + mpo_sysv_msgqueue_check_msgmsq_t mpo_sysv_msgqueue_check_msgmsq; + mpo_sysv_msgqueue_check_msgrcv_t mpo_sysv_msgqueue_check_msgrcv; + mpo_sysv_msgqueue_check_msgrmid_t mpo_sysv_msgqueue_check_msgrmid; + mpo_sysv_msgqueue_check_msqget_t mpo_sysv_msgqueue_check_msqget; + mpo_sysv_msgqueue_check_msqsnd_t mpo_sysv_msgqueue_check_msqsnd; + mpo_sysv_msgqueue_check_msqrcv_t mpo_sysv_msgqueue_check_msqrcv; + mpo_sysv_msgqueue_check_msqctl_t mpo_sysv_msgqueue_check_msqctl; + mpo_sysv_msg_init_label_t mpo_sysv_msg_init_label; + mpo_sysv_msg_destroy_label_t mpo_sysv_msg_destroy_label; + mpo_sysv_msg_cleanup_t mpo_sysv_msg_cleanup; - - - + /* + * XXXRW: Technically, structure name here is pipepair, not pipe. + */ + mpo_pipe_init_label_t mpo_pipe_init_label; + mpo_pipe_destroy_label_t mpo_pipe_destroy_label; + mpo_pipe_copy_label_t mpo_pipe_copy_label; + mpo_pipe_externalize_label_t mpo_pipe_externalize_label; + mpo_pipe_internalize_label_t mpo_pipe_internalize_label; + mpo_pipe_relabel_t mpo_pipe_relabel; + mpo_pipe_create_t mpo_pipe_create; + mpo_pipe_check_ioctl_t mpo_pipe_check_ioctl; + mpo_pipe_check_poll_t mpo_pipe_check_poll; + mpo_pipe_check_read_t mpo_pipe_check_read; + mpo_pipe_check_relabel_t mpo_pipe_check_relabel; + mpo_pipe_check_stat_t mpo_pipe_check_stat; + mpo_pipe_check_write_t mpo_pipe_check_write; From owner-p4-projects@FreeBSD.ORG Wed Jul 5 22:45:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 25DA916A4E5; Wed, 5 Jul 2006 22:45:26 +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 DE80F16A4DA for ; Wed, 5 Jul 2006 22:45:25 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 97D9943D55 for ; Wed, 5 Jul 2006 22:45:25 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65MjPE2078726 for ; Wed, 5 Jul 2006 22:45:25 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65MjOAP078723 for perforce@freebsd.org; Wed, 5 Jul 2006 22:45:24 GMT (envelope-from gonzo@FreeBSD.org) Date: Wed, 5 Jul 2006 22:45:24 GMT Message-Id: <200607052245.k65MjOAP078723@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100664 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 22:45:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=100664 Change 100664 by gonzo@gonzo_hideout on 2006/07/05 22:44:54 LOCAL_LABEL_PREFIX changed to dot (as in openbsd.h) instead of dollar sign. Fixes bunch of "unresolved reference $LXXX" generated by unrolling "switch" statement to table of labels to jump. Affected files ... .. //depot/projects/mips2/src/contrib/gcc/config/mips/freebsd.h#2 edit Differences ... ==== //depot/projects/mips2/src/contrib/gcc/config/mips/freebsd.h#2 (text+ko) ==== @@ -173,3 +173,7 @@ #undef WINT_TYPE #define WINT_TYPE "int" + +/* Needed for ELF (inspired by netbsd-elf). */ +#undef LOCAL_LABEL_PREFIX +#define LOCAL_LABEL_PREFIX "." From owner-p4-projects@FreeBSD.ORG Wed Jul 5 22:51:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8736716A4E0; Wed, 5 Jul 2006 22:51:46 +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 61FB416A4DD for ; Wed, 5 Jul 2006 22:51:46 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3557843D73 for ; Wed, 5 Jul 2006 22:51:34 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65MpYZU079132 for ; Wed, 5 Jul 2006 22:51:34 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65MpXN2079129 for perforce@freebsd.org; Wed, 5 Jul 2006 22:51:33 GMT (envelope-from cognet@freebsd.org) Date: Wed, 5 Jul 2006 22:51:33 GMT Message-Id: <200607052251.k65MpXN2079129@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100665 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 22:51:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=100665 Change 100665 by cognet@cognet on 2006/07/05 22:51:17 IFC Affected files ... .. //depot/projects/mips2/src/MAINTAINERS#2 integrate .. //depot/projects/mips2/src/bin/cp/cp.c#2 integrate .. //depot/projects/mips2/src/lib/libc/posix1e/mac_is_present.3#1 branch .. //depot/projects/mips2/src/lib/msun/i387/Makefile.inc#2 integrate .. //depot/projects/mips2/src/lib/msun/i387/e_scalb.S#2 delete .. //depot/projects/mips2/src/lib/msun/i387/e_scalbf.S#2 delete .. //depot/projects/mips2/src/lib/msun/src/e_scalbf.c#2 integrate .. //depot/projects/mips2/src/sbin/dhclient/dhclient.c#2 integrate .. //depot/projects/mips2/src/share/man/man4/ata.4#2 integrate .. //depot/projects/mips2/src/share/man/man7/ports.7#2 integrate .. //depot/projects/mips2/src/sys/Makefile#3 integrate .. //depot/projects/mips2/src/sys/amd64/amd64/pmap.c#3 integrate .. //depot/projects/mips2/src/sys/amd64/conf/GENERIC#2 integrate .. //depot/projects/mips2/src/sys/bsm/audit_kevents.h#2 integrate .. //depot/projects/mips2/src/sys/bsm/audit_record.h#2 integrate .. //depot/projects/mips2/src/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/mips2/src/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/mips2/src/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/mips2/src/sys/dev/atkbdc/atkbdc_isa.c#2 integrate .. //depot/projects/mips2/src/sys/dev/isp/isp.c#2 integrate .. //depot/projects/mips2/src/sys/dev/isp/isp_pci.c#2 integrate .. //depot/projects/mips2/src/sys/dev/isp/ispmbox.h#2 integrate .. //depot/projects/mips2/src/sys/dev/isp/ispreg.h#2 integrate .. //depot/projects/mips2/src/sys/dev/isp/ispvar.h#2 integrate .. //depot/projects/mips2/src/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/mips2/src/sys/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/mips2/src/sys/dev/mii/brgphy.c#3 integrate .. //depot/projects/mips2/src/sys/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/mips2/src/sys/dev/sk/if_sk.c#2 integrate .. //depot/projects/mips2/src/sys/dev/usb/if_aue.c#2 integrate .. //depot/projects/mips2/src/sys/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/mips2/src/sys/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/mips2/src/sys/i386/conf/GENERIC#2 integrate .. //depot/projects/mips2/src/sys/ia64/include/ieeefp.h#2 integrate .. //depot/projects/mips2/src/sys/kern/init_sysent.c#2 integrate .. //depot/projects/mips2/src/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/mips2/src/sys/kern/syscalls.c#2 integrate .. //depot/projects/mips2/src/sys/kern/syscalls.master#2 integrate .. //depot/projects/mips2/src/sys/kern/vfs_subr.c#2 integrate .. //depot/projects/mips2/src/sys/net/bpf.c#2 integrate .. //depot/projects/mips2/src/sys/net/if_enc.c#2 integrate .. //depot/projects/mips2/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#2 integrate .. //depot/projects/mips2/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 integrate .. //depot/projects/mips2/src/sys/netinet/libalias/libalias.3#2 integrate .. //depot/projects/mips2/src/sys/security/audit/audit.h#2 integrate .. //depot/projects/mips2/src/sys/security/audit/audit_arg.c#2 integrate .. //depot/projects/mips2/src/sys/sys/syscall.h#2 integrate .. //depot/projects/mips2/src/sys/sys/syscall.mk#2 integrate .. //depot/projects/mips2/src/sys/sys/sysproto.h#2 integrate .. //depot/projects/mips2/src/tools/kerneldoc/Doxyfile#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/Makefile#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Dependencies#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-cam#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-geom#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-kern#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-linux#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Doxyfile-vm#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/Makefile#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/README#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/common-Doxyfile#1 branch .. //depot/projects/mips2/src/tools/kerneldoc/subsys/notreviewed.dox#1 branch .. //depot/projects/mips2/src/usr.bin/calendar/calendars/calendar.freebsd#2 integrate .. //depot/projects/mips2/src/usr.sbin/mtree/misc.c#2 integrate .. //depot/projects/mips2/src/usr.sbin/mtree/mtree.8#2 integrate .. //depot/projects/mips2/src/usr.sbin/mtree/mtree.h#2 integrate .. //depot/projects/mips2/src/usr.sbin/mtree/spec.c#2 integrate .. //depot/projects/mips2/src/usr.sbin/mtree/test/test05.sh#1 branch .. //depot/projects/mips2/src/usr.sbin/mtree/verify.c#2 integrate .. //depot/projects/mips2/src/usr.sbin/sade/Makefile#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/command.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/config.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/devices.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/disks.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/dispatch.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/dmenu.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/globals.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/help/partition.hlp#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/help/slice.hlp#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/install.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/keymap.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/label.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/list.h#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/main.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/menus.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/misc.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/msg.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/rtermcap.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/sade.8#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/sade.h#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/system.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/termcap.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/usb.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/variable.c#1 branch .. //depot/projects/mips2/src/usr.sbin/sade/wizard.c#1 branch Differences ... ==== //depot/projects/mips2/src/MAINTAINERS#2 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.136 2006/07/01 10:51:54 markm Exp $ +$FreeBSD: src/MAINTAINERS,v 1.137 2006/07/04 02:01:48 brooks Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -59,8 +59,6 @@ Keep in sync with -STABLE. etc/sendmail gshapiro Pre-commit review requested. Keep in sync with -STABLE. -dhcp mbr Needs to pre-approve commits to contrib/isc-dhcp, so - changes can be made to the isc.org CVS repository. libfetch des Advance notification requested. fetch des Advance notification requested. libpam des Pre-commit review requested. @@ -140,7 +138,6 @@ bin/dd/Makefile:MAINTAINER= green@FreeBSD.org games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch -sbin/dhclient/Makefile.inc:MAINTAINER= mbr sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org ==== //depot/projects/mips2/src/bin/cp/cp.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.52 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.53 2006/07/04 20:52:36 maxim Exp $"); /* * Cp copies source files to target files. @@ -476,6 +476,7 @@ } if (errno) err(1, "fts_read"); + fts_close(ftsp); return (rval); } ==== //depot/projects/mips2/src/lib/msun/i387/Makefile.inc#2 (text+ko) ==== @@ -1,13 +1,13 @@ -# $FreeBSD: src/lib/msun/i387/Makefile.inc,v 1.8 2006/03/27 23:59:45 deischen Exp $ +# $FreeBSD: src/lib/msun/i387/Makefile.inc,v 1.9 2006/07/05 20:06:42 bde Exp $ ARCH_SRCS = e_exp.S e_fmod.S e_log.S e_log10.S \ - e_remainder.S e_scalb.S e_sqrt.S s_ceil.S s_copysign.S \ + e_remainder.S e_sqrt.S s_ceil.S s_copysign.S \ s_cos.S s_finite.S s_floor.S s_llrint.S s_logb.S s_lrint.S \ s_remquo.S s_rint.S s_scalbn.S s_significand.S s_sin.S s_tan.S \ s_trunc.S # float counterparts -ARCH_SRCS+= e_log10f.S e_logf.S e_remainderf.S e_scalbf.S \ +ARCH_SRCS+= e_log10f.S e_logf.S e_remainderf.S \ e_sqrtf.S s_ceilf.S s_copysignf.S s_floorf.S \ s_llrintf.S s_logbf.S s_lrintf.S \ s_remquof.S s_rintf.S s_scalbnf.S s_significandf.S s_truncf.S ==== //depot/projects/mips2/src/lib/msun/src/e_scalbf.c#2 (text+ko) ==== @@ -14,7 +14,7 @@ */ #ifndef lint -static char rcsid[] = "$FreeBSD: src/lib/msun/src/e_scalbf.c,v 1.10 2005/12/06 20:12:38 obrien Exp $"; +static char rcsid[] = "$FreeBSD: src/lib/msun/src/e_scalbf.c,v 1.12 2006/07/05 17:34:57 bde Exp $"; #endif #include "math.h" @@ -42,5 +42,3 @@ return scalbnf(x,(int)fn); #endif } - -__weak_reference(scalbf, ldexpf); ==== //depot/projects/mips2/src/sbin/dhclient/dhclient.c#2 (text+ko) ==== @@ -54,7 +54,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.15 2006/05/23 16:57:47 imp Exp $"); +__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.16 2006/07/03 22:05:38 jkim Exp $"); #include "dhcpd.h" #include "privsep.h" @@ -1480,7 +1480,6 @@ } } -#ifdef SEND_CLIENT_IDENTIFIER /* set unique client identifier */ char client_ident[sizeof(struct hardware)]; if (!options[DHO_DHCP_CLIENT_IDENTIFIER]) { @@ -1494,7 +1493,6 @@ options[DHO_DHCP_CLIENT_IDENTIFIER]->buf_size = hwlen+1; options[DHO_DHCP_CLIENT_IDENTIFIER]->timeout = 0xFFFFFFFF; } -#endif /* Set up the option buffer... */ ip->client->packet_length = cons_options(NULL, &ip->client->packet, 0, @@ -1606,7 +1604,6 @@ } } -#ifdef SEND_CLIENT_IDENTIFIER /* set unique client identifier */ char client_ident[sizeof(struct hardware)]; if (!options[DHO_DHCP_CLIENT_IDENTIFIER]) { @@ -1620,7 +1617,6 @@ options[DHO_DHCP_CLIENT_IDENTIFIER]->buf_size = hwlen+1; options[DHO_DHCP_CLIENT_IDENTIFIER]->timeout = 0xFFFFFFFF; } -#endif /* Set up the option buffer... */ ip->client->packet_length = cons_options(NULL, &ip->client->packet, 0, ==== //depot/projects/mips2/src/share/man/man4/ata.4#2 (text+ko) ==== @@ -25,9 +25,9 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ata.4,v 1.64 2006/03/16 22:20:39 brueffer Exp $ +.\" $FreeBSD: src/share/man/man4/ata.4,v 1.65 2006/07/05 08:26:50 brueffer Exp $ .\" -.Dd March 16, 2006 +.Dd July 5, 2006 .Dt ATA 4 .Os .Sh NAME @@ -133,7 +133,7 @@ .It Promise: PDC20246, PDC20262, PDC20263, PDC20265, PDC20267, PDC20268, PDC20269, PDC20270, PDC20271, PDC20275, PDC20276, PDC20277, PDC20318, PDC20319, PDC20371, PDC20375, PDC20376, PDC20377, PDC20378, PDC20379, PDC20571, PDC20575, PDC20579, PDC20580, PDC20617, PDC20618, PDC20619, PDC20620, PDC20621, PDC20622, PDC40518, PDC40519, PDC40718, PDC40719. .It ServerWorks: -ROSB4, CSB5, CSB6. +HT1000, ROSB4, CSB5, CSB6. .It Silicon Image: SiI0680, SiI3112, SiI3114, SiI3512. .It SiS: ==== //depot/projects/mips2/src/share/man/man7/ports.7#2 (text+ko) ==== @@ -23,9 +23,9 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man7/ports.7,v 1.52 2005/07/20 22:22:53 jcamou Exp $ +.\" $FreeBSD: src/share/man/man7/ports.7,v 1.54 2006/07/05 20:38:54 pav Exp $ .\" -.Dd February 8, 2005 +.Dd July 5, 2006 .Dt PORTS 7 .Os .Sh NAME @@ -199,6 +199,8 @@ .It Cm pretty-print-run-depends-list , pretty-print-build-depends-list Print a list of all the compile and run dependencies, and dependencies of those dependencies. +.It Cm missing +Print a list of missing dependencies to be installed for the port. .It Cm clean Remove the expanded source code. This recurses to dependencies unless @@ -399,6 +401,12 @@ Try going to these sites for all files and patches, first. .It Va MASTER_SITE_BACKUP Try going to these sites for all files and patches, last. +.It Va RANDOMIZE_MASTER_SITES +Try the download locations in a random order. +.It Va MASTER_SORT +Sort the download locations according to user supplied pattern. +Example: +.Dl .dk .sunet.se .se dk.php.net .no .de heanet.dl.sourceforge.net .It Va MASTER_SITE_INDEX Where to get .Pa INDEX @@ -434,18 +442,6 @@ If defined, only operate on a port if it requires interaction. .It Va BATCH If defined, only operate on a port if it can be installed 100% automatically. -.It Va OPTIONS -If defined, list of what -.Va WITH_* -options this port accepts. -.Em Note : -to make -.Va OPTIONS -actually work, it is necessary to include -.Pa bsd.port.pre.mk -before starting to test the -.Va WITH_* -variables. .It Va DISABLE_VULNERABILITIES If defined, disable check for security vulnerabilities using .Xr portaudit 1 Pq Pa ports/security/portaudit ==== //depot/projects/mips2/src/sys/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/mips2/src/sys/amd64/amd64/pmap.c#3 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.564 2006/07/05 07:04:31 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -2969,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3022,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3082,7 +3071,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3093,7 +3098,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* ==== //depot/projects/mips2/src/sys/amd64/conf/GENERIC#2 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/mips2/src/sys/bsm/audit_kevents.h#2 (text) ==== @@ -30,8 +30,8 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#20 $ - * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.5 2006/02/06 01:12:46 rwatson Exp $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#23 $ + * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.6 2006/07/03 14:45:43 rwatson Exp $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ @@ -384,7 +384,24 @@ #define AUE_ACL_DELETE_FD 403 /* FreeBSD. */ #define AUE_ACL_CHECK_FILE 404 /* FreeBSD. */ #define AUE_ACL_CHECK_FD 405 /* FreeBSD. */ -#define AUE_SYSARCH 406 /* FreeBSD. */ +#define AUE_ACL_GET_LINK 406 /* FreeBSD. */ +#define AUE_ACL_SET_LINK 407 /* FreeBSD. */ +#define AUE_ACL_DELETE_LINK 408 /* FreeBSD. */ +#define AUE_ACL_CHECK_LINK 409 /* FreeBSD. */ +#define AUE_SYSARCH 410 /* FreeBSD. */ +#define AUE_EXTATTRCTL 411 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FILE 412 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FILE 413 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FILE 414 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FILE 415 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FD 416 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FD 417 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FD 418 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FD 419 /* FreeBSD. */ +#define AUE_EXTATTR_GET_LINK 420 /* FreeBSD. */ +#define AUE_EXTATTR_SET_LINK 421 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_LINK 422 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_LINK 423 /* FreeBSD. */ /* * Darwin BSM uses a number of AUE_O_* definitions, which are aliased to the ==== //depot/projects/mips2/src/sys/bsm/audit_record.h#2 (text) ==== @@ -31,12 +31,14 @@ * @APPLE_BSD_LICENSE_HEADER_END@ * * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#13 $ - * $FreeBSD: src/sys/bsm/audit_record.h,v 1.2 2006/06/05 13:00:52 rwatson Exp $ + * $FreeBSD: src/sys/bsm/audit_record.h,v 1.3 2006/07/03 14:44:13 rwatson Exp $ */ #ifndef _BSM_AUDIT_RECORD_H_ #define _BSM_AUDIT_RECORD_H_ +#include /* struct timeval */ + /* * Token type identifiers. */ ==== //depot/projects/mips2/src/sys/dev/ata/ata-chipset.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.164 2006/06/28 09:59:09 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.165 2006/07/04 20:36:03 sos Exp $"); #include "opt_ata.h" #include @@ -142,6 +142,7 @@ static void ata_promise_queue_hpkt(struct ata_pci_controller *ctlr, u_int32_t hpkt); static void ata_promise_next_hpkt(struct ata_pci_controller *ctlr); static int ata_serverworks_chipinit(device_t dev); +static int ata_serverworks_allocate(device_t dev); static void ata_serverworks_setmode(device_t dev, int mode); static int ata_sii_chipinit(device_t dev); static int ata_cmd_allocate(device_t dev); @@ -1894,6 +1895,8 @@ for (i = ATA_DATA; i < ATA_MAX_RES; i++) ch->r_io[i].res = ctlr->r_res2; + + /* setup ATA registers */ ch->r_io[ATA_DATA].offset = ch_offset + 0x00; ch->r_io[ATA_FEATURE].offset = ch_offset + 0x06; ch->r_io[ATA_COUNT].offset = ch_offset + 0x08; @@ -1906,9 +1909,13 @@ ch->r_io[ATA_STATUS].offset = ch_offset + 0x1c; ch->r_io[ATA_ALTSTAT].offset = ch_offset + 0x28; ch->r_io[ATA_CONTROL].offset = ch_offset + 0x29; + + /* setup DMA registers */ ch->r_io[ATA_SSTATUS].offset = ch_offset + 0x100; ch->r_io[ATA_SERROR].offset = ch_offset + 0x104; ch->r_io[ATA_SCONTROL].offset = ch_offset + 0x108; + + /* setup SATA registers */ ch->r_io[ATA_BMCMD_PORT].offset = ch_offset + 0x70; ch->r_io[ATA_BMSTAT_PORT].offset = ch_offset + 0x72; ch->r_io[ATA_BMDTP_PORT].offset = ch_offset + 0x74; @@ -3890,11 +3897,14 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, - { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, - { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, - { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, - { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, + {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, + { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, + { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, + { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, + { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, + { ATA_HT1000, 0x00, SWKS100, 0x00, ATA_UDMA5, "HT1000" }, + { ATA_HT1000_S1, 0x00, SWKS100, 0x00, ATA_SA150, "HT1000 SATA" }, + { ATA_HT1000_S2, 0x00, SWKSMIO, 0x00, ATA_SA150, "HT1000 SATA mmio" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; @@ -3917,7 +3927,19 @@ if (ata_setup_interrupt(dev)) return ENXIO; - if (ctlr->chip->cfg1 == SWKS33) { + if (ctlr->chip->cfg1 == SWKSMIO) { + ctlr->r_type2 = SYS_RES_MEMORY; + ctlr->r_rid2 = PCIR_BAR(5); + if (!(ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2, + &ctlr->r_rid2, RF_ACTIVE))) + return ENXIO; + + ctlr->channels = 4; + ctlr->allocate = ata_serverworks_allocate; + ctlr->setmode = ata_sata_setmode; + return 0; + } + else if (ctlr->chip->cfg1 == SWKS33) { device_t *children; int nchildren, i; @@ -3943,6 +3965,46 @@ return 0; } +static int +ata_serverworks_allocate(device_t dev) +{ + struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(dev)); + struct ata_channel *ch = device_get_softc(dev); + int ch_offset; + int i; + + ch_offset = ch->unit * 0x100; + + for (i = ATA_DATA; i < ATA_MAX_RES; i++) + ch->r_io[i].res = ctlr->r_res2; + + /* setup ATA registers */ + ch->r_io[ATA_DATA].offset = ch_offset + 0x00; + ch->r_io[ATA_FEATURE].offset = ch_offset + 0x04; + ch->r_io[ATA_COUNT].offset = ch_offset + 0x08; + ch->r_io[ATA_SECTOR].offset = ch_offset + 0x0c; + ch->r_io[ATA_CYL_LSB].offset = ch_offset + 0x10; + ch->r_io[ATA_CYL_MSB].offset = ch_offset + 0x14; + ch->r_io[ATA_DRIVE].offset = ch_offset + 0x18; + ch->r_io[ATA_COMMAND].offset = ch_offset + 0x1c; + ch->r_io[ATA_CONTROL].offset = ch_offset + 0x20; + ata_default_registers(dev); + + /* setup DMA registers */ + ch->r_io[ATA_BMCMD_PORT].offset = ch_offset + 0x30; + ch->r_io[ATA_BMSTAT_PORT].offset = ch_offset + 0x32; + ch->r_io[ATA_BMDTP_PORT].offset = ch_offset + 0x34; + + /* setup SATA registers */ + ch->r_io[ATA_SSTATUS].offset = ch_offset + 0x40; + ch->r_io[ATA_SERROR].offset = ch_offset + 0x44; + ch->r_io[ATA_SCONTROL].offset = ch_offset + 0x48; + + ch->flags |= ATA_NO_SLAVE; + ata_pci_hw(dev); + return 0; +} + static void ata_serverworks_setmode(device_t dev, int mode) { @@ -4200,6 +4262,7 @@ ch->r_io[ATA_CONTROL].offset = 0x8a + (unit01 << 6) + (unit10 << 8); ch->r_io[ATA_IDX_ADDR].res = ctlr->r_res2; ata_default_registers(dev); + ch->r_io[ATA_BMCMD_PORT].res = ctlr->r_res2; ch->r_io[ATA_BMCMD_PORT].offset = 0x00 + (unit01 << 3) + (unit10 << 8); ch->r_io[ATA_BMSTAT_PORT].res = ctlr->r_res2; ==== //depot/projects/mips2/src/sys/dev/ata/ata-lowlevel.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.76 2006/01/18 09:14:55 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.77 2006/07/04 20:36:03 sos Exp $"); #include "opt_ata.h" #include @@ -719,7 +719,7 @@ DELAY(20); } if (timeout <= 0) { - device_printf(request->dev,"timeout waiting for ATAPI ready\n"); + device_printf(request->dev, "timeout waiting for ATAPI ready\n"); request->result = EIO; return -1; } ==== //depot/projects/mips2/src/sys/dev/ata/ata-pci.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.64 2006/03/13 14:01:37 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.65 2006/07/04 20:36:03 sos Exp $ */ /* structure holding chipset config info */ @@ -249,6 +249,9 @@ #define ATA_CSB5 0x02121166 #define ATA_CSB6 0x02131166 #define ATA_CSB6_1 0x02171166 +#define ATA_HT1000 0x02141166 +#define ATA_HT1000_S1 0x024b1166 +#define ATA_HT1000_S2 0x024a1166 #define ATA_SILICON_IMAGE_ID 0x1095 #define ATA_SII3114 0x31141095 @@ -362,6 +365,7 @@ #define SWKS33 0 #define SWKS66 1 #define SWKS100 2 +#define SWKSMIO 3 #define SIIMEMIO 1 #define SIIINTR 0x01 ==== //depot/projects/mips2/src/sys/dev/atkbdc/atkbdc_isa.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbdc_isa.c,v 1.35 2006/06/12 14:46:44 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbdc_isa.c,v 1.36 2006/07/03 23:40:58 jkim Exp $"); #include "opt_kbd.h" @@ -112,15 +112,21 @@ * The AT keyboard controller uses two ports (a command/data port * 0x60 and a status port 0x64), which may be given to us in * one resource (0x60 through 0x64) or as two separate resources - * (0x60 and 0x64). Furthermore, /boot/device.hints may contain - * just one port, 0x60. We shall adjust resource settings - * so that these two ports are available as two separate resources. + * (0x60 and 0x64). Some brain-damaged ACPI BIOS has reversed + * command/data port and status port. Furthermore, /boot/device.hints + * may contain just one port, 0x60. We shall adjust resource settings + * so that these two ports are available as two separate resources + * in correct order. */ device_quiet(dev); rid = 0; if (bus_get_resource(dev, SYS_RES_IOPORT, rid, &start, &count) != 0) return ENXIO; - if (count > 1) /* adjust the count */ + if (start == IO_KBD + KBD_STATUS_PORT) { + start = IO_KBD; + count++; + } + if (count > 1) /* adjust the count and/or start port */ bus_set_resource(dev, SYS_RES_IOPORT, rid, start, 1); port0 = bus_alloc_resource_any(dev, SYS_RES_IOPORT, &rid, RF_ACTIVE); if (port0 == NULL) ==== //depot/projects/mips2/src/sys/dev/isp/isp.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ */ #ifdef __FreeBSD__ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp.c,v 1.119 2006/04/21 18:46:35 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp.c,v 1.121 2006/07/03 20:56:48 mjacob Exp $"); #endif /* @@ -100,7 +100,7 @@ static const char swrej[] = "Fabric Nameserver rejected %s (Reason=0x%x Expl=0x%x) for Port ID 0x%x"; static const char finmsg[] = - "(%d.%d.%d): FIN dl%d resid %d STS 0x%x SKEY %c XS_ERR=0x%x"; + "%d.%d.%d: FIN dl%d resid %d STS 0x%x SKEY %c XS_ERR=0x%x"; static const char sc0[] = "%s CHAN %d FTHRSH %d IID %d RESETD %d RETRYC %d RETRYD %d ASD 0x%x"; static const char sc1[] = @@ -129,7 +129,7 @@ static int isp_getpdb(ispsoftc_t *, int, isp_pdb_t *); static uint64_t isp_get_portname(ispsoftc_t *, int, int); static int isp_fclink_test(ispsoftc_t *, int); -static char *isp2100_fw_statename(int); +static const char *isp2100_fw_statename(int); static int isp_pdb_sync(ispsoftc_t *); static int isp_scan_loop(ispsoftc_t *); static int isp_fabric_mbox_cmd(ispsoftc_t *, mbreg_t *); @@ -639,18 +639,20 @@ dodnld = 0; } - if (IS_23XX(isp)) + if (IS_23XX(isp)) { code_org = ISP_CODE_ORG_2300; - else + } else { code_org = ISP_CODE_ORG; + } + if (dodnld) { + uint16_t *ptr = isp->isp_mdvec->dv_ispfw; - if (dodnld) { - isp->isp_mbxworkp = (void *) &isp->isp_mdvec->dv_ispfw[1]; - isp->isp_mbxwrk0 = isp->isp_mdvec->dv_ispfw[3] - 1; + isp->isp_mbxworkp = &ptr[1]; + isp->isp_mbxwrk0 = ptr[3] - 1; isp->isp_mbxwrk1 = code_org + 1; mbs.param[0] = MBOX_WRITE_RAM_WORD; mbs.param[1] = code_org; - mbs.param[2] = isp->isp_mdvec->dv_ispfw[0]; + mbs.param[2] = ptr[0]; isp_mboxcmd(isp, &mbs, MBLOGNONE); if (mbs.param[0] != MBOX_COMMAND_COMPLETE) { isp_prt(isp, ISP_LOGERR, @@ -659,6 +661,7 @@ dodnld = 0; goto again; } + /* * Verify that it downloaded correctly. */ @@ -669,6 +672,49 @@ isp_prt(isp, ISP_LOGERR, "Ram Checksum Failure"); return; } + + /* + * If we're a 2322 or 2422, the firmware actually comes + * in three chunks. We loaded the first at the code_org + * address. The other two chunks, which follow right + * after each other in memory here, get loaded at addresses + * specfied at offset 0x9..0xB. + */ + if (IS_2322(isp)) { + + ptr = &ptr[ptr[3]]; + isp->isp_mbxworkp = &ptr[1]; + isp->isp_mbxwrk0 = ptr[3] - 1; + isp->isp_mbxwrk1 = ptr[5] + 1; + isp->isp_mbxwrk8 = ptr[4]; + mbs.param[0] = MBOX_WRITE_RAM_WORD_EXTENDED; + mbs.param[8] = ptr[4]; + mbs.param[1] = ptr[5]; + mbs.param[2] = ptr[0]; + isp_mboxcmd(isp, &mbs, MBLOGNONE); + if (mbs.param[0] != MBOX_COMMAND_COMPLETE) { + isp_prt(isp, ISP_LOGERR, + "Receive Sequencer F/W Load Failed"); + return; + } + + ptr = &ptr[ptr[3]]; + isp->isp_mbxworkp = &ptr[1]; + isp->isp_mbxwrk0 = ptr[3] - 1; + isp->isp_mbxwrk1 = ptr[5] + 1; + isp->isp_mbxwrk8 = ptr[4]; + mbs.param[0] = MBOX_WRITE_RAM_WORD_EXTENDED; + mbs.param[8] = ptr[4]; + mbs.param[1] = ptr[5]; + mbs.param[2] = ptr[0]; + isp_mboxcmd(isp, &mbs, MBLOGNONE); + if (mbs.param[0] != MBOX_COMMAND_COMPLETE) { + isp_prt(isp, ISP_LOGERR, + "Transmit Sequencer F/W Load Failed"); + return; + } + } + isp->isp_loaded_fw = 1; } else { isp->isp_loaded_fw = 0; @@ -687,9 +733,9 @@ mbs.param[1] = code_org; if (IS_2322(isp) || IS_24XX(isp)) { if (isp->isp_loaded_fw) { + mbs.param[2] = 0; + } else { mbs.param[2] = 1; - } else { - mbs.param[2] = 0; } mbs.obits |= 2; } @@ -1032,11 +1078,9 @@ if (IS_ULTRA2(isp) || IS_1240(isp)) mbs.param[1] |= FW_FEATURE_RIO_16BIT; #else -#ifndef ISP_NO_FASTPOST if (IS_ULTRA2(isp) || IS_1240(isp)) mbs.param[1] |= FW_FEATURE_FAST_POST; #endif -#endif if (mbs.param[1] != 0) { uint16_t sfeat = mbs.param[1]; isp_mboxcmd(isp, &mbs, MBLOGALL); @@ -1273,7 +1317,7 @@ icbp->icb_retry_delay = fcp->isp_retry_delay; icbp->icb_retry_count = fcp->isp_retry_count; icbp->icb_hardaddr = loopid; - if (icbp->icb_hardaddr >= 125) { + if (icbp->icb_hardaddr > 125) { /* * We end up with these Loop IDs for F-Port topologies */ @@ -1284,6 +1328,15 @@ } icbp->icb_hardaddr = 0; } + + /* + * Our life seems so much better with 2200s and later with + * the latest f/w if we set Hard Address. + */ + if (ISP_FW_NEWER_THAN(isp, 2, 2, 5)) { + icbp->icb_fwoptions |= ICBOPT_HARD_ADDRESS; + } + /* * Right now we just set extended options to prefer point-to-point * over loop based upon some soft config options. @@ -1309,38 +1362,26 @@ icbp->icb_xfwoptions |= ICBXOPT_LOOP_2_PTP; break; } - if (IS_23XX(isp)) { + if (IS_2200(isp)) { + if (ISP_FW_NEWER_THAN(isp, 1, 17, 0)) { + icbp->icb_xfwoptions |= ICBXOPT_RIO_16BIT; + icbp->icb_racctimer = 4; + icbp->icb_idelaytimer = 8; + } + icbp->icb_fwoptions |= ICBOPT_FAST_POST; + } else { /* * QLogic recommends that FAST Posting be turned * off for 23XX cards and instead allow the HBA * to write response queue entries and interrupt * after a delay (ZIO). - * - * If we set ZIO, it will disable fast posting, - * so we don't need to clear it in fwoptions. - * - * Depending on the role we're selecting, we - * chose fast posting or not as it still is - * a win for target mode. */ -#ifndef ISP_NO_ZIO - if (isp->isp_role == ISP_ROLE_TARGET) { - icbp->icb_fwoptions |= ICBOPT_FAST_POST; - } else { + icbp->icb_fwoptions &= ~ICBOPT_FAST_POST; + if ((fcp->isp_xfwoptions & ICBXOPT_TIMER_MASK) == + ICBXOPT_ZIO) { icbp->icb_xfwoptions |= ICBXOPT_ZIO; + icbp->icb_idelaytimer = 10; } -#else - icbp->icb_fwoptions |= ICBOPT_FAST_POST; -#endif -#if 0 - /* - * Values, in 100us increments. The default - * is 2 (200us) if a value 0 (default) is - * selected. - */ - icbp->icb_idelaytimer = 2; -#endif - >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 5 22:59:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 57CBA16A50C; Wed, 5 Jul 2006 22:59:45 +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 2AB9516A506 for ; Wed, 5 Jul 2006 22:59:45 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C8B2943D45 for ; Wed, 5 Jul 2006 22:59:44 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65Mxi8D079685 for ; Wed, 5 Jul 2006 22:59:44 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65Mxigs079682 for perforce@freebsd.org; Wed, 5 Jul 2006 22:59:44 GMT (envelope-from imp@freebsd.org) Date: Wed, 5 Jul 2006 22:59:44 GMT Message-Id: <200607052259.k65Mxigs079682@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100666 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 22:59:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=100666 Change 100666 by imp@imp_lighthouse on 2006/07/05 22:59:17 Get a silly test working. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_twi.c#17 edit .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/Makefile#12 edit .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/ee.c#1 add .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/ee.h#1 add .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/loader_prompt.c#15 edit .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/main.c#13 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_twi.c#17 (text+ko) ==== @@ -295,7 +295,7 @@ walker = buf; sc = device_get_softc(dev); AT91_TWI_LOCK(sc); - WR4(sc, TWI_MMR, TWI_MMR_MWRITE | RD4(sc, TWI_MMR)); + WR4(sc, TWI_MMR, ~TWI_MMR_MREAD & RD4(sc, TWI_MMR)); WR4(sc, TWI_CR, TWI_CR_START); sc->sc_started = 1; WR4(sc, TWI_IER, TWI_SR_TXRDY); @@ -325,7 +325,7 @@ walker = buf; sc = device_get_softc(dev); AT91_TWI_LOCK(sc); - WR4(sc, TWI_MMR, ~TWI_MMR_MWRITE & RD4(sc, TWI_MMR)); + WR4(sc, TWI_MMR, TWI_MMR_MREAD | RD4(sc, TWI_MMR)); WR4(sc, TWI_CR, TWI_CR_START); sc->sc_started = 1; WR4(sc, TWI_IER, TWI_SR_RXRDY); @@ -349,7 +349,6 @@ *walker = RD4(sc, TWI_RHR) & 0xff; if (read) *read = walker - buf; - sc->sc_started = 0; errout:; WR4(sc, TWI_IDR, TWI_SR_RXRDY); AT91_TWI_UNLOCK(sc); ==== //depot/projects/arm/src/sys/boot/arm/at91/bootspi/Makefile#12 (text+ko) ==== @@ -2,7 +2,7 @@ P=bootspi FILES=${P} -SRCS=arm_init.S main.c loader_prompt.c env_vars.c +SRCS=arm_init.S main.c loader_prompt.c env_vars.c ee.c #SRCS+=ints.c mci_device.c sd-card.c stormy16-lib2.c NO_MAN= LDFLAGS=-e 0 -T ${.CURDIR}/../linker.cfg ==== //depot/projects/arm/src/sys/boot/arm/at91/bootspi/loader_prompt.c#15 (text+ko) ==== @@ -30,6 +30,7 @@ #include "lib.h" #include "spi_flash.h" #include "fpga.h" +#include "ee.h" /******************************* GLOBALS *************************************/ @@ -172,7 +173,7 @@ return (pCount); } - +#if 0 static void UpdateEEProm(int eeaddr) { @@ -184,6 +185,7 @@ printf("\r\nDownloaded %u bytes.\r\n", len); WriteEEPROM(eeaddr, 0, addr, len); } +#endif static void UpdateFlash(int offset) @@ -324,9 +326,14 @@ break; case COMMAND_REPLACE_ID_EEPROM: - printf("Updating ID EEPROM image\r\n"); - UpdateEEProm(2); + { + char buf[25]; + printf("Testing Config EEPROM\r\n"); + EEWrite(0, "This is a test", 15); + EERead(0, buf, 15); + printf("Found '%s'\r\n", buf); break; + } default: break; } ==== //depot/projects/arm/src/sys/boot/arm/at91/bootspi/main.c#13 (text+ko) ==== @@ -41,11 +41,13 @@ #include "emac.h" #include "lib.h" #include "spi_flash.h" +#include "ee.h" int main(void) { printf("\r\nBoot\r\n"); + EEInit(); SPI_InitFlash(); #ifdef TSC_FPGA fpga_load(); From owner-p4-projects@FreeBSD.ORG Wed Jul 5 23:02:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ABADF16A4DE; Wed, 5 Jul 2006 23:02:49 +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 8187A16A4DA for ; Wed, 5 Jul 2006 23:02:49 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4C5F343D46 for ; Wed, 5 Jul 2006 23:02:49 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65N2n4O079835 for ; Wed, 5 Jul 2006 23:02:49 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65N2ncP079832 for perforce@freebsd.org; Wed, 5 Jul 2006 23:02:49 GMT (envelope-from imp@freebsd.org) Date: Wed, 5 Jul 2006 23:02:49 GMT Message-Id: <200607052302.k65N2ncP079832@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100667 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 23:02:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=100667 Change 100667 by imp@imp_lighthouse on 2006/07/05 23:02:37 remove debug Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/ee.c#2 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/bootspi/ee.c#2 (text+ko) ==== @@ -100,7 +100,6 @@ return; } - printf("READ BYTE AT 0x%x\r\n", ee_off); status = twiPtr->TWI_SR; status = twiPtr->TWI_RHR; twiPtr->TWI_MMR = (iicaddr(ee_off) << 16) | AT91C_TWI_IADRSZ_1_BYTE | @@ -138,7 +137,6 @@ char test_data; while (size--) { - printf("WRITE BYTE AT 0x%x\r\n", ee_off); // Set the TWI Master Mode Register twiPtr->TWI_MMR = (iicaddr(ee_off) << 16) | AT91C_TWI_IADRSZ_1_BYTE; From owner-p4-projects@FreeBSD.ORG Wed Jul 5 23:25:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C33016A4DF; Wed, 5 Jul 2006 23:25:18 +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 4E50A16A4DA for ; Wed, 5 Jul 2006 23:25:18 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EE5F943D46 for ; Wed, 5 Jul 2006 23:25:17 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65NPHWe082456 for ; Wed, 5 Jul 2006 23:25:17 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65NPHbf082453 for perforce@freebsd.org; Wed, 5 Jul 2006 23:25:17 GMT (envelope-from cognet@freebsd.org) Date: Wed, 5 Jul 2006 23:25:17 GMT Message-Id: <200607052325.k65NPHbf082453@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100668 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 23:25:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=100668 Change 100668 by cognet@cognet on 2006/07/05 23:24:19 Override the i386ish specialreg.h with NetBSD's cpuregs.h Affected files ... .. //depot/projects/mips2/src/sys/mips/include/specialreg.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/specialreg.h#2 (text+ko) ==== @@ -1,6 +1,11 @@ -/*- - * Copyright (c) 1991 The Regents of the University of California. - * All rights reserved. +/* $NetBSD: cpuregs.h,v 1.69 2005/12/20 21:06:43 tron Exp $ */ + +/* + * Copyright (c) 1992, 1993 + * The Regents of the University of California. All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Ralph Campbell and Rick Macklem. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -10,7 +15,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -26,361 +31,781 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * from: @(#)specialreg.h 7.1 (Berkeley) 5/9/91 - * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.33 2006/05/01 22:07:00 jhb Exp $ + * @(#)machConst.h 8.1 (Berkeley) 6/10/93 + * + * machConst.h -- + * + * Machine dependent constants. + * + * Copyright (C) 1989 Digital Equipment Corporation. + * Permission to use, copy, modify, and distribute this software and + * its documentation for any purpose and without fee is hereby granted, + * provided that the above copyright notice appears in all copies. + * Digital Equipment Corporation makes no representations about the + * suitability of this software for any purpose. It is provided "as is" + * without express or implied warranty. + * + * from: Header: /sprite/src/kernel/mach/ds3100.md/RCS/machConst.h, + * v 9.2 89/10/21 15:55:22 jhh Exp SPRITE (DECWRL) + * from: Header: /sprite/src/kernel/mach/ds3100.md/RCS/machAddrs.h, + * v 1.2 89/08/15 18:28:21 rab Exp SPRITE (DECWRL) + * from: Header: /sprite/src/kernel/vm/ds3100.md/RCS/vmPmaxConst.h, + * v 9.1 89/09/18 17:33:00 shirriff Exp SPRITE (DECWRL) + */ + +#ifndef _MACHINE_CPUREGS_H_ +#define _MACHINE_CPUREGS_H_ + +#include /* For __CONCAT() */ + +/* + * Address space. + * 32-bit mips CPUS partition their 32-bit address space into four segments: + * + * kuseg 0x00000000 - 0x7fffffff User virtual mem, mapped + * kseg0 0x80000000 - 0x9fffffff Physical memory, cached, unmapped + * kseg1 0xa0000000 - 0xbfffffff Physical memory, uncached, unmapped + * kseg2 0xc0000000 - 0xffffffff kernel-virtual, mapped + * + * mips1 physical memory is limited to 512Mbytes, which is + * doubly mapped in kseg0 (cached) and kseg1 (uncached.) + * Caching of mapped addresses is controlled by bits in the TLB entry. */ -#ifndef _MACHINE_SPECIALREG_H_ -#define _MACHINE_SPECIALREG_H_ +#define MIPS_KUSEG_START 0x0 +#define MIPS_KSEG0_START 0x80000000 +#define MIPS_KSEG1_START 0xa0000000 +#define MIPS_KSEG2_START 0xc0000000 +#define MIPS_MAX_MEM_ADDR 0xbe000000 +#define MIPS_RESERVED_ADDR 0xbfc80000 + +#define MIPS_PHYS_MASK 0x1fffffff + +#define MIPS_KSEG0_TO_PHYS(x) ((unsigned)(x) & MIPS_PHYS_MASK) +#define MIPS_PHYS_TO_KSEG0(x) ((unsigned)(x) | MIPS_KSEG0_START) +#define MIPS_KSEG1_TO_PHYS(x) ((unsigned)(x) & MIPS_PHYS_MASK) +#define MIPS_PHYS_TO_KSEG1(x) ((unsigned)(x) | MIPS_KSEG1_START) + +/* Map virtual address to index in mips3 r4k virtually-indexed cache */ +#define MIPS3_VA_TO_CINDEX(x) \ + ((unsigned)(x) & 0xffffff | MIPS_KSEG0_START) + +#define MIPS_PHYS_TO_XKPHYS(cca,x) \ + ((0x2ULL << 62) | ((unsigned long long)(cca) << 59) | (x)) +#define MIPS_XKPHYS_TO_PHYS(x) ((x) & 0x0effffffffffffffULL) + +/* CPU dependent mtc0 hazard hook */ +#define COP0_SYNC /* nothing */ +#define COP0_HAZARD_FPUENABLE nop; nop; nop; nop; /* - * Bits in 386 special registers: + * The bits in the cause register. + * + * Bits common to r3000 and r4000: + * + * MIPS_CR_BR_DELAY Exception happened in branch delay slot. + * MIPS_CR_COP_ERR Coprocessor error. + * MIPS_CR_IP Interrupt pending bits defined below. + * (same meaning as in CAUSE register). + * MIPS_CR_EXC_CODE The exception type (see exception codes below). + * + * Differences: + * r3k has 4 bits of execption type, r4k has 5 bits. */ -#define CR0_PE 0x00000001 /* Protected mode Enable */ -#define CR0_MP 0x00000002 /* "Math" (fpu) Present */ -#define CR0_EM 0x00000004 /* EMulate FPU instructions. (trap ESC only) */ -#define CR0_TS 0x00000008 /* Task Switched (if MP, trap ESC and WAIT) */ -#define CR0_PG 0x80000000 /* PaGing enable */ +#define MIPS_CR_BR_DELAY 0x80000000 +#define MIPS_CR_COP_ERR 0x30000000 +#define MIPS1_CR_EXC_CODE 0x0000003C /* four bits */ +#define MIPS3_CR_EXC_CODE 0x0000007C /* five bits */ +#define MIPS_CR_IP 0x0000FF00 +#define MIPS_CR_EXC_CODE_SHIFT 2 /* - * Bits in 486 special registers: + * The bits in the status register. All bits are active when set to 1. + * + * R3000 status register fields: + * MIPS_SR_COP_USABILITY Control the usability of the four coprocessors. + * MIPS_SR_TS TLB shutdown. + * + * MIPS_SR_INT_IE Master (current) interrupt enable bit. + * + * Differences: + * r3k has cache control is via frobbing SR register bits, whereas the + * r4k cache control is via explicit instructions. + * r3k has a 3-entry stack of kernel/user bits, whereas the + * r4k has kernel/supervisor/user. */ -#define CR0_NE 0x00000020 /* Numeric Error enable (EX16 vs IRQ13) */ -#define CR0_WP 0x00010000 /* Write Protect (honor page protect in - all modes) */ -#define CR0_AM 0x00040000 /* Alignment Mask (set to enable AC flag) */ -#define CR0_NW 0x20000000 /* Not Write-through */ -#define CR0_CD 0x40000000 /* Cache Disable */ +#define MIPS_SR_COP_USABILITY 0xf0000000 +#define MIPS_SR_COP_0_BIT 0x10000000 +#define MIPS_SR_COP_1_BIT 0x20000000 + + /* r4k and r3k differences, see below */ + +#define MIPS_SR_MX 0x01000000 /* MIPS64 */ +#define MIPS_SR_PX 0x00800000 /* MIPS64 */ +#define MIPS_SR_BEV 0x00400000 /* Use boot exception vector */ +#define MIPS_SR_TS 0x00200000 + + /* r4k and r3k differences, see below */ + +#define MIPS_SR_INT_IE 0x00000001 +/*#define MIPS_SR_MBZ 0x0f8000c0*/ /* Never used, true for r3k */ +/*#define MIPS_SR_INT_MASK 0x0000ff00*/ + /* - * Bits in PPro special registers + * The R2000/R3000-specific status register bit definitions. + * all bits are active when set to 1. + * + * MIPS_SR_PARITY_ERR Parity error. + * MIPS_SR_CACHE_MISS Most recent D-cache load resulted in a miss. + * MIPS_SR_PARITY_ZERO Zero replaces outgoing parity bits. + * MIPS_SR_SWAP_CACHES Swap I-cache and D-cache. + * MIPS_SR_ISOL_CACHES Isolate D-cache from main memory. + * Interrupt enable bits defined below. + * MIPS_SR_KU_OLD Old kernel/user mode bit. 1 => user mode. + * MIPS_SR_INT_ENA_OLD Old interrupt enable bit. + * MIPS_SR_KU_PREV Previous kernel/user mode bit. 1 => user mode. + * MIPS_SR_INT_ENA_PREV Previous interrupt enable bit. + * MIPS_SR_KU_CUR Current kernel/user mode bit. 1 => user mode. */ -#define CR4_VME 0x00000001 /* Virtual 8086 mode extensions */ -#define CR4_PVI 0x00000002 /* Protected-mode virtual interrupts */ -#define CR4_TSD 0x00000004 /* Time stamp disable */ -#define CR4_DE 0x00000008 /* Debugging extensions */ -#define CR4_PSE 0x00000010 /* Page size extensions */ -#define CR4_PAE 0x00000020 /* Physical address extension */ -#define CR4_MCE 0x00000040 /* Machine check enable */ -#define CR4_PGE 0x00000080 /* Page global enable */ -#define CR4_PCE 0x00000100 /* Performance monitoring counter enable */ -#define CR4_FXSR 0x00000200 /* Fast FPU save/restore used by OS */ -#define CR4_XMM 0x00000400 /* enable SIMD/MMX2 to use except 16 */ + +#define MIPS1_PARITY_ERR 0x00100000 +#define MIPS1_CACHE_MISS 0x00080000 +#define MIPS1_PARITY_ZERO 0x00040000 +#define MIPS1_SWAP_CACHES 0x00020000 +#define MIPS1_ISOL_CACHES 0x00010000 + +#define MIPS1_SR_KU_OLD 0x00000020 /* 2nd stacked KU/IE*/ +#define MIPS1_SR_INT_ENA_OLD 0x00000010 /* 2nd stacked KU/IE*/ +#define MIPS1_SR_KU_PREV 0x00000008 /* 1st stacked KU/IE*/ +#define MIPS1_SR_INT_ENA_PREV 0x00000004 /* 1st stacked KU/IE*/ +#define MIPS1_SR_KU_CUR 0x00000002 /* current KU */ + +/* backwards compatibility */ +#define MIPS_SR_PARITY_ERR MIPS1_PARITY_ERR +#define MIPS_SR_CACHE_MISS MIPS1_CACHE_MISS +#define MIPS_SR_PARITY_ZERO MIPS1_PARITY_ZERO +#define MIPS_SR_SWAP_CACHES MIPS1_SWAP_CACHES +#define MIPS_SR_ISOL_CACHES MIPS1_ISOL_CACHES + +#define MIPS_SR_KU_OLD MIPS1_SR_KU_OLD +#define MIPS_SR_INT_ENA_OLD MIPS1_SR_INT_ENA_OLD +#define MIPS_SR_KU_PREV MIPS1_SR_KU_PREV +#define MIPS_SR_KU_CUR MIPS1_SR_KU_CUR +#define MIPS_SR_INT_ENA_PREV MIPS1_SR_INT_ENA_PREV /* - * Bits in AMD64 special registers. EFER is 64 bits wide. + * R4000 status register bit definitons, + * where different from r2000/r3000. */ -#define EFER_SCE 0x000000001 /* System Call Extensions (R/W) */ -#define EFER_LME 0x000000100 /* Long mode enable (R/W) */ -#define EFER_LMA 0x000000400 /* Long mode active (R) */ -#define EFER_NXE 0x000000800 /* PTE No-Execute bit enable (R/W) */ +#define MIPS3_SR_XX 0x80000000 +#define MIPS3_SR_RP 0x08000000 +#define MIPS3_SR_FR 0x04000000 +#define MIPS3_SR_RE 0x02000000 + +#define MIPS3_SR_DIAG_DL 0x01000000 /* QED 52xx */ +#define MIPS3_SR_DIAG_IL 0x00800000 /* QED 52xx */ +#define MIPS3_SR_SR 0x00100000 +#define MIPS3_SR_EIE 0x00100000 /* TX79/R5900 */ +#define MIPS3_SR_NMI 0x00080000 /* MIPS32/64 */ +#define MIPS3_SR_DIAG_CH 0x00040000 +#define MIPS3_SR_DIAG_CE 0x00020000 +#define MIPS3_SR_DIAG_PE 0x00010000 +#define MIPS3_SR_KX 0x00000080 +#define MIPS3_SR_SX 0x00000040 +#define MIPS3_SR_UX 0x00000020 +#define MIPS3_SR_KSU_MASK 0x00000018 +#define MIPS3_SR_KSU_USER 0x00000010 +#define MIPS3_SR_KSU_SUPER 0x00000008 +#define MIPS3_SR_KSU_KERNEL 0x00000000 +#define MIPS3_SR_ERL 0x00000004 +#define MIPS3_SR_EXL 0x00000002 + +#ifdef MIPS3_5900 +#undef MIPS_SR_INT_IE +#define MIPS_SR_INT_IE 0x00010001 /* XXX */ +#endif + +#define MIPS_SR_SOFT_RESET MIPS3_SR_SOFT_RESET +#define MIPS_SR_DIAG_CH MIPS3_SR_DIAG_CH +#define MIPS_SR_DIAG_CE MIPS3_SR_DIAG_CE +#define MIPS_SR_DIAG_PE MIPS3_SR_DIAG_PE +#define MIPS_SR_KX MIPS3_SR_KX +#define MIPS_SR_SX MIPS3_SR_SX +#define MIPS_SR_UX MIPS3_SR_UX + +#define MIPS_SR_KSU_MASK MIPS3_SR_KSU_MASK +#define MIPS_SR_KSU_USER MIPS3_SR_KSU_USER +#define MIPS_SR_KSU_SUPER MIPS3_SR_KSU_SUPER +#define MIPS_SR_KSU_KERNEL MIPS3_SR_KSU_KERNEL +#define MIPS_SR_ERL MIPS3_SR_ERL +#define MIPS_SR_EXL MIPS3_SR_EXL + /* - * CPUID instruction features register + * The interrupt masks. + * If a bit in the mask is 1 then the interrupt is enabled (or pending). */ -#define CPUID_FPU 0x00000001 -#define CPUID_VME 0x00000002 -#define CPUID_DE 0x00000004 -#define CPUID_PSE 0x00000008 -#define CPUID_TSC 0x00000010 -#define CPUID_MSR 0x00000020 -#define CPUID_PAE 0x00000040 -#define CPUID_MCE 0x00000080 -#define CPUID_CX8 0x00000100 -#define CPUID_APIC 0x00000200 -#define CPUID_B10 0x00000400 -#define CPUID_SEP 0x00000800 -#define CPUID_MTRR 0x00001000 -#define CPUID_PGE 0x00002000 -#define CPUID_MCA 0x00004000 -#define CPUID_CMOV 0x00008000 -#define CPUID_PAT 0x00010000 -#define CPUID_PSE36 0x00020000 -#define CPUID_PSN 0x00040000 -#define CPUID_CLFSH 0x00080000 -#define CPUID_B20 0x00100000 -#define CPUID_DS 0x00200000 -#define CPUID_ACPI 0x00400000 -#define CPUID_MMX 0x00800000 -#define CPUID_FXSR 0x01000000 -#define CPUID_SSE 0x02000000 -#define CPUID_XMM 0x02000000 -#define CPUID_SSE2 0x04000000 -#define CPUID_SS 0x08000000 -#define CPUID_HTT 0x10000000 -#define CPUID_TM 0x20000000 -#define CPUID_B30 0x40000000 -#define CPUID_PBE 0x80000000 +#define MIPS_INT_MASK 0xff00 +#define MIPS_INT_MASK_5 0x8000 +#define MIPS_INT_MASK_4 0x4000 +#define MIPS_INT_MASK_3 0x2000 +#define MIPS_INT_MASK_2 0x1000 +#define MIPS_INT_MASK_1 0x0800 +#define MIPS_INT_MASK_0 0x0400 +#define MIPS_HARD_INT_MASK 0xfc00 +#define MIPS_SOFT_INT_MASK_1 0x0200 +#define MIPS_SOFT_INT_MASK_0 0x0100 -#define CPUID2_SSE3 0x00000001 -#define CPUID2_MON 0x00000008 -#define CPUID2_DS_CPL 0x00000010 -#define CPUID2_EST 0x00000080 -#define CPUID2_TM2 0x00000100 -#define CPUID2_CNTXID 0x00000400 -#define CPUID2_CX16 0x00002000 +/* + * mips3 CPUs have on-chip timer at INT_MASK_5. Each platform can + * choose to enable this interrupt. + */ +#if defined(MIPS3_ENABLE_CLOCK_INTR) +#define MIPS3_INT_MASK MIPS_INT_MASK +#define MIPS3_HARD_INT_MASK MIPS_HARD_INT_MASK +#else +#define MIPS3_INT_MASK (MIPS_INT_MASK & ~MIPS_INT_MASK_5) +#define MIPS3_HARD_INT_MASK (MIPS_HARD_INT_MASK & ~MIPS_INT_MASK_5) +#endif /* - * Important bits in the AMD extended cpuid flags + * The bits in the context register. */ -#define AMDID_SYSCALL 0x00000800 -#define AMDID_MP 0x00080000 -#define AMDID_NX 0x00100000 -#define AMDID_EXT_MMX 0x00400000 -#define AMDID_FFXSR 0x01000000 -#define AMDID_RDTSCP 0x08000000 -#define AMDID_LM 0x20000000 -#define AMDID_EXT_3DNOW 0x40000000 -#define AMDID_3DNOW 0x80000000 +#define MIPS1_CNTXT_PTE_BASE 0xFFE00000 +#define MIPS1_CNTXT_BAD_VPN 0x001FFFFC -#define AMDID2_LAHF 0x00000001 -#define AMDID2_CMP 0x00000002 -#define AMDID2_CR8 0x00000010 +#define MIPS3_CNTXT_PTE_BASE 0xFF800000 +#define MIPS3_CNTXT_BAD_VPN2 0x007FFFF0 /* - * CPUID instruction 1 ebx info + * The bits in the MIPS3 config register. + * + * bit 0..5: R/W, Bit 6..31: R/O */ -#define CPUID_BRAND_INDEX 0x000000ff -#define CPUID_CLFUSH_SIZE 0x0000ff00 -#define CPUID_HTT_CORES 0x00ff0000 -#define CPUID_LOCAL_APIC_ID 0xff000000 + +/* kseg0 coherency algorithm - see MIPS3_TLB_ATTR values */ +#define MIPS3_CONFIG_K0_MASK 0x00000007 /* - * AMD extended function 8000_0008h ecx info + * R/W Update on Store Conditional + * 0: Store Conditional uses coherency algorithm specified by TLB + * 1: Store Conditional uses cacheable coherent update on write */ -#define AMDID_CMP_CORES 0x000000ff +#define MIPS3_CONFIG_CU 0x00000008 + +#define MIPS3_CONFIG_DB 0x00000010 /* Primary D-cache line size */ +#define MIPS3_CONFIG_IB 0x00000020 /* Primary I-cache line size */ +#define MIPS3_CONFIG_CACHE_L1_LSIZE(config, bit) \ + (((config) & (bit)) ? 32 : 16) + +#define MIPS3_CONFIG_DC_MASK 0x000001c0 /* Primary D-cache size */ +#define MIPS3_CONFIG_DC_SHIFT 6 +#define MIPS3_CONFIG_IC_MASK 0x00000e00 /* Primary I-cache size */ +#define MIPS3_CONFIG_IC_SHIFT 9 +#define MIPS3_CONFIG_C_DEFBASE 0x1000 /* default base 2^12 */ + +/* Cache size mode indication: available only on Vr41xx CPUs */ +#define MIPS3_CONFIG_CS 0x00001000 +#define MIPS3_CONFIG_C_4100BASE 0x0400 /* base is 2^10 if CS=1 */ +#define MIPS3_CONFIG_CACHE_SIZE(config, mask, base, shift) \ + ((base) << (((config) & (mask)) >> (shift))) + +/* External cache enable: Controls L2 for R5000/Rm527x and L3 for Rm7000 */ +#define MIPS3_CONFIG_SE 0x00001000 + +/* Block ordering: 0: sequential, 1: sub-block */ +#define MIPS3_CONFIG_EB 0x00002000 + +/* ECC mode - 0: ECC mode, 1: parity mode */ +#define MIPS3_CONFIG_EM 0x00004000 + +/* BigEndianMem - 0: kernel and memory are little endian, 1: big endian */ +#define MIPS3_CONFIG_BE 0x00008000 + +/* Dirty Shared coherency state - 0: enabled, 1: disabled */ +#define MIPS3_CONFIG_SM 0x00010000 + +/* Secondary Cache - 0: present, 1: not present */ +#define MIPS3_CONFIG_SC 0x00020000 + +/* System Port width - 0: 64-bit, 1: 32-bit (QED RM523x), 2,3: reserved */ +#define MIPS3_CONFIG_EW_MASK 0x000c0000 +#define MIPS3_CONFIG_EW_SHIFT 18 + +/* Secondary Cache port width - 0: 128-bit data path to S-cache, 1: reserved */ +#define MIPS3_CONFIG_SW 0x00100000 + +/* Split Secondary Cache Mode - 0: I/D mixed, 1: I/D separated by SCAddr(17) */ +#define MIPS3_CONFIG_SS 0x00200000 + +/* Secondary Cache line size */ +#define MIPS3_CONFIG_SB_MASK 0x00c00000 +#define MIPS3_CONFIG_SB_SHIFT 22 +#define MIPS3_CONFIG_CACHE_L2_LSIZE(config) \ + (0x10 << (((config) & MIPS3_CONFIG_SB_MASK) >> MIPS3_CONFIG_SB_SHIFT)) + +/* Write back data rate */ +#define MIPS3_CONFIG_EP_MASK 0x0f000000 +#define MIPS3_CONFIG_EP_SHIFT 24 + +/* System clock ratio - this value is CPU dependent */ +#define MIPS3_CONFIG_EC_MASK 0x70000000 +#define MIPS3_CONFIG_EC_SHIFT 28 + +/* Master-Checker Mode - 1: enabled */ +#define MIPS3_CONFIG_CM 0x80000000 /* - * Model-specific registers for the i386 family + * The bits in the MIPS4 config register. */ -#define MSR_P5_MC_ADDR 0x000 -#define MSR_P5_MC_TYPE 0x001 -#define MSR_TSC 0x010 -#define MSR_P5_CESR 0x011 -#define MSR_P5_CTR0 0x012 -#define MSR_P5_CTR1 0x013 -#define MSR_IA32_PLATFORM_ID 0x017 -#define MSR_APICBASE 0x01b -#define MSR_EBL_CR_POWERON 0x02a -#define MSR_TEST_CTL 0x033 -#define MSR_BIOS_UPDT_TRIG 0x079 -#define MSR_BBL_CR_D0 0x088 -#define MSR_BBL_CR_D1 0x089 -#define MSR_BBL_CR_D2 0x08a -#define MSR_BIOS_SIGN 0x08b -#define MSR_PERFCTR0 0x0c1 -#define MSR_PERFCTR1 0x0c2 -#define MSR_MTRRcap 0x0fe -#define MSR_BBL_CR_ADDR 0x116 -#define MSR_BBL_CR_DECC 0x118 -#define MSR_BBL_CR_CTL 0x119 -#define MSR_BBL_CR_TRIG 0x11a -#define MSR_BBL_CR_BUSY 0x11b -#define MSR_BBL_CR_CTL3 0x11e -#define MSR_SYSENTER_CS_MSR 0x174 -#define MSR_SYSENTER_ESP_MSR 0x175 -#define MSR_SYSENTER_EIP_MSR 0x176 -#define MSR_MCG_CAP 0x179 -#define MSR_MCG_STATUS 0x17a -#define MSR_MCG_CTL 0x17b -#define MSR_EVNTSEL0 0x186 -#define MSR_EVNTSEL1 0x187 -#define MSR_THERM_CONTROL 0x19a -#define MSR_THERM_INTERRUPT 0x19b -#define MSR_THERM_STATUS 0x19c -#define MSR_DEBUGCTLMSR 0x1d9 -#define MSR_LASTBRANCHFROMIP 0x1db -#define MSR_LASTBRANCHTOIP 0x1dc -#define MSR_LASTINTFROMIP 0x1dd -#define MSR_LASTINTTOIP 0x1de -#define MSR_ROB_CR_BKUPTMPDR6 0x1e0 -#define MSR_MTRRVarBase 0x200 -#define MSR_MTRR64kBase 0x250 -#define MSR_MTRR16kBase 0x258 -#define MSR_MTRR4kBase 0x268 -#define MSR_PAT 0x277 -#define MSR_MTRRdefType 0x2ff -#define MSR_MC0_CTL 0x400 -#define MSR_MC0_STATUS 0x401 -#define MSR_MC0_ADDR 0x402 -#define MSR_MC0_MISC 0x403 -#define MSR_MC1_CTL 0x404 -#define MSR_MC1_STATUS 0x405 -#define MSR_MC1_ADDR 0x406 -#define MSR_MC1_MISC 0x407 -#define MSR_MC2_CTL 0x408 -#define MSR_MC2_STATUS 0x409 -#define MSR_MC2_ADDR 0x40a -#define MSR_MC2_MISC 0x40b -#define MSR_MC3_CTL 0x40c -#define MSR_MC3_STATUS 0x40d -#define MSR_MC3_ADDR 0x40e -#define MSR_MC3_MISC 0x40f -#define MSR_MC4_CTL 0x410 -#define MSR_MC4_STATUS 0x411 -#define MSR_MC4_ADDR 0x412 -#define MSR_MC4_MISC 0x413 + +/* kseg0 coherency algorithm - see MIPS3_TLB_ATTR values */ +#define MIPS4_CONFIG_K0_MASK MIPS3_CONFIG_K0_MASK +#define MIPS4_CONFIG_DN_MASK 0x00000018 /* Device number */ +#define MIPS4_CONFIG_CT 0x00000020 /* CohPrcReqTar */ +#define MIPS4_CONFIG_PE 0x00000040 /* PreElmReq */ +#define MIPS4_CONFIG_PM_MASK 0x00000180 /* PreReqMax */ +#define MIPS4_CONFIG_EC_MASK 0x00001e00 /* SysClkDiv */ +#define MIPS4_CONFIG_SB 0x00002000 /* SCBlkSize */ +#define MIPS4_CONFIG_SK 0x00004000 /* SCColEn */ +#define MIPS4_CONFIG_BE 0x00008000 /* MemEnd */ +#define MIPS4_CONFIG_SS_MASK 0x00070000 /* SCSize */ +#define MIPS4_CONFIG_SC_MASK 0x00380000 /* SCClkDiv */ +#define MIPS4_CONFIG_RESERVED 0x03c00000 /* Reserved wired 0 */ +#define MIPS4_CONFIG_DC_MASK 0x1c000000 /* Primary D-Cache size */ +#define MIPS4_CONFIG_IC_MASK 0xe0000000 /* Primary I-Cache size */ + +#define MIPS4_CONFIG_DC_SHIFT 26 +#define MIPS4_CONFIG_IC_SHIFT 29 + +#define MIPS4_CONFIG_CACHE_SIZE(config, mask, base, shift) \ + ((base) << (((config) & (mask)) >> (shift))) + +#define MIPS4_CONFIG_CACHE_L2_LSIZE(config) \ + (((config) & MIPS4_CONFIG_SB) ? 128 : 64) /* - * Constants related to MSR's. + * Location of exception vectors. + * + * Common vectors: reset and UTLB miss. */ -#define APICBASE_RESERVED 0x000006ff -#define APICBASE_BSP 0x00000100 -#define APICBASE_ENABLED 0x00000800 -#define APICBASE_ADDRESS 0xfffff000 +#define MIPS_RESET_EXC_VEC 0xBFC00000 +#define MIPS_UTLB_MISS_EXC_VEC 0x80000000 /* - * PAT modes. + * MIPS-1 general exception vector (everything else) */ -#define PAT_UNCACHEABLE 0x00 -#define PAT_WRITE_COMBINING 0x01 -#define PAT_WRITE_THROUGH 0x04 -#define PAT_WRITE_PROTECTED 0x05 -#define PAT_WRITE_BACK 0x06 -#define PAT_UNCACHED 0x07 -#define PAT_VALUE(i, m) ((long)(m) << (8 * (i))) -#define PAT_MASK(i) PAT_VALUE(i, 0xff) +#define MIPS1_GEN_EXC_VEC 0x80000080 /* - * Constants related to MTRRs + * MIPS-III exception vectors */ -#define MTRR_N64K 8 /* numbers of fixed-size entries */ -#define MTRR_N16K 16 -#define MTRR_N4K 64 +#define MIPS3_XTLB_MISS_EXC_VEC 0x80000080 +#define MIPS3_CACHE_ERR_EXC_VEC 0x80000100 +#define MIPS3_GEN_EXC_VEC 0x80000180 -/* Performance Control Register (5x86 only). */ -#define PCR0 0x20 -#define PCR0_RSTK 0x01 /* Enables return stack */ -#define PCR0_BTB 0x02 /* Enables branch target buffer */ -#define PCR0_LOOP 0x04 /* Enables loop */ -#define PCR0_AIS 0x08 /* Enables all instrcutions stalled to - serialize pipe. */ -#define PCR0_MLR 0x10 /* Enables reordering of misaligned loads */ -#define PCR0_BTBRT 0x40 /* Enables BTB test register. */ -#define PCR0_LSSER 0x80 /* Disable reorder */ +/* + * TX79 (R5900) exception vectors + */ +#define MIPS_R5900_COUNTER_EXC_VEC 0x80000080 +#define MIPS_R5900_DEBUG_EXC_VEC 0x80000100 -/* Device Identification Registers */ -#define DIR0 0xfe -#define DIR1 0xff +/* + * MIPS32/MIPS64 (and some MIPS3) dedicated interrupt vector. + */ +#define MIPS3_INTR_EXC_VEC 0x80000200 /* - * The following four 3-byte registers control the non-cacheable regions. - * These registers must be written as three separate bytes. + * Coprocessor 0 registers: * - * NCRx+0: A31-A24 of starting address - * NCRx+1: A23-A16 of starting address - * NCRx+2: A15-A12 of starting address | NCR_SIZE_xx. - * - * The non-cacheable region's starting address must be aligned to the - * size indicated by the NCR_SIZE_xx field. + * v--- width for mips I,III,32,64 + * (3=32bit, 6=64bit, i=impl dep) + * 0 MIPS_COP_0_TLB_INDEX 3333 TLB Index. + * 1 MIPS_COP_0_TLB_RANDOM 3333 TLB Random. + * 2 MIPS_COP_0_TLB_LOW 3... r3k TLB entry low. + * 2 MIPS_COP_0_TLB_LO0 .636 r4k TLB entry low. + * 3 MIPS_COP_0_TLB_LO1 .636 r4k TLB entry low, extended. + * 4 MIPS_COP_0_TLB_CONTEXT 3636 TLB Context. + * 5 MIPS_COP_0_TLB_PG_MASK .333 TLB Page Mask register. + * 6 MIPS_COP_0_TLB_WIRED .333 Wired TLB number. + * 8 MIPS_COP_0_BAD_VADDR 3636 Bad virtual address. + * 9 MIPS_COP_0_COUNT .333 Count register. + * 10 MIPS_COP_0_TLB_HI 3636 TLB entry high. + * 11 MIPS_COP_0_COMPARE .333 Compare (against Count). + * 12 MIPS_COP_0_STATUS 3333 Status register. + * 13 MIPS_COP_0_CAUSE 3333 Exception cause register. + * 14 MIPS_COP_0_EXC_PC 3636 Exception PC. + * 15 MIPS_COP_0_PRID 3333 Processor revision identifier. + * 16 MIPS_COP_0_CONFIG 3333 Configuration register. + * 16/1 MIPS_COP_0_CONFIG1 ..33 Configuration register 1. + * 16/2 MIPS_COP_0_CONFIG2 ..33 Configuration register 2. + * 16/3 MIPS_COP_0_CONFIG3 ..33 Configuration register 3. + * 17 MIPS_COP_0_LLADDR .336 Load Linked Address. + * 18 MIPS_COP_0_WATCH_LO .336 WatchLo register. + * 19 MIPS_COP_0_WATCH_HI .333 WatchHi register. + * 20 MIPS_COP_0_TLB_XCONTEXT .6.6 TLB XContext register. + * 23 MIPS_COP_0_DEBUG .... Debug JTAG register. + * 24 MIPS_COP_0_DEPC .... DEPC JTAG register. + * 25 MIPS_COP_0_PERFCNT ..36 Performance Counter register. + * 26 MIPS_COP_0_ECC .3ii ECC / Error Control register. + * 27 MIPS_COP_0_CACHE_ERR .3ii Cache Error register. + * 28/0 MIPS_COP_0_TAG_LO .3ii Cache TagLo register (instr). + * 28/1 MIPS_COP_0_DATA_LO ..ii Cache DataLo register (instr). + * 28/2 MIPS_COP_0_TAG_LO ..ii Cache TagLo register (data). + * 28/3 MIPS_COP_0_DATA_LO ..ii Cache DataLo register (data). + * 29/0 MIPS_COP_0_TAG_HI .3ii Cache TagHi register (instr). + * 29/1 MIPS_COP_0_DATA_HI ..ii Cache DataHi register (instr). + * 29/2 MIPS_COP_0_TAG_HI ..ii Cache TagHi register (data). + * 29/3 MIPS_COP_0_DATA_HI ..ii Cache DataHi register (data). + * 30 MIPS_COP_0_ERROR_PC .636 Error EPC register. + * 31 MIPS_COP_0_DESAVE .... DESAVE JTAG register. + */ +#ifdef _LOCORE +#define _(n) __CONCAT($,n) +#else +#define _(n) n +#endif +#define MIPS_COP_0_TLB_INDEX _(0) +#define MIPS_COP_0_TLB_RANDOM _(1) + /* Name and meaning of TLB bits for $2 differ on r3k and r4k. */ + +#define MIPS_COP_0_TLB_CONTEXT _(4) + /* $5 and $6 new with MIPS-III */ +#define MIPS_COP_0_BAD_VADDR _(8) +#define MIPS_COP_0_TLB_HI _(10) +#define MIPS_COP_0_STATUS _(12) +#define MIPS_COP_0_CAUSE _(13) +#define MIPS_COP_0_EXC_PC _(14) +#define MIPS_COP_0_PRID _(15) + + +/* MIPS-I */ +#define MIPS_COP_0_TLB_LOW _(2) + +/* MIPS-III */ +#define MIPS_COP_0_TLB_LO0 _(2) +#define MIPS_COP_0_TLB_LO1 _(3) + +#define MIPS_COP_0_TLB_PG_MASK _(5) +#define MIPS_COP_0_TLB_WIRED _(6) + +#define MIPS_COP_0_COUNT _(9) +#define MIPS_COP_0_COMPARE _(11) + +#define MIPS_COP_0_CONFIG _(16) +#define MIPS_COP_0_LLADDR _(17) +#define MIPS_COP_0_WATCH_LO _(18) +#define MIPS_COP_0_WATCH_HI _(19) +#define MIPS_COP_0_TLB_XCONTEXT _(20) +#define MIPS_COP_0_ECC _(26) +#define MIPS_COP_0_CACHE_ERR _(27) +#define MIPS_COP_0_TAG_LO _(28) +#define MIPS_COP_0_TAG_HI _(29) +#define MIPS_COP_0_ERROR_PC _(30) + +/* MIPS32/64 */ +#define MIPS_COP_0_DEBUG _(23) +#define MIPS_COP_0_DEPC _(24) +#define MIPS_COP_0_PERFCNT _(25) +#define MIPS_COP_0_DATA_LO _(28) +#define MIPS_COP_0_DATA_HI _(29) +#define MIPS_COP_0_DESAVE _(31) + +/* + * Values for the code field in a break instruction. + */ +#define MIPS_BREAK_INSTR 0x0000000d +#define MIPS_BREAK_VAL_MASK 0x03ff0000 +#define MIPS_BREAK_VAL_SHIFT 16 +#define MIPS_BREAK_KDB_VAL 512 +#define MIPS_BREAK_SSTEP_VAL 513 +#define MIPS_BREAK_BRKPT_VAL 514 +#define MIPS_BREAK_SOVER_VAL 515 +#define MIPS_BREAK_KDB (MIPS_BREAK_INSTR | \ + (MIPS_BREAK_KDB_VAL << MIPS_BREAK_VAL_SHIFT)) +#define MIPS_BREAK_SSTEP (MIPS_BREAK_INSTR | \ + (MIPS_BREAK_SSTEP_VAL << MIPS_BREAK_VAL_SHIFT)) +#define MIPS_BREAK_BRKPT (MIPS_BREAK_INSTR | \ + (MIPS_BREAK_BRKPT_VAL << MIPS_BREAK_VAL_SHIFT)) +#define MIPS_BREAK_SOVER (MIPS_BREAK_INSTR | \ + (MIPS_BREAK_SOVER_VAL << MIPS_BREAK_VAL_SHIFT)) + +/* + * Mininum and maximum cache sizes. + */ +#define MIPS_MIN_CACHE_SIZE (16 * 1024) +#define MIPS_MAX_CACHE_SIZE (256 * 1024) +#define MIPS3_MAX_PCACHE_SIZE (32 * 1024) /* max. primary cache size */ + +/* + * The floating point version and status registers. + */ +#define MIPS_FPU_ID $0 +#define MIPS_FPU_CSR $31 + +/* + * The floating point coprocessor status register bits. + */ +#define MIPS_FPU_ROUNDING_BITS 0x00000003 +#define MIPS_FPU_ROUND_RN 0x00000000 +#define MIPS_FPU_ROUND_RZ 0x00000001 +#define MIPS_FPU_ROUND_RP 0x00000002 +#define MIPS_FPU_ROUND_RM 0x00000003 +#define MIPS_FPU_STICKY_BITS 0x0000007c +#define MIPS_FPU_STICKY_INEXACT 0x00000004 +#define MIPS_FPU_STICKY_UNDERFLOW 0x00000008 +#define MIPS_FPU_STICKY_OVERFLOW 0x00000010 +#define MIPS_FPU_STICKY_DIV0 0x00000020 +#define MIPS_FPU_STICKY_INVALID 0x00000040 +#define MIPS_FPU_ENABLE_BITS 0x00000f80 +#define MIPS_FPU_ENABLE_INEXACT 0x00000080 +#define MIPS_FPU_ENABLE_UNDERFLOW 0x00000100 +#define MIPS_FPU_ENABLE_OVERFLOW 0x00000200 +#define MIPS_FPU_ENABLE_DIV0 0x00000400 +#define MIPS_FPU_ENABLE_INVALID 0x00000800 +#define MIPS_FPU_EXCEPTION_BITS 0x0003f000 +#define MIPS_FPU_EXCEPTION_INEXACT 0x00001000 +#define MIPS_FPU_EXCEPTION_UNDERFLOW 0x00002000 +#define MIPS_FPU_EXCEPTION_OVERFLOW 0x00004000 +#define MIPS_FPU_EXCEPTION_DIV0 0x00008000 +#define MIPS_FPU_EXCEPTION_INVALID 0x00010000 +#define MIPS_FPU_EXCEPTION_UNIMPL 0x00020000 +#define MIPS_FPU_COND_BIT 0x00800000 +#define MIPS_FPU_FLUSH_BIT 0x01000000 /* r4k, MBZ on r3k */ +#define MIPS1_FPC_MBZ_BITS 0xff7c0000 +#define MIPS3_FPC_MBZ_BITS 0xfe7c0000 + + +/* + * Constants to determine if have a floating point instruction. + */ +#define MIPS_OPCODE_SHIFT 26 +#define MIPS_OPCODE_C1 0x11 + + +/* + * The low part of the TLB entry. + */ +#define MIPS1_TLB_PFN 0xfffff000 +#define MIPS1_TLB_NON_CACHEABLE_BIT 0x00000800 +#define MIPS1_TLB_DIRTY_BIT 0x00000400 +#define MIPS1_TLB_VALID_BIT 0x00000200 +#define MIPS1_TLB_GLOBAL_BIT 0x00000100 + +#define MIPS3_TLB_PFN 0x3fffffc0 +#define MIPS3_TLB_ATTR_MASK 0x00000038 +#define MIPS3_TLB_ATTR_SHIFT 3 +#define MIPS3_TLB_DIRTY_BIT 0x00000004 +#define MIPS3_TLB_VALID_BIT 0x00000002 +#define MIPS3_TLB_GLOBAL_BIT 0x00000001 + +#define MIPS1_TLB_PHYS_PAGE_SHIFT 12 +#define MIPS3_TLB_PHYS_PAGE_SHIFT 6 +#define MIPS1_TLB_PF_NUM MIPS1_TLB_PFN +#define MIPS3_TLB_PF_NUM MIPS3_TLB_PFN +#define MIPS1_TLB_MOD_BIT MIPS1_TLB_DIRTY_BIT +#define MIPS3_TLB_MOD_BIT MIPS3_TLB_DIRTY_BIT + +/* + * MIPS3_TLB_ATTR values - coherency algorithm: + * 0: cacheable, noncoherent, write-through, no write allocate + * 1: cacheable, noncoherent, write-through, write allocate + * 2: uncached + * 3: cacheable, noncoherent, write-back (noncoherent) + * 4: cacheable, coherent, write-back, exclusive (exclusive) + * 5: cacheable, coherent, write-back, exclusive on write (sharable) + * 6: cacheable, coherent, write-back, update on write (update) + * 7: uncached, accelerated (gather STORE operations) + */ +#define MIPS3_TLB_ATTR_WT 0 /* IDT */ +#define MIPS3_TLB_ATTR_WT_WRITEALLOCATE 1 /* IDT */ +#define MIPS3_TLB_ATTR_UNCACHED 2 /* R4000/R4400, IDT */ +#define MIPS3_TLB_ATTR_WB_NONCOHERENT 3 /* R4000/R4400, IDT */ +#define MIPS3_TLB_ATTR_WB_EXCLUSIVE 4 /* R4000/R4400 */ +#define MIPS3_TLB_ATTR_WB_SHARABLE 5 /* R4000/R4400 */ +#define MIPS3_TLB_ATTR_WB_UPDATE 6 /* R4000/R4400 */ +#define MIPS4_TLB_ATTR_UNCACHED_ACCELERATED 7 /* R10000 */ + + +/* + * The high part of the TLB entry. + */ +#define MIPS1_TLB_VPN 0xfffff000 +#define MIPS1_TLB_PID 0x00000fc0 +#define MIPS1_TLB_PID_SHIFT 6 + +#define MIPS3_TLB_VPN2 0xffffe000 +#define MIPS3_TLB_ASID 0x000000ff + +#define MIPS1_TLB_VIRT_PAGE_NUM MIPS1_TLB_VPN +#define MIPS3_TLB_VIRT_PAGE_NUM MIPS3_TLB_VPN2 +#define MIPS3_TLB_PID MIPS3_TLB_ASID +#define MIPS_TLB_VIRT_PAGE_SHIFT 12 + +/* + * r3000: shift count to put the index in the right spot. + */ +#define MIPS1_TLB_INDEX_SHIFT 8 + +/* + * The first TLB that write random hits. + */ +#define MIPS1_TLB_FIRST_RAND_ENTRY 8 +#define MIPS3_TLB_WIRED_UPAGES 1 + +/* + * The number of process id entries. + */ +#define MIPS1_TLB_NUM_PIDS 64 +#define MIPS3_TLB_NUM_ASIDS 256 + +/* + * Patch codes to hide CPU design differences between MIPS1 and MIPS3. + */ + +/* XXX simonb: this is before MIPS3_PLUS is defined (and is ugly!) */ + +#if !(defined(MIPS3) || defined(MIPS4) || defined(MIPS32) || defined(MIPS64)) \ + && defined(MIPS1) /* XXX simonb must be neater! */ +#define MIPS_TLB_PID_SHIFT MIPS1_TLB_PID_SHIFT +#define MIPS_TLB_NUM_PIDS MIPS1_TLB_NUM_PIDS +#endif + +#if (defined(MIPS3) || defined(MIPS4) || defined(MIPS32) || defined(MIPS64)) \ + && !defined(MIPS1) /* XXX simonb must be neater! */ +#define MIPS_TLB_PID_SHIFT 0 +#define MIPS_TLB_NUM_PIDS MIPS3_TLB_NUM_ASIDS +#endif + + +#if !defined(MIPS_TLB_PID_SHIFT) +#define MIPS_TLB_PID_SHIFT \ + ((MIPS_HAS_R4K_MMU) ? 0 : MIPS1_TLB_PID_SHIFT) + +#define MIPS_TLB_NUM_PIDS \ + ((MIPS_HAS_R4K_MMU) ? MIPS3_TLB_NUM_ASIDS : MIPS1_TLB_NUM_PIDS) +#endif + +/* + * CPU processor revision IDs for company ID == 0 (non mips32/64 chips) + */ +#define MIPS_R2000 0x01 /* MIPS R2000 ISA I */ +#define MIPS_R3000 0x02 /* MIPS R3000 ISA I */ +#define MIPS_R6000 0x03 /* MIPS R6000 ISA II */ +#define MIPS_R4000 0x04 /* MIPS R4000/R4400 ISA III */ +#define MIPS_R3LSI 0x05 /* LSI Logic R3000 derivative ISA I */ +#define MIPS_R6000A 0x06 /* MIPS R6000A ISA II */ +#define MIPS_R3IDT 0x07 /* IDT R3041 or RC36100 ISA I */ +#define MIPS_R10000 0x09 /* MIPS R10000 ISA IV */ +#define MIPS_R4200 0x0a /* NEC VR4200 ISA III */ +#define MIPS_R4300 0x0b /* NEC VR4300 ISA III */ +#define MIPS_R4100 0x0c /* NEC VR4100 ISA III */ +#define MIPS_R12000 0x0e /* MIPS R12000 ISA IV */ +#define MIPS_R14000 0x0f /* MIPS R14000 ISA IV */ +#define MIPS_R8000 0x10 /* MIPS R8000 Blackbird/TFP ISA IV */ +#define MIPS_RC32300 0x18 /* IDT RC32334,332,355 ISA 32 */ +#define MIPS_R4600 0x20 /* QED R4600 Orion ISA III */ +#define MIPS_R4700 0x21 /* QED R4700 Orion ISA III */ +#define MIPS_R3SONY 0x21 /* Sony R3000 based ISA I */ +#define MIPS_R4650 0x22 /* QED R4650 ISA III */ +#define MIPS_TX3900 0x22 /* Toshiba TX39 family ISA I */ +#define MIPS_R5000 0x23 /* MIPS R5000 ISA IV */ +#define MIPS_R3NKK 0x23 /* NKK R3000 based ISA I */ +#define MIPS_RC32364 0x26 /* IDT RC32364 ISA 32 */ +#define MIPS_RM7000 0x27 /* QED RM7000 ISA IV */ +#define MIPS_RM5200 0x28 /* QED RM5200s ISA IV */ +#define MIPS_TX4900 0x2d /* Toshiba TX49 family ISA III */ +#define MIPS_R5900 0x2e /* Toshiba R5900 (EECore) ISA --- */ +#define MIPS_RC64470 0x30 /* IDT RC64474/RC64475 ISA III */ +#define MIPS_TX7900 0x38 /* Toshiba TX79 ISA III+*/ +#define MIPS_R5400 0x54 /* NEC VR5400 ISA IV */ +#define MIPS_R5500 0x55 /* NEC VR5500 ISA IV */ + +/* + * CPU revision IDs for some prehistoric processors. */ -#define NCR1 0xc4 -#define NCR2 0xc7 -#define NCR3 0xca -#define NCR4 0xcd + +/* For MIPS_R3000 */ +#define MIPS_REV_R3000 0x20 +#define MIPS_REV_R3000A 0x30 + +/* For MIPS_TX3900 */ +#define MIPS_REV_TX3912 0x10 +#define MIPS_REV_TX3922 0x30 +#define MIPS_REV_TX3927 0x40 + +/* For MIPS_R4000 */ +#define MIPS_REV_R4000_A 0x00 +#define MIPS_REV_R4000_B 0x22 +#define MIPS_REV_R4000_C 0x30 +#define MIPS_REV_R4400_A 0x40 +#define MIPS_REV_R4400_B 0x50 +#define MIPS_REV_R4400_C 0x60 -#define NCR_SIZE_0K 0 -#define NCR_SIZE_4K 1 -#define NCR_SIZE_8K 2 -#define NCR_SIZE_16K 3 -#define NCR_SIZE_32K 4 -#define NCR_SIZE_64K 5 -#define NCR_SIZE_128K 6 -#define NCR_SIZE_256K 7 -#define NCR_SIZE_512K 8 -#define NCR_SIZE_1M 9 -#define NCR_SIZE_2M 10 -#define NCR_SIZE_4M 11 -#define NCR_SIZE_8M 12 -#define NCR_SIZE_16M 13 -#define NCR_SIZE_32M 14 -#define NCR_SIZE_4G 15 +/* For MIPS_TX4900 */ +#define MIPS_REV_TX4927 0x22 /* - * The address region registers are used to specify the location and - * size for the eight address regions. - * - * ARRx + 0: A31-A24 of start address - * ARRx + 1: A23-A16 of start address - * ARRx + 2: A15-A12 of start address | ARR_SIZE_xx + * CPU processor revision IDs for company ID == 1 (MIPS) */ -#define ARR0 0xc4 -#define ARR1 0xc7 -#define ARR2 0xca -#define ARR3 0xcd -#define ARR4 0xd0 -#define ARR5 0xd3 -#define ARR6 0xd6 -#define ARR7 0xd9 +#define MIPS_4Kc 0x80 /* MIPS 4Kc ISA 32 */ +#define MIPS_5Kc 0x81 /* MIPS 5Kc ISA 64 */ +#define MIPS_20Kc 0x82 /* MIPS 20Kc ISA 64 */ +#define MIPS_4Kmp 0x83 /* MIPS 4Km/4Kp ISA 32 */ +#define MIPS_4KEc 0x84 /* MIPS 4KEc ISA 32 */ +#define MIPS_4KEmp 0x85 /* MIPS 4KEm/4KEp ISA 32 */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 5 23:34:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8604216A4E0; Wed, 5 Jul 2006 23:34:31 +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 64B9F16A4DE for ; Wed, 5 Jul 2006 23:34:31 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 17A9B43D45 for ; Wed, 5 Jul 2006 23:34:31 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65NYUsV083066 for ; Wed, 5 Jul 2006 23:34:30 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65NYUgf083063 for perforce@freebsd.org; Wed, 5 Jul 2006 23:34:30 GMT (envelope-from cognet@freebsd.org) Date: Wed, 5 Jul 2006 23:34:30 GMT Message-Id: <200607052334.k65NYUgf083063@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100670 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 23:34:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=100670 Change 100670 by cognet@cognet on 2006/07/05 23:34:19 Don't hardcode CC, NM and LD. Affected files ... .. //depot/projects/mips2/src/sys/conf/Makefile.mips#2 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/Makefile.mips#2 (text+ko) ==== @@ -33,10 +33,6 @@ MKMODULESENV+= MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE_ARCH} -CC=mips-gcc -NM=mips-nm -LD=mips-ld - %BEFORE_DEPEND %OBJS From owner-p4-projects@FreeBSD.ORG Wed Jul 5 23:39:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1625116A4E9; Wed, 5 Jul 2006 23:39:39 +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 E82B416A4E7 for ; Wed, 5 Jul 2006 23:39:38 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 58FF643D45 for ; Wed, 5 Jul 2006 23:39:38 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65NdcXf083400 for ; Wed, 5 Jul 2006 23:39:38 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65NdcfR083397 for perforce@freebsd.org; Wed, 5 Jul 2006 23:39:38 GMT (envelope-from cognet@freebsd.org) Date: Wed, 5 Jul 2006 23:39:38 GMT Message-Id: <200607052339.k65NdcfR083397@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100672 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 23:39:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=100672 Change 100672 by cognet@cognet on 2006/07/05 23:38:51 Nuke i386isms from cpufunc and implement intr_restore(), intr_disable() and intr_enable(). Include from atomic.h, and don't define the long operations twice. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/atomic.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/atomic.h#2 (text+ko) ==== @@ -32,6 +32,8 @@ #error this file needs sys/cdefs.h as a prerequisite #endif +#include + /* * Various simple arithmetic on memory which is atomic in the presence * of interrupts and multiple processors. @@ -139,7 +141,7 @@ static __inline u_##TYPE \ atomic_load_acq_##TYPE(volatile u_##TYPE *p) \ { \ - return (*p) \ + return (*p); \ } \ \ static __inline void \ @@ -207,17 +209,6 @@ #define atomic_cmpset_acq_int atomic_cmpset_int #define atomic_cmpset_rel_int atomic_cmpset_int -#define atomic_set_acq_long atomic_set_long -#define atomic_set_rel_long atomic_set_long -#define atomic_clear_acq_long atomic_clear_long -#define atomic_clear_rel_long atomic_clear_long -#define atomic_add_acq_long atomic_add_long -#define atomic_add_rel_long atomic_add_long -#define atomic_subtract_acq_long atomic_subtract_long -#define atomic_subtract_rel_long atomic_subtract_long -#define atomic_cmpset_acq_long atomic_cmpset_long -#define atomic_cmpset_rel_long atomic_cmpset_long - /* Operations on 8-bit bytes. */ #define atomic_set_8 atomic_set_char #define atomic_set_acq_8 atomic_set_acq_char @@ -311,5 +302,4 @@ #define atomic_cmpset_rel_ptr atomic_cmpset_rel_long #define atomic_readandclear_ptr atomic_readandclear_long -#endif /* !defined(WANT_FUNCTIONS) */ #endif /* ! _MACHINE_ATOMIC_H_ */ ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2003 Peter Wemm. + * Copyright (c) 2006 Olivier Houchard. * Copyright (c) 1993 The Regents of the University of California. * All rights reserved. * @@ -31,7 +31,7 @@ */ /* - * Functions to provide access to special i386 instructions. + * Functions to provide access to special mips instructions. * This in included in sys/systm.h, and that file should be * used in preference to this. */ @@ -39,742 +39,36 @@ #ifndef _MACHINE_CPUFUNC_H_ #define _MACHINE_CPUFUNC_H_ -#ifndef _SYS_CDEFS_H_ -#error this file needs sys/cdefs.h as a prerequisite -#endif - -struct region_descriptor; - -#define readb(va) (*(volatile u_int8_t *) (va)) -#define readw(va) (*(volatile u_int16_t *) (va)) -#define readl(va) (*(volatile u_int32_t *) (va)) -#define readq(va) (*(volatile u_int64_t *) (va)) - -#define writeb(va, d) (*(volatile u_int8_t *) (va) = (d)) -#define writew(va, d) (*(volatile u_int16_t *) (va) = (d)) -#define writel(va, d) (*(volatile u_int32_t *) (va) = (d)) -#define writeq(va, d) (*(volatile u_int64_t *) (va) = (d)) - -#if defined(__GNUCLIKE_ASM) && defined(__CC_SUPPORTS___INLINE) - -static __inline void -breakpoint(void) +static __inline register_t +intr_disable(void) { - __asm __volatile("int $3"); -} - -static __inline u_int -bsfl(u_int mask) -{ - u_int result; - - __asm __volatile("bsfl %1,%0" : "=r" (result) : "rm" (mask)); - return (result); -} - -static __inline u_long -bsfq(u_long mask) -{ - u_long result; - - __asm __volatile("bsfq %1,%0" : "=r" (result) : "rm" (mask)); - return (result); -} - -static __inline u_int -bsrl(u_int mask) -{ - u_int result; - - __asm __volatile("bsrl %1,%0" : "=r" (result) : "rm" (mask)); - return (result); -} - -static __inline u_long -bsrq(u_long mask) -{ - u_long result; - - __asm __volatile("bsrq %1,%0" : "=r" (result) : "rm" (mask)); - return (result); + register_t ret, tmp; + + __asm __volatile("mfc0 %0, 12\n" /* MIPS_COP_0_STATUS */ + "and %1, %0, ~1\n" /* MIPS_SR_INT_IE */ + "mtc0 %1, 12\n" /* MIPS_COP_0_STATUS */ + : "=r" (ret), "=r" (tmp)); + return (ret); } static __inline void -disable_intr(void) +intr_enable(void) { - __asm __volatile("cli" : : : "memory"); -} + register_t tmp; -static __inline void -do_cpuid(u_int ax, u_int *p) -{ - __asm __volatile("cpuid" - : "=a" (p[0]), "=b" (p[1]), "=c" (p[2]), "=d" (p[3]) - : "0" (ax)); + __asm __volatile("mfc %0, 12\n" /* MIPS_COP_0_STATUS */ + "and %0, %0, 1\n" /* MIPS_SR_INT_IE */ + "mtc0 %0, 12\n" /* MIPS_COP_0_STATUS */ + : "=r" (tmp)); } static __inline void -cpuid_count(u_int ax, u_int cx, u_int *p) +intr_restore(register_t flag) { - __asm __volatile("cpuid" - : "=a" (p[0]), "=b" (p[1]), "=c" (p[2]), "=d" (p[3]) - : "0" (ax), "c" (cx)); -} -static __inline void -enable_intr(void) -{ - __asm __volatile("sti"); -} - -#ifdef _KERNEL - -#define HAVE_INLINE_FFS -#define ffs(x) __builtin_ffs(x) - -#define HAVE_INLINE_FFSL - -static __inline int -ffsl(long mask) -{ - return (mask == 0 ? mask : (int)bsfq((u_long)mask) + 1); -} - -#define HAVE_INLINE_FLS - -static __inline int -fls(int mask) -{ - return (mask == 0 ? mask : (int)bsrl((u_int)mask) + 1); -} - -#define HAVE_INLINE_FLSL - -static __inline int -flsl(long mask) -{ - return (mask == 0 ? mask : (int)bsrq((u_long)mask) + 1); -} - -#endif /* _KERNEL */ - -static __inline void -halt(void) -{ - __asm __volatile("hlt"); -} - -#if !defined(__GNUCLIKE_BUILTIN_CONSTANT_P) || __GNUCLIKE_ASM < 3 - -#define inb(port) inbv(port) -#define outb(port, data) outbv(port, data) - -#else /* __GNUCLIKE_BUILTIN_CONSTANT_P && __GNUCLIKE_ASM >= 3 */ - -/* - * The following complications are to get around gcc not having a - * constraint letter for the range 0..255. We still put "d" in the - * constraint because "i" isn't a valid constraint when the port - * isn't constant. This only matters for -O0 because otherwise - * the non-working version gets optimized away. - * - * Use an expression-statement instead of a conditional expression - * because gcc-2.6.0 would promote the operands of the conditional - * and produce poor code for "if ((inb(var) & const1) == const2)". - * - * The unnecessary test `(port) < 0x10000' is to generate a warning if - * the `port' has type u_short or smaller. Such types are pessimal. - * This actually only works for signed types. The range check is - * careful to avoid generating warnings. - */ -#define inb(port) __extension__ ({ \ - u_char _data; \ - if (__builtin_constant_p(port) && ((port) & 0xffff) < 0x100 \ - && (port) < 0x10000) \ - _data = inbc(port); \ - else \ - _data = inbv(port); \ - _data; }) - -#define outb(port, data) ( \ - __builtin_constant_p(port) && ((port) & 0xffff) < 0x100 \ - && (port) < 0x10000 \ - ? outbc(port, data) : outbv(port, data)) - -static __inline u_char -inbc(u_int port) -{ - u_char data; - - __asm __volatile("inb %1,%0" : "=a" (data) : "id" ((u_short)(port))); - return (data); -} - -static __inline void -outbc(u_int port, u_char data) -{ - __asm __volatile("outb %0,%1" : : "a" (data), "id" ((u_short)(port))); -} - -#endif /* __GNUCLIKE_BUILTIN_CONSTANT_P && __GNUCLIKE_ASM >= 3*/ - -static __inline u_char -inbv(u_int port) -{ - u_char data; - /* - * We use %%dx and not %1 here because i/o is done at %dx and not at - * %edx, while gcc generates inferior code (movw instead of movl) - * if we tell it to load (u_short) port. - */ - __asm __volatile("inb %%dx,%0" : "=a" (data) : "d" (port)); - return (data); -} - -static __inline u_int -inl(u_int port) -{ - u_int data; - - __asm __volatile("inl %%dx,%0" : "=a" (data) : "d" (port)); - return (data); -} - -static __inline void -insb(u_int port, void *addr, size_t cnt) -{ - __asm __volatile("cld; rep; insb" - : "+D" (addr), "+c" (cnt) - : "d" (port) - : "memory"); -} - -static __inline void -insw(u_int port, void *addr, size_t cnt) -{ - __asm __volatile("cld; rep; insw" - : "+D" (addr), "+c" (cnt) - : "d" (port) - : "memory"); -} - -static __inline void -insl(u_int port, void *addr, size_t cnt) -{ - __asm __volatile("cld; rep; insl" - : "+D" (addr), "+c" (cnt) - : "d" (port) - : "memory"); -} - -static __inline void -invd(void) -{ - __asm __volatile("invd"); -} - -static __inline u_short -inw(u_int port) -{ - u_short data; - - __asm __volatile("inw %%dx,%0" : "=a" (data) : "d" (port)); - return (data); -} - -static __inline void -outbv(u_int port, u_char data) -{ - u_char al; - /* - * Use an unnecessary assignment to help gcc's register allocator. - * This make a large difference for gcc-1.40 and a tiny difference - * for gcc-2.6.0. For gcc-1.40, al had to be ``asm("ax")'' for - * best results. gcc-2.6.0 can't handle this. - */ - al = data; - __asm __volatile("outb %0,%%dx" : : "a" (al), "d" (port)); -} - -static __inline void -outl(u_int port, u_int data) -{ - /* - * outl() and outw() aren't used much so we haven't looked at - * possible micro-optimizations such as the unnecessary - * assignment for them. - */ - __asm __volatile("outl %0,%%dx" : : "a" (data), "d" (port)); -} - -static __inline void -outsb(u_int port, const void *addr, size_t cnt) -{ - __asm __volatile("cld; rep; outsb" - : "+S" (addr), "+c" (cnt) - : "d" (port)); -} - -static __inline void -outsw(u_int port, const void *addr, size_t cnt) -{ - __asm __volatile("cld; rep; outsw" - : "+S" (addr), "+c" (cnt) - : "d" (port)); -} - -static __inline void -outsl(u_int port, const void *addr, size_t cnt) -{ - __asm __volatile("cld; rep; outsl" - : "+S" (addr), "+c" (cnt) - : "d" (port)); -} - -static __inline void -outw(u_int port, u_short data) -{ - __asm __volatile("outw %0,%%dx" : : "a" (data), "d" (port)); -} - -static __inline void -ia32_pause(void) -{ - __asm __volatile("pause"); -} - -static __inline u_long -read_rflags(void) -{ - u_long rf; - - __asm __volatile("pushfq; popq %0" : "=r" (rf)); - return (rf); -} - -static __inline u_int64_t -rdmsr(u_int msr) -{ - u_int32_t low, high; - - __asm __volatile("rdmsr" : "=a" (low), "=d" (high) : "c" (msr)); - return (low | ((u_int64_t)high << 32)); -} - -static __inline u_int64_t -rdpmc(u_int pmc) -{ - u_int32_t low, high; - - __asm __volatile("rdpmc" : "=a" (low), "=d" (high) : "c" (pmc)); - return (low | ((u_int64_t)high << 32)); -} - -static __inline u_int64_t -rdtsc(void) -{ - u_int32_t low, high; - - __asm __volatile("rdtsc" : "=a" (low), "=d" (high)); - return (low | ((u_int64_t)high << 32)); -} - -static __inline void -wbinvd(void) -{ - __asm __volatile("wbinvd"); -} - -static __inline void -write_rflags(u_long rf) -{ - __asm __volatile("pushq %0; popfq" : : "r" (rf)); -} - -static __inline void -wrmsr(u_int msr, u_int64_t newval) -{ - u_int32_t low, high; - - low = newval; - high = newval >> 32; - __asm __volatile("wrmsr" : : "a" (low), "d" (high), "c" (msr)); -} - -static __inline void -load_cr0(u_long data) -{ - - __asm __volatile("movq %0,%%cr0" : : "r" (data)); -} - -static __inline u_long -rcr0(void) -{ - u_long data; - - __asm __volatile("movq %%cr0,%0" : "=r" (data)); - return (data); -} - -static __inline u_long -rcr2(void) -{ - u_long data; - - __asm __volatile("movq %%cr2,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_cr3(u_long data) -{ - - __asm __volatile("movq %0,%%cr3" : : "r" (data) : "memory"); -} - -static __inline u_long -rcr3(void) -{ - u_long data; - - __asm __volatile("movq %%cr3,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_cr4(u_long data) -{ - __asm __volatile("movq %0,%%cr4" : : "r" (data)); -} - -static __inline u_long -rcr4(void) -{ - u_long data; - - __asm __volatile("movq %%cr4,%0" : "=r" (data)); - return (data); -} - -/* - * Global TLB flush (except for thise for pages marked PG_G) - */ -static __inline void -invltlb(void) -{ - - load_cr3(rcr3()); + __asm __volatile("mtc0 %0, 12\n" /* MIPS_COP_0_STATUS */ + : : "r" (flag)); } -/* - * TLB flush for an individual page (even if it has PG_G). - * Only works on 486+ CPUs (i386 does not have PG_G). - */ -static __inline void -invlpg(u_long addr) -{ - - __asm __volatile("invlpg %0" : : "m" (*(char *)addr) : "memory"); -} - -static __inline u_int -rfs(void) -{ - u_int sel; - __asm __volatile("movl %%fs,%0" : "=rm" (sel)); - return (sel); -} - -static __inline u_int -rgs(void) -{ - u_int sel; - __asm __volatile("movl %%gs,%0" : "=rm" (sel)); - return (sel); -} - -static __inline u_int -rss(void) -{ - u_int sel; - __asm __volatile("movl %%ss,%0" : "=rm" (sel)); - return (sel); -} - -static __inline void -load_ds(u_int sel) -{ - __asm __volatile("movl %0,%%ds" : : "rm" (sel)); -} - -static __inline void -load_es(u_int sel) -{ - __asm __volatile("movl %0,%%es" : : "rm" (sel)); -} - -#ifdef _KERNEL -/* This is defined in but is too painful to get to */ -#ifndef MSR_FSBASE -#define MSR_FSBASE 0xc0000100 -#endif -static __inline void -load_fs(u_int sel) -{ - register u_int32_t fsbase __asm("ecx"); - - /* Preserve the fsbase value across the selector load */ - fsbase = MSR_FSBASE; - __asm __volatile("rdmsr; movl %0,%%fs; wrmsr" - : : "rm" (sel), "c" (fsbase) : "eax", "edx"); -} - -#ifndef MSR_GSBASE -#define MSR_GSBASE 0xc0000101 -#endif -static __inline void -load_gs(u_int sel) -{ - register u_int32_t gsbase __asm("ecx"); - - /* - * Preserve the gsbase value across the selector load. - * Note that we have to disable interrupts because the gsbase - * being trashed happens to be the kernel gsbase at the time. - */ - gsbase = MSR_GSBASE; - __asm __volatile("pushfq; cli; rdmsr; movl %0,%%gs; wrmsr; popfq" - : : "rm" (sel), "c" (gsbase) : "eax", "edx"); -} -#else -/* Usable by userland */ -static __inline void -load_fs(u_int sel) -{ - __asm __volatile("movl %0,%%fs" : : "rm" (sel)); -} - -static __inline void -load_gs(u_int sel) -{ - __asm __volatile("movl %0,%%gs" : : "rm" (sel)); -} -#endif - -static __inline void -lidt(struct region_descriptor *addr) -{ - __asm __volatile("lidt (%0)" : : "r" (addr)); -} - -static __inline void -lldt(u_short sel) -{ - __asm __volatile("lldt %0" : : "r" (sel)); -} - -static __inline void -ltr(u_short sel) -{ - __asm __volatile("ltr %0" : : "r" (sel)); -} - -static __inline u_int64_t -rdr0(void) -{ - u_int64_t data; - __asm __volatile("movq %%dr0,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_dr0(u_int64_t dr0) -{ - __asm __volatile("movq %0,%%dr0" : : "r" (dr0)); -} - -static __inline u_int64_t -rdr1(void) -{ - u_int64_t data; - __asm __volatile("movq %%dr1,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_dr1(u_int64_t dr1) -{ - __asm __volatile("movq %0,%%dr1" : : "r" (dr1)); -} - -static __inline u_int64_t -rdr2(void) -{ - u_int64_t data; - __asm __volatile("movq %%dr2,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_dr2(u_int64_t dr2) -{ - __asm __volatile("movq %0,%%dr2" : : "r" (dr2)); -} - -static __inline u_int64_t -rdr3(void) -{ - u_int64_t data; - __asm __volatile("movq %%dr3,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_dr3(u_int64_t dr3) -{ - __asm __volatile("movq %0,%%dr3" : : "r" (dr3)); -} - -static __inline u_int64_t -rdr4(void) -{ - u_int64_t data; - __asm __volatile("movq %%dr4,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_dr4(u_int64_t dr4) -{ - __asm __volatile("movq %0,%%dr4" : : "r" (dr4)); -} - -static __inline u_int64_t -rdr5(void) -{ - u_int64_t data; - __asm __volatile("movq %%dr5,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_dr5(u_int64_t dr5) -{ - __asm __volatile("movq %0,%%dr5" : : "r" (dr5)); -} - -static __inline u_int64_t -rdr6(void) -{ - u_int64_t data; - __asm __volatile("movq %%dr6,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_dr6(u_int64_t dr6) -{ - __asm __volatile("movq %0,%%dr6" : : "r" (dr6)); -} - -static __inline u_int64_t -rdr7(void) -{ - u_int64_t data; - __asm __volatile("movq %%dr7,%0" : "=r" (data)); - return (data); -} - -static __inline void -load_dr7(u_int64_t dr7) -{ - __asm __volatile("movq %0,%%dr7" : : "r" (dr7)); -} - -static __inline register_t -intr_disable(void) -{ - register_t rflags; - - rflags = read_rflags(); - disable_intr(); - return (rflags); -} - -static __inline void -intr_restore(register_t rflags) -{ - write_rflags(rflags); -} - -#else /* !(__GNUCLIKE_ASM && __CC_SUPPORTS___INLINE) */ - -int breakpoint(void); -u_int bsfl(u_int mask); -u_int bsrl(u_int mask); -void disable_intr(void); -void do_cpuid(u_int ax, u_int *p); -void enable_intr(void); -void halt(void); -void ia32_pause(void); -u_char inb(u_int port); -u_int inl(u_int port); -void insb(u_int port, void *addr, size_t cnt); -void insl(u_int port, void *addr, size_t cnt); -void insw(u_int port, void *addr, size_t cnt); -register_t intr_disable(void); -void intr_restore(register_t rf); -void invd(void); -void invlpg(u_int addr); -void invltlb(void); -u_short inw(u_int port); -void lidt(struct region_descriptor *addr); -void lldt(u_short sel); -void load_cr0(u_long cr0); -void load_cr3(u_long cr3); -void load_cr4(u_long cr4); -void load_dr0(u_int64_t dr0); -void load_dr1(u_int64_t dr1); -void load_dr2(u_int64_t dr2); -void load_dr3(u_int64_t dr3); -void load_dr4(u_int64_t dr4); -void load_dr5(u_int64_t dr5); -void load_dr6(u_int64_t dr6); -void load_dr7(u_int64_t dr7); -void load_fs(u_int sel); -void load_gs(u_int sel); -void ltr(u_short sel); -void outb(u_int port, u_char data); -void outl(u_int port, u_int data); -void outsb(u_int port, const void *addr, size_t cnt); -void outsl(u_int port, const void *addr, size_t cnt); -void outsw(u_int port, const void *addr, size_t cnt); -void outw(u_int port, u_short data); -u_long rcr0(void); -u_long rcr2(void); -u_long rcr3(void); -u_long rcr4(void); -u_int64_t rdmsr(u_int msr); -u_int64_t rdpmc(u_int pmc); -u_int64_t rdr0(void); -u_int64_t rdr1(void); -u_int64_t rdr2(void); -u_int64_t rdr3(void); -u_int64_t rdr4(void); -u_int64_t rdr5(void); -u_int64_t rdr6(void); -u_int64_t rdr7(void); -u_int64_t rdtsc(void); -u_int read_rflags(void); -u_int rfs(void); -u_int rgs(void); -void wbinvd(void); -void write_rflags(u_int rf); -void wrmsr(u_int msr, u_int64_t newval); - -#endif /* __GNUCLIKE_ASM && __CC_SUPPORTS___INLINE */ - -void reset_dbregs(void); #endif /* !_MACHINE_CPUFUNC_H_ */ From owner-p4-projects@FreeBSD.ORG Wed Jul 5 23:53:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9F8EE16A4E2; Wed, 5 Jul 2006 23:53:05 +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 621FE16A4DA for ; Wed, 5 Jul 2006 23:53:05 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9384443D60 for ; Wed, 5 Jul 2006 23:53:01 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k65Nr1tF084127 for ; Wed, 5 Jul 2006 23:53:01 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k65NquRk084120 for perforce@freebsd.org; Wed, 5 Jul 2006 23:52:56 GMT (envelope-from cognet@freebsd.org) Date: Wed, 5 Jul 2006 23:52:56 GMT Message-Id: <200607052352.k65NquRk084120@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100674 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 23:53:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=100674 Change 100674 by cognet@cognet on 2006/07/05 23:52:43 Remove files likely won't appear in the mips port. Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#2 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#2 (text+ko) ==== @@ -1,56 +1,24 @@ # $FreeBSD$ mips/mips/autoconf.c standard -mips/mips/bcopy_page.S standard -mips/mips/bcopyinout.S standard -mips/mips/blockio.S standard -mips/mips/bootconfig.c standard -mips/mips/bus_space_asm_generic.S standard mips/mips/busdma_machdep.c standard -mips/mips/copystr.S standard -mips/mips/cpufunc.c standard -mips/mips/cpufunc_asm.S standard -mips/mips/cpufunc_asm_sa1.S standard -mips/mips/cpufunc_asm_mipsv4.S standard -mips/mips/cpufunc_asm_sa11x0.S standard mips/mips/db_disasm.c optional ddb mips/mips/db_interface.c optional ddb mips/mips/db_trace.c optional ddb mips/mips/disassem.c optional ddb mips/mips/dump_machdep.c standard mips/mips/elf_machdep.c standard -mips/mips/exception.S standard -mips/mips/fiq.c standard -mips/mips/fiq_subr.S standard -mips/mips/fusu.S standard -mips/mips/identcpu.c standard mips/mips/in_cksum.c optional inet -mips/mips/in_cksum_mips.S optional inet mips/mips/intr.c standard -mips/mips/locore.S standard no-obj mips/mips/machdep.c standard mips/mips/mem.c optional mem -mips/mips/nexus.c optional nexus -mips/mips/nexus_io.c optional nexus -mips/mips/nexus_io_asm.S optional nexus mips/mips/pmap.c standard -mips/mips/setcpsr.S standard -mips/mips/setstack.s standard -mips/mips/support.S standard -mips/mips/swtch.S standard mips/mips/sys_machdep.c standard mips/mips/trap.c standard mips/mips/uio_machdep.c standard -mips/mips/undefined.c standard -mips/mips/vectors.S standard -mips/mips/vm_machdep.c standard -dev/hwpmc/hwpmc_mips.c optional hwpmc geom/geom_bsd.c standard geom/geom_bsd_enc.c standard geom/geom_mbr.c standard geom/geom_mbr_enc.c standard -libkern/mips/divsi3.S standard -libkern/mips/ffs.S standard -libkern/mips/muldi3.c standard libkern/ashldi3.c standard libkern/ashrdi3.c standard libkern/divdi3.c standard From owner-p4-projects@FreeBSD.ORG Wed Jul 5 23:56:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1D62516A4E1; Wed, 5 Jul 2006 23:56:06 +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 EC5D516A4DF for ; Wed, 5 Jul 2006 23:56:05 +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 A968E43D45 for ; Wed, 5 Jul 2006 23:56:05 +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 k65Nu5Hw084317 for ; Wed, 5 Jul 2006 23:56:05 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 k65Nu5sA084312 for perforce@freebsd.org; Wed, 5 Jul 2006 23:56:05 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Jul 2006 23:56:05 GMT Message-Id: <200607052356.k65Nu5sA084312@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 100675 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jul 2006 23:56:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=100675 Change 100675 by rwatson@rwatson_zoo on 2006/07/05 23:55:26 Further rename/checkpoint. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#8 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#8 (text+ko) ==== @@ -413,6 +413,7 @@ struct proc *proc, int signum); typedef int (*mpo_proc_check_wait_t)(struct ucred *cred, struct proc *proc); +typedef int (*mpo_associate_nfsd_label_t)(struct ucred *cred); /* * Object: struct semid_kernel (System V IPC semaphore) @@ -656,7 +657,6 @@ typedef int (*mpo_vnode_check_write_t)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); -typedef int (*mpo_associate_nfsd_label_t)(struct ucred *cred); struct mac_policy_ops { mpo_policy_destroy_t mpo_policy_destroy; @@ -814,283 +814,32 @@ mpo_pipe_check_stat_t mpo_pipe_check_stat; mpo_pipe_check_write_t mpo_pipe_check_write; + mpo_proc_init_label_t mpo_proc_init_label; + mpo_proc_destroy_label_t mpo_proc_destroy_label; + mpo_proc_create_init_t mpo_proc_create_init; + mpo_proc_create_swapper_t mpo_proc_create_swapper; + mpo_proc_thread_userret_t mpo_proc_thread_userret; + mpo_proc_check_debug_t mpo_proc_check_debug; + mpo_proc_check_sched_t mpo_proc_check_sched; + mpo_proc_check_setuid_t mpo_proc_check_setuid; + mpo_proc_check_seteuid_t mpo_proc_check_seteuid; + mpo_proc_check_setgid_t mpo_proc_check_setgid; + mpo_proc_check_setegid_t mpo_proc_check_setegid; + mpo_proc_check_setgroups_t mpo_proc_check_setgroups; + mpo_proc_check_setreuid_t mpo_proc_check_setreuid; + mpo_proc_check_setregid_t mpo_proc_check_setregid; + mpo_proc_check_setresuid_t mpo_proc_check_setresuid; + mpo_proc_check_setresgid_t mpo_proc_check_setresgid; + mpo_proc_check_signal_t mpo_proc_check_signal; + mpo_proc_check_wait_t mpo_proc_check_wait; - - - /* - * Label operations. Initialize label storage, destroy label - * storage, recycle for re-use without init/destroy, copy a label to - * initialized storage, and externalize/internalize from/to - * initialized storage. - */ - mpo_init_bpfdesc_label_t mpo_init_bpfdesc_label; - mpo_init_cred_label_t mpo_init_cred_label; - mpo_init_devfsdirent_label_t mpo_init_devfsdirent_label; - mpo_placeholder_t _mpo_placeholder0; - mpo_init_ifnet_label_t mpo_init_ifnet_label; - mpo_init_inpcb_label_t mpo_init_inpcb_label; - mpo_init_sysv_msgmsg_label_t mpo_init_sysv_msgmsg_label; - mpo_init_sysv_msgqueue_label_t mpo_init_sysv_msgqueue_label; - mpo_init_sysv_sem_label_t mpo_init_sysv_sem_label; - mpo_init_sysv_shm_label_t mpo_init_sysv_shm_label; - mpo_init_ipq_label_t mpo_init_ipq_label; - mpo_init_mbuf_label_t mpo_init_mbuf_label; - mpo_init_mount_label_t mpo_init_mount_label; - mpo_init_mount_fs_label_t mpo_init_mount_fs_label; - mpo_init_socket_label_t mpo_init_socket_label; - mpo_init_socket_peer_label_t mpo_init_socket_peer_label; - mpo_init_pipe_label_t mpo_init_pipe_label; - mpo_init_posix_sem_label_t mpo_init_posix_sem_label; - mpo_init_proc_label_t mpo_init_proc_label; - mpo_init_vnode_label_t mpo_init_vnode_label; - mpo_destroy_bpfdesc_label_t mpo_destroy_bpfdesc_label; - mpo_destroy_cred_label_t mpo_destroy_cred_label; - mpo_destroy_devfsdirent_label_t mpo_destroy_devfsdirent_label; - mpo_placeholder_t _mpo_placeholder1; - mpo_destroy_ifnet_label_t mpo_destroy_ifnet_label; - mpo_destroy_inpcb_label_t mpo_destroy_inpcb_label; - mpo_destroy_sysv_msgmsg_label_t mpo_destroy_sysv_msgmsg_label; - mpo_destroy_sysv_msgqueue_label_t mpo_destroy_sysv_msgqueue_label; - mpo_destroy_sysv_sem_label_t mpo_destroy_sysv_sem_label; - mpo_destroy_sysv_shm_label_t mpo_destroy_sysv_shm_label; - mpo_destroy_ipq_label_t mpo_destroy_ipq_label; - mpo_destroy_mbuf_label_t mpo_destroy_mbuf_label; - mpo_destroy_mount_label_t mpo_destroy_mount_label; - mpo_destroy_mount_fs_label_t mpo_destroy_mount_fs_label; - mpo_destroy_socket_label_t mpo_destroy_socket_label; - mpo_destroy_socket_peer_label_t mpo_destroy_socket_peer_label; - mpo_destroy_pipe_label_t mpo_destroy_pipe_label; - mpo_destroy_posix_sem_label_t mpo_destroy_posix_sem_label; - mpo_destroy_proc_label_t mpo_destroy_proc_label; - mpo_destroy_vnode_label_t mpo_destroy_vnode_label; - mpo_cleanup_sysv_msgmsg_t mpo_cleanup_sysv_msgmsg; - mpo_cleanup_sysv_msgqueue_t mpo_cleanup_sysv_msgqueue; - mpo_cleanup_sysv_sem_t mpo_cleanup_sysv_sem; - mpo_cleanup_sysv_shm_t mpo_cleanup_sysv_shm; - mpo_copy_cred_label_t mpo_copy_cred_label; - mpo_copy_ifnet_label_t mpo_copy_ifnet_label; - mpo_copy_mbuf_label_t mpo_copy_mbuf_label; - mpo_placeholder_t _mpo_placeholder2; - mpo_copy_pipe_label_t mpo_copy_pipe_label; - mpo_copy_socket_label_t mpo_copy_socket_label; - mpo_copy_vnode_label_t mpo_copy_vnode_label; - mpo_externalize_cred_label_t mpo_externalize_cred_label; - mpo_externalize_ifnet_label_t mpo_externalize_ifnet_label; - mpo_placeholder_t _mpo_placeholder3; - mpo_externalize_pipe_label_t mpo_externalize_pipe_label; - mpo_externalize_socket_label_t mpo_externalize_socket_label; - mpo_externalize_socket_peer_label_t mpo_externalize_socket_peer_label; - mpo_externalize_vnode_label_t mpo_externalize_vnode_label; - mpo_internalize_cred_label_t mpo_internalize_cred_label; - mpo_internalize_ifnet_label_t mpo_internalize_ifnet_label; - mpo_placeholder_t _mpo_placeholder4; - mpo_internalize_pipe_label_t mpo_internalize_pipe_label; - mpo_internalize_socket_label_t mpo_internalize_socket_label; - mpo_internalize_vnode_label_t mpo_internalize_vnode_label; - - /* - * Labeling event operations: file system objects, and things that - * look a lot like file system objects. - */ - mpo_associate_vnode_devfs_t mpo_associate_vnode_devfs; - mpo_associate_vnode_extattr_t mpo_associate_vnode_extattr; - mpo_associate_vnode_singlelabel_t mpo_associate_vnode_singlelabel; - mpo_create_devfs_device_t mpo_create_devfs_device; - mpo_create_devfs_directory_t mpo_create_devfs_directory; - mpo_create_devfs_symlink_t mpo_create_devfs_symlink; - mpo_placeholder_t _mpo_placeholder5; - mpo_create_vnode_extattr_t mpo_create_vnode_extattr; - mpo_create_mount_t mpo_create_mount; - mpo_relabel_vnode_t mpo_relabel_vnode; - mpo_setlabel_vnode_extattr_t mpo_setlabel_vnode_extattr; - mpo_update_devfsdirent_t mpo_update_devfsdirent; - - /* - * Labeling event operations: IPC objects. - */ - mpo_create_mbuf_from_socket_t mpo_create_mbuf_from_socket; - mpo_create_socket_t mpo_create_socket; - mpo_create_socket_from_socket_t mpo_create_socket_from_socket; - mpo_relabel_socket_t mpo_relabel_socket; - mpo_relabel_pipe_t mpo_relabel_pipe; - mpo_set_socket_peer_from_mbuf_t mpo_set_socket_peer_from_mbuf; - mpo_set_socket_peer_from_socket_t mpo_set_socket_peer_from_socket; - mpo_create_pipe_t mpo_create_pipe; - - /* - * Labeling event operations: System V IPC primitives. - */ - mpo_create_sysv_msgmsg_t mpo_create_sysv_msgmsg; - mpo_create_sysv_msgqueue_t mpo_create_sysv_msgqueue; - mpo_create_sysv_sem_t mpo_create_sysv_sem; - mpo_create_sysv_shm_t mpo_create_sysv_shm; - - /* - * Labeling event operations: POSIX (global/inter-process) semaphores. - */ - mpo_create_posix_sem_t mpo_create_posix_sem; - - /* - * Labeling event operations: network objects. - */ - mpo_create_bpfdesc_t mpo_create_bpfdesc; - mpo_create_ifnet_t mpo_create_ifnet; - mpo_create_inpcb_from_socket_t mpo_create_inpcb_from_socket; - mpo_create_ipq_t mpo_create_ipq; - mpo_create_datagram_from_ipq mpo_create_datagram_from_ipq; - mpo_create_fragment_t mpo_create_fragment; - mpo_create_mbuf_from_inpcb_t mpo_create_mbuf_from_inpcb; - mpo_create_mbuf_linklayer_t mpo_create_mbuf_linklayer; - mpo_create_mbuf_from_bpfdesc_t mpo_create_mbuf_from_bpfdesc; - mpo_create_mbuf_from_ifnet_t mpo_create_mbuf_from_ifnet; - mpo_create_mbuf_multicast_encap_t mpo_create_mbuf_multicast_encap; - mpo_create_mbuf_netlayer_t mpo_create_mbuf_netlayer; - mpo_fragment_match_t mpo_fragment_match; - mpo_reflect_mbuf_icmp_t mpo_reflect_mbuf_icmp; - mpo_reflect_mbuf_tcp_t mpo_reflect_mbuf_tcp; - mpo_relabel_ifnet_t mpo_relabel_ifnet; - mpo_update_ipq_t mpo_update_ipq; - mpo_inpcb_sosetlabel_t mpo_inpcb_sosetlabel; - - /* - * Labeling event operations: processes. - */ - mpo_execve_transition_t mpo_execve_transition; - mpo_execve_will_transition_t mpo_execve_will_transition; - mpo_create_proc0_t mpo_create_proc0; - mpo_create_proc1_t mpo_create_proc1; - mpo_relabel_cred_t mpo_relabel_cred; - mpo_placeholder_t _mpo_placeholder6; - mpo_thread_userret_t mpo_thread_userret; - - /* - * Access control checks. - */ - mpo_check_bpfdesc_receive_t mpo_check_bpfdesc_receive; - mpo_placeholder_t _mpo_placeholder7; - mpo_check_cred_relabel_t mpo_check_cred_relabel; - mpo_check_cred_visible_t mpo_check_cred_visible; - mpo_placeholder_t _mpo_placeholder8; - mpo_placeholder_t _mpo_placeholder9; - mpo_placeholder_t _mpo_placeholder10; - mpo_placeholder_t _mpo_placeholder11; - mpo_placeholder_t _mpo_placeholder12; - mpo_placeholder_t _mpo_placeholder13; - mpo_placeholder_t _mpo_placeholder14; - mpo_placeholder_t _mpo_placeholder15; - mpo_placeholder_t _mpo_placeholder16; - mpo_placeholder_t _mpo_placeholder17; - mpo_placeholder_t _mpo_placeholder18; - mpo_check_ifnet_relabel_t mpo_check_ifnet_relabel; - mpo_check_ifnet_transmit_t mpo_check_ifnet_transmit; - mpo_check_inpcb_deliver_t mpo_check_inpcb_deliver; - mpo_check_sysv_msgmsq_t mpo_check_sysv_msgmsq; - mpo_check_sysv_msgrcv_t mpo_check_sysv_msgrcv; - mpo_check_sysv_msgrmid_t mpo_check_sysv_msgrmid; - mpo_check_sysv_msqget_t mpo_check_sysv_msqget; - mpo_check_sysv_msqsnd_t mpo_check_sysv_msqsnd; - mpo_check_sysv_msqrcv_t mpo_check_sysv_msqrcv; - mpo_check_sysv_msqctl_t mpo_check_sysv_msqctl; - mpo_check_sysv_semctl_t mpo_check_sysv_semctl; - mpo_check_sysv_semget_t mpo_check_sysv_semget; - mpo_check_sysv_semop_t mpo_check_sysv_semop; - mpo_check_sysv_shmat_t mpo_check_sysv_shmat; - mpo_check_sysv_shmctl_t mpo_check_sysv_shmctl; - mpo_check_sysv_shmdt_t mpo_check_sysv_shmdt; - mpo_check_sysv_shmget_t mpo_check_sysv_shmget; - mpo_check_kenv_dump_t mpo_check_kenv_dump; - mpo_check_kenv_get_t mpo_check_kenv_get; - mpo_check_kenv_set_t mpo_check_kenv_set; - mpo_check_kenv_unset_t mpo_check_kenv_unset; - mpo_check_kld_load_t mpo_check_kld_load; - mpo_check_kld_stat_t mpo_check_kld_stat; - mpo_check_kld_unload_t mpo_check_kld_unload; - mpo_placeholder_t _mpo_placeholder19; - mpo_placeholder_t _mpo_placeholder20; - mpo_check_mount_stat_t mpo_check_mount_stat; - mpo_placeholder_t _mpo_placeholder_21; - mpo_check_pipe_ioctl_t mpo_check_pipe_ioctl; - mpo_check_pipe_poll_t mpo_check_pipe_poll; - mpo_check_pipe_read_t mpo_check_pipe_read; - mpo_check_pipe_relabel_t mpo_check_pipe_relabel; - mpo_check_pipe_stat_t mpo_check_pipe_stat; - mpo_check_pipe_write_t mpo_check_pipe_write; - mpo_check_posix_sem_destroy_t mpo_check_posix_sem_destroy; - mpo_check_posix_sem_getvalue_t mpo_check_posix_sem_getvalue; - mpo_check_posix_sem_open_t mpo_check_posix_sem_open; - mpo_check_posix_sem_post_t mpo_check_posix_sem_post; - mpo_check_posix_sem_unlink_t mpo_check_posix_sem_unlink; - mpo_check_posix_sem_wait_t mpo_check_posix_sem_wait; - mpo_check_proc_debug_t mpo_check_proc_debug; - mpo_check_proc_sched_t mpo_check_proc_sched; - mpo_check_proc_setuid_t mpo_check_proc_setuid; - mpo_check_proc_seteuid_t mpo_check_proc_seteuid; - mpo_check_proc_setgid_t mpo_check_proc_setgid; - mpo_check_proc_setegid_t mpo_check_proc_setegid; - mpo_check_proc_setgroups_t mpo_check_proc_setgroups; - mpo_check_proc_setreuid_t mpo_check_proc_setreuid; - mpo_check_proc_setregid_t mpo_check_proc_setregid; - mpo_check_proc_setresuid_t mpo_check_proc_setresuid; - mpo_check_proc_setresgid_t mpo_check_proc_setresgid; - mpo_check_proc_signal_t mpo_check_proc_signal; - mpo_check_proc_wait_t mpo_check_proc_wait; - mpo_check_socket_accept_t mpo_check_socket_accept; - mpo_check_socket_bind_t mpo_check_socket_bind; - mpo_check_socket_connect_t mpo_check_socket_connect; - mpo_check_socket_create_t mpo_check_socket_create; - mpo_check_socket_deliver_t mpo_check_socket_deliver; - mpo_placeholder_t _mpo_placeholder22; - mpo_check_socket_listen_t mpo_check_socket_listen; - mpo_check_socket_poll_t mpo_check_socket_poll; - mpo_check_socket_receive_t mpo_check_socket_receive; - mpo_check_socket_relabel_t mpo_check_socket_relabel; - mpo_check_socket_send_t mpo_check_socket_send; - mpo_check_socket_stat_t mpo_check_socket_stat; - mpo_check_socket_visible_t mpo_check_socket_visible; - mpo_check_sysarch_ioperm_t mpo_check_sysarch_ioperm; - mpo_check_system_acct_t mpo_check_system_acct; - mpo_check_system_nfsd_t mpo_check_system_nfsd; - mpo_check_system_reboot_t mpo_check_system_reboot; - mpo_check_system_settime_t mpo_check_system_settime; - mpo_check_system_swapon_t mpo_check_system_swapon; - mpo_check_system_swapoff_t mpo_check_system_swapoff; - mpo_check_system_sysctl_t mpo_check_system_sysctl; - mpo_placeholder_t _mpo_placeholder23; - mpo_check_vnode_access_t mpo_check_vnode_access; - mpo_check_vnode_chdir_t mpo_check_vnode_chdir; - mpo_check_vnode_chroot_t mpo_check_vnode_chroot; - mpo_check_vnode_create_t mpo_check_vnode_create; - mpo_check_vnode_delete_t mpo_check_vnode_delete; - mpo_check_vnode_deleteacl_t mpo_check_vnode_deleteacl; - mpo_check_vnode_deleteextattr_t mpo_check_vnode_deleteextattr; - mpo_check_vnode_exec_t mpo_check_vnode_exec; - mpo_check_vnode_getacl_t mpo_check_vnode_getacl; - mpo_check_vnode_getextattr_t mpo_check_vnode_getextattr; - mpo_placeholder_t _mpo_placeholder24; - mpo_check_vnode_link_t mpo_check_vnode_link; - mpo_check_vnode_listextattr_t mpo_check_vnode_listextattr; - mpo_check_vnode_lookup_t mpo_check_vnode_lookup; - mpo_check_vnode_mmap_t mpo_check_vnode_mmap; - mpo_check_vnode_mmap_downgrade_t mpo_check_vnode_mmap_downgrade; - mpo_check_vnode_mprotect_t mpo_check_vnode_mprotect; - mpo_check_vnode_open_t mpo_check_vnode_open; - mpo_check_vnode_poll_t mpo_check_vnode_poll; - mpo_check_vnode_read_t mpo_check_vnode_read; - mpo_check_vnode_readdir_t mpo_check_vnode_readdir; - mpo_check_vnode_readlink_t mpo_check_vnode_readlink; - mpo_check_vnode_relabel_t mpo_check_vnode_relabel; - mpo_check_vnode_rename_from_t mpo_check_vnode_rename_from; - mpo_check_vnode_rename_to_t mpo_check_vnode_rename_to; - mpo_check_vnode_revoke_t mpo_check_vnode_revoke; - mpo_check_vnode_setacl_t mpo_check_vnode_setacl; - mpo_check_vnode_setextattr_t mpo_check_vnode_setextattr; - mpo_check_vnode_setflags_t mpo_check_vnode_setflags; - mpo_check_vnode_setmode_t mpo_check_vnode_setmode; - mpo_check_vnode_setowner_t mpo_check_vnode_setowner; - mpo_check_vnode_setutimes_t mpo_check_vnode_setutimes; - mpo_check_vnode_stat_t mpo_check_vnode_stat; - mpo_check_vnode_write_t mpo_check_vnode_write; - mpo_associate_nfsd_label_t mpo_associate_nfsd_label; + mpo_sysv_sem_init_label_t mpo_sysv_sem_init_label; + mpo_sysv_sem_destroy_label_t mpo_sysv_sem_destroy_label; + mpo_sysv_sem_cleanup_t mpo_sysv_sem_cleanup; + mpo_sysv_sem_create_t mpo_sysv_sem_create; + mpo_sysv_sem_check_semctl_t mpo_sysv_sem_check_semctl; + mpo_sysv_sem_check_semget_t mpo_sysv_sem_check_semget; + mpo_sysv_sem_check_semop_t mpo_sysv_sem_check_semop; }; /* From owner-p4-projects@FreeBSD.ORG Thu Jul 6 00:01:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2D13016A4E5; Thu, 6 Jul 2006 00:01:13 +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 E47E016A4DD for ; Thu, 6 Jul 2006 00:01:12 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7AE4F43D45 for ; Thu, 6 Jul 2006 00:01:12 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6601CDd084577 for ; Thu, 6 Jul 2006 00:01:12 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6601CK9084574 for perforce@freebsd.org; Thu, 6 Jul 2006 00:01:12 GMT (envelope-from cognet@freebsd.org) Date: Thu, 6 Jul 2006 00:01:12 GMT Message-Id: <200607060001.k6601CK9084574@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100676 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 00:01:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=100676 Change 100676 by cognet@cognet on 2006/07/06 00:00:39 Remove disassem.c as well. Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#3 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#3 (text+ko) ==== @@ -4,7 +4,6 @@ mips/mips/db_disasm.c optional ddb mips/mips/db_interface.c optional ddb mips/mips/db_trace.c optional ddb -mips/mips/disassem.c optional ddb mips/mips/dump_machdep.c standard mips/mips/elf_machdep.c standard mips/mips/in_cksum.c optional inet From owner-p4-projects@FreeBSD.ORG Thu Jul 6 00:07:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7FEAC16A4E2; Thu, 6 Jul 2006 00:07:22 +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 43D8E16A4E1 for ; Thu, 6 Jul 2006 00:07:22 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 824EE43D6E for ; Thu, 6 Jul 2006 00:07:20 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6607KbV086026 for ; Thu, 6 Jul 2006 00:07:20 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6607KrT086023 for perforce@freebsd.org; Thu, 6 Jul 2006 00:07:20 GMT (envelope-from cognet@freebsd.org) Date: Thu, 6 Jul 2006 00:07:20 GMT Message-Id: <200607060007.k6607KrT086023@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100677 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 00:07:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=100677 Change 100677 by cognet@cognet on 2006/07/06 00:07:03 Protect macro variables. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/endian.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/endian.h#2 (text+ko) ==== @@ -71,14 +71,14 @@ #define __is_constant(x) 0 #endif -#define __bswap16_const(x) ((x >> 8) | ((x << 8) & 0xff00)) -#define __bswap32_const(x) ((x >> 24) | ((x >> 8) & 0xff00) | \ - ((x << 8) & 0xff0000) | ((x << 24) & 0xff000000)) -#define __bswap64_const(x) ((x >> 56) | ((x >> 40) & 0xff00) | \ - ((x >> 24) & 0xff0000) | ((x >> 8) & 0xff000000) | \ - ((x << 8) & ((__uint64_t)0xff << 32)) | \ - ((x << 24) & ((__uint64_t)0xff << 40)) | \ - ((x << 40) & ((__uint64_t)0xff << 48)) | ((x << 56))) +#define __bswap16_const(x) (((x) >> 8) | (((x) << 8) & 0xff00)) +#define __bswap32_const(x) (((x) >> 24) | (((x) >> 8) & 0xff00) | \ + (((x) << 8) & 0xff0000) | (((x) << 24) & 0xff000000)) +#define __bswap64_const(x) (((x) >> 56) | (((x) >> 40) & 0xff00) | \ + (((x) >> 24) & 0xff0000) | (((x) >> 8) & 0xff000000) | \ + (((x) << 8) & ((__uint64_t)0xff << 32)) | \ + (((x) << 24) & ((__uint64_t)0xff << 40)) | \ + (((x) << 40) & ((__uint64_t)0xff << 48)) | (((x) << 56))) static __inline __uint16_t __bswap16_var(__uint16_t _x) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 00:11:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 89BAA16A4E0; Thu, 6 Jul 2006 00:11:26 +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 62F2316A4DE for ; Thu, 6 Jul 2006 00:11:26 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 14EAC43D67 for ; Thu, 6 Jul 2006 00:11:26 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k660BP2X086202 for ; Thu, 6 Jul 2006 00:11:25 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k660BPda086199 for perforce@freebsd.org; Thu, 6 Jul 2006 00:11:25 GMT (envelope-from cognet@freebsd.org) Date: Thu, 6 Jul 2006 00:11:25 GMT Message-Id: <200607060011.k660BPda086199@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100678 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 00:11:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=100678 Change 100678 by cognet@cognet on 2006/07/06 00:10:44 Define KINFO_PROC_SIZE for mips. Affected files ... .. //depot/projects/mips2/src/sys/sys/user.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/sys/user.h#2 (text+ko) ==== @@ -100,6 +100,9 @@ #ifdef __sparc64__ #define KINFO_PROC_SIZE 1088 #endif +#ifdef __mips__ +#define KINFO_PROC_SIZE 768 +#endif #ifndef KINFO_PROC_SIZE #error "Unknown architecture" #endif From owner-p4-projects@FreeBSD.ORG Thu Jul 6 00:14:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C54BA16A4E0; Thu, 6 Jul 2006 00:14:30 +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 A26A016A4DE for ; Thu, 6 Jul 2006 00:14:30 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 686D143D45 for ; Thu, 6 Jul 2006 00:14:30 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k660EUcX086327 for ; Thu, 6 Jul 2006 00:14:30 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k660EUJ5086324 for perforce@freebsd.org; Thu, 6 Jul 2006 00:14:30 GMT (envelope-from cognet@freebsd.org) Date: Thu, 6 Jul 2006 00:14:30 GMT Message-Id: <200607060014.k660EUJ5086324@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100679 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 00:14:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=100679 Change 100679 by cognet@cognet on 2006/07/06 00:13:48 Bring in a bunch of empty files (except in_cksum.c, which actually is the ppc version). Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/busdma_machdep.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/db_disasm.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/db_interface.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/db_trace.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/dump_machdep.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/elf_machdep.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/in_cksum.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/intr.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/locore.S#1 add .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/mem.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/pmap.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/sys_machdep.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/trap.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/uio_machdep.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jul 6 00:22:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 893F016A4DE; Thu, 6 Jul 2006 00: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 6529B16A4DA for ; Thu, 6 Jul 2006 00:22:41 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2DA7243D49 for ; Thu, 6 Jul 2006 00:22:41 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k660MfD1086723 for ; Thu, 6 Jul 2006 00:22:41 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k660MeV2086720 for perforce@freebsd.org; Thu, 6 Jul 2006 00:22:40 GMT (envelope-from cognet@freebsd.org) Date: Thu, 6 Jul 2006 00:22:40 GMT Message-Id: <200607060022.k660MeV2086720@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100680 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 00:22:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=100680 Change 100680 by cognet@cognet on 2006/07/06 00:22:06 Keep this in alphabetical order. Affected files ... .. //depot/projects/mips2/src/sys/sys/user.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/sys/user.h#3 (text+ko) ==== @@ -94,15 +94,15 @@ #ifdef __i386__ #define KINFO_PROC_SIZE 768 #endif +#ifdef __mips__ +#define KINFO_PROC_SIZE 768 +#endif #ifdef __powerpc__ #define KINFO_PROC_SIZE 768 #endif #ifdef __sparc64__ #define KINFO_PROC_SIZE 1088 #endif -#ifdef __mips__ -#define KINFO_PROC_SIZE 768 -#endif #ifndef KINFO_PROC_SIZE #error "Unknown architecture" #endif From owner-p4-projects@FreeBSD.ORG Thu Jul 6 00:24:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ADD6F16A523; Thu, 6 Jul 2006 00:24:44 +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 70EB816A521 for ; Thu, 6 Jul 2006 00:24:44 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1244443D45 for ; Thu, 6 Jul 2006 00:24:44 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k660Oh92086857 for ; Thu, 6 Jul 2006 00:24:43 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k660OhcM086854 for perforce@freebsd.org; Thu, 6 Jul 2006 00:24:43 GMT (envelope-from cognet@freebsd.org) Date: Thu, 6 Jul 2006 00:24:43 GMT Message-Id: <200607060024.k660OhcM086854@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100681 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 00:24:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=100681 Change 100681 by cognet@cognet on 2006/07/06 00:23:55 Ooops we use a 64bits time_t, so use the good value. Affected files ... .. //depot/projects/mips2/src/sys/sys/user.h#4 edit Differences ... ==== //depot/projects/mips2/src/sys/sys/user.h#4 (text+ko) ==== @@ -95,7 +95,7 @@ #define KINFO_PROC_SIZE 768 #endif #ifdef __mips__ -#define KINFO_PROC_SIZE 768 +#define KINFO_PROC_SIZE 792 #endif #ifdef __powerpc__ #define KINFO_PROC_SIZE 768 From owner-p4-projects@FreeBSD.ORG Thu Jul 6 00:52:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0356716A4E5; Thu, 6 Jul 2006 00:52:02 +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 AFDFD16A4E1 for ; Thu, 6 Jul 2006 00:52:01 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A3E1F43D66 for ; Thu, 6 Jul 2006 00:51:48 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k660pmW5096032 for ; Thu, 6 Jul 2006 00:51:48 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k660odLs095880 for perforce@freebsd.org; Thu, 6 Jul 2006 00:50:39 GMT (envelope-from peter@freebsd.org) Date: Thu, 6 Jul 2006 00:50:39 GMT Message-Id: <200607060050.k660odLs095880@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 100683 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 00:52:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=100683 Change 100683 by peter@peter_daintree on 2006/07/06 00:49:58 IFC @100673 Affected files ... .. //depot/projects/hammer/MAINTAINERS#41 integrate .. //depot/projects/hammer/Makefile#39 integrate .. //depot/projects/hammer/Makefile.inc1#116 integrate .. //depot/projects/hammer/ObsoleteFiles.inc#19 integrate .. //depot/projects/hammer/README#4 integrate .. //depot/projects/hammer/UPDATING#95 integrate .. //depot/projects/hammer/bin/cp/cp.c#12 integrate .. //depot/projects/hammer/bin/pax/pax.1#9 integrate .. //depot/projects/hammer/bin/setfacl/setfacl.1#9 integrate .. //depot/projects/hammer/bin/setfacl/setfacl.c#7 integrate .. //depot/projects/hammer/bin/sh/cd.c#4 integrate .. //depot/projects/hammer/bin/sh/eval.c#14 integrate .. //depot/projects/hammer/bin/sh/sh.1#26 integrate .. //depot/projects/hammer/bin/sh/var.c#11 integrate .. //depot/projects/hammer/bin/sh/var.h#5 integrate .. //depot/projects/hammer/contrib/binutils/bfd/elf64-sparc.c#5 integrate .. //depot/projects/hammer/contrib/bsnmp/NEWS#10 integrate .. //depot/projects/hammer/contrib/bsnmp/gensnmpdef/gensnmpdef.1#5 integrate .. //depot/projects/hammer/contrib/bsnmp/gensnmpdef/gensnmpdef.c#3 integrate .. //depot/projects/hammer/contrib/bsnmp/gensnmptree/gensnmptree.1#7 integrate .. //depot/projects/hammer/contrib/bsnmp/gensnmptree/gensnmptree.c#10 integrate .. //depot/projects/hammer/contrib/file/ChangeLog#3 integrate .. //depot/projects/hammer/contrib/file/FREEBSD-upgrade#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/adventure#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/amigaos#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/animation#5 integrate .. //depot/projects/hammer/contrib/file/Magdir/apple#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/archive#6 integrate .. //depot/projects/hammer/contrib/file/Magdir/audio#6 integrate .. //depot/projects/hammer/contrib/file/Magdir/basis#1 branch .. //depot/projects/hammer/contrib/file/Magdir/bflt#1 branch .. //depot/projects/hammer/contrib/file/Magdir/bout#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/btsnoop#1 branch .. //depot/projects/hammer/contrib/file/Magdir/c64#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/cad#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/commands#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/compress#5 integrate .. //depot/projects/hammer/contrib/file/Magdir/console#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/cracklib#1 branch .. //depot/projects/hammer/contrib/file/Magdir/ctags#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/database#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/diff#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/digital#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/dump#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/elf#6 integrate .. //depot/projects/hammer/contrib/file/Magdir/filesystems#6 integrate .. //depot/projects/hammer/contrib/file/Magdir/flash#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/fsav#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/gnu#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/iff#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/images#5 integrate .. //depot/projects/hammer/contrib/file/Magdir/java#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/linux#5 integrate .. //depot/projects/hammer/contrib/file/Magdir/lisp#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/mach#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/macintosh#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/mail.news#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/maple#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/misctools#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/msdos#5 integrate .. //depot/projects/hammer/contrib/file/Magdir/mup#1 branch .. //depot/projects/hammer/contrib/file/Magdir/ncr#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/perl#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/printer#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/psion#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/python#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/riff#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/scientific#1 branch .. //depot/projects/hammer/contrib/file/Magdir/sgi#3 integrate .. //depot/projects/hammer/contrib/file/Magdir/sharc#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/sql#2 integrate .. //depot/projects/hammer/contrib/file/Magdir/varied.out#4 integrate .. //depot/projects/hammer/contrib/file/Magdir/wordprocessors#2 integrate .. //depot/projects/hammer/contrib/file/Makefile.am#6 integrate .. //depot/projects/hammer/contrib/file/Makefile.in#6 integrate .. //depot/projects/hammer/contrib/file/aclocal.m4#6 integrate .. //depot/projects/hammer/contrib/file/apprentice.c#6 integrate .. //depot/projects/hammer/contrib/file/ascmagic.c#6 integrate .. //depot/projects/hammer/contrib/file/compress.c#5 integrate .. //depot/projects/hammer/contrib/file/config.h.in#6 integrate .. //depot/projects/hammer/contrib/file/configure#6 integrate .. //depot/projects/hammer/contrib/file/configure.in#6 integrate .. //depot/projects/hammer/contrib/file/file.c#6 integrate .. //depot/projects/hammer/contrib/file/file.h#6 integrate .. //depot/projects/hammer/contrib/file/file.man#5 integrate .. //depot/projects/hammer/contrib/file/fsmagic.c#5 integrate .. //depot/projects/hammer/contrib/file/funcs.c#3 integrate .. //depot/projects/hammer/contrib/file/libmagic.man#2 integrate .. //depot/projects/hammer/contrib/file/magic.c#3 integrate .. //depot/projects/hammer/contrib/file/magic.man#5 integrate .. //depot/projects/hammer/contrib/file/magic.mime#6 integrate .. //depot/projects/hammer/contrib/file/magic2mime#3 integrate .. //depot/projects/hammer/contrib/file/patchlevel.h#6 integrate .. //depot/projects/hammer/contrib/file/print.c#6 integrate .. //depot/projects/hammer/contrib/file/readelf.c#7 integrate .. //depot/projects/hammer/contrib/file/readelf.h#5 integrate .. //depot/projects/hammer/contrib/file/softmagic.c#6 integrate .. //depot/projects/hammer/contrib/netcat/atomicio.c#2 integrate .. //depot/projects/hammer/contrib/netcat/atomicio.h#1 branch .. //depot/projects/hammer/contrib/netcat/nc.1#4 integrate .. //depot/projects/hammer/contrib/netcat/netcat.c#2 integrate .. //depot/projects/hammer/contrib/netcat/socks.c#2 integrate .. //depot/projects/hammer/contrib/openbsm/FREEBSD-upgrade#3 integrate .. //depot/projects/hammer/contrib/openbsm/HISTORY#2 integrate .. //depot/projects/hammer/contrib/openbsm/Makefile.am#2 integrate .. //depot/projects/hammer/contrib/openbsm/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/openbsm/README#2 integrate .. //depot/projects/hammer/contrib/openbsm/TODO#2 integrate .. //depot/projects/hammer/contrib/openbsm/VERSION#2 integrate .. //depot/projects/hammer/contrib/openbsm/bin/Makefile.am#2 integrate .. //depot/projects/hammer/contrib/openbsm/bin/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/openbsm/bin/auditd/auditd.c#2 integrate .. //depot/projects/hammer/contrib/openbsm/bin/auditfilterd/Makefile.am#1 branch .. //depot/projects/hammer/contrib/openbsm/bin/auditfilterd/Makefile.in#1 branch .. //depot/projects/hammer/contrib/openbsm/bin/auditfilterd/auditfilterd.8#1 branch .. //depot/projects/hammer/contrib/openbsm/bin/auditfilterd/auditfilterd.c#1 branch .. //depot/projects/hammer/contrib/openbsm/bin/auditfilterd/auditfilterd.h#1 branch .. //depot/projects/hammer/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#1 branch .. //depot/projects/hammer/contrib/openbsm/bin/auditreduce/auditreduce.c#2 integrate .. //depot/projects/hammer/contrib/openbsm/bsm/Makefile.am#2 integrate .. //depot/projects/hammer/contrib/openbsm/bsm/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/openbsm/bsm/audit.h#2 integrate .. //depot/projects/hammer/contrib/openbsm/bsm/audit_filter.h#1 branch .. //depot/projects/hammer/contrib/openbsm/bsm/audit_kevents.h#2 integrate .. //depot/projects/hammer/contrib/openbsm/bsm/audit_record.h#2 integrate .. //depot/projects/hammer/contrib/openbsm/bsm/libbsm.h#2 integrate .. //depot/projects/hammer/contrib/openbsm/config/config.h#2 integrate .. //depot/projects/hammer/contrib/openbsm/config/config.h.in#2 integrate .. //depot/projects/hammer/contrib/openbsm/config/ltmain.sh#2 integrate .. //depot/projects/hammer/contrib/openbsm/configure#2 integrate .. //depot/projects/hammer/contrib/openbsm/configure.ac#2 integrate .. //depot/projects/hammer/contrib/openbsm/etc/audit_event#3 integrate .. //depot/projects/hammer/contrib/openbsm/etc/audit_filter#1 branch .. //depot/projects/hammer/contrib/openbsm/libbsm/Makefile.am#2 integrate .. //depot/projects/hammer/contrib/openbsm/libbsm/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/openbsm/libbsm/au_open.3#1 branch .. //depot/projects/hammer/contrib/openbsm/libbsm/au_token.3#2 integrate .. //depot/projects/hammer/contrib/openbsm/libbsm/audit_submit.3#1 branch .. //depot/projects/hammer/contrib/openbsm/libbsm/bsm_audit.c#2 integrate .. //depot/projects/hammer/contrib/openbsm/libbsm/bsm_io.c#2 integrate .. //depot/projects/hammer/contrib/openbsm/libbsm/bsm_notify.c#2 integrate .. //depot/projects/hammer/contrib/openbsm/libbsm/bsm_token.c#2 integrate .. //depot/projects/hammer/contrib/openbsm/libbsm/bsm_wrappers.c#2 integrate .. //depot/projects/hammer/contrib/openbsm/libbsm/libbsm.3#2 integrate .. //depot/projects/hammer/contrib/openbsm/man/audit.log.5#2 integrate .. //depot/projects/hammer/contrib/openbsm/man/auditctl.2#2 integrate .. //depot/projects/hammer/contrib/openbsm/modules/Makefile.am#1 branch .. //depot/projects/hammer/contrib/openbsm/modules/Makefile.in#1 branch .. //depot/projects/hammer/contrib/openbsm/modules/auditfilter_noop/Makefile.am#1 branch .. //depot/projects/hammer/contrib/openbsm/modules/auditfilter_noop/Makefile.in#1 branch .. //depot/projects/hammer/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#1 branch .. //depot/projects/hammer/contrib/openbsm/test/Makefile.am#1 branch .. //depot/projects/hammer/contrib/openbsm/test/Makefile.in#1 branch .. //depot/projects/hammer/contrib/openbsm/test/bsm/Makefile.am#1 branch .. //depot/projects/hammer/contrib/openbsm/test/bsm/Makefile.in#1 branch .. //depot/projects/hammer/contrib/openbsm/test/bsm/generate.c#1 branch .. //depot/projects/hammer/contrib/pf/man/pfsync.4#9 integrate .. //depot/projects/hammer/contrib/sendmail/FREEBSD-upgrade#14 integrate .. //depot/projects/hammer/contrib/sendmail/PGPKEYS#7 integrate .. //depot/projects/hammer/contrib/sendmail/RELEASE_NOTES#11 integrate .. //depot/projects/hammer/contrib/sendmail/cf/README#10 integrate .. //depot/projects/hammer/contrib/sendmail/cf/cf/submit.cf#11 integrate .. //depot/projects/hammer/contrib/sendmail/cf/cf/submit.mc#5 integrate .. //depot/projects/hammer/contrib/sendmail/cf/feature/dnsbl.m4#4 integrate .. //depot/projects/hammer/contrib/sendmail/cf/feature/enhdnsbl.m4#3 integrate .. //depot/projects/hammer/contrib/sendmail/cf/m4/proto.m4#10 integrate .. //depot/projects/hammer/contrib/sendmail/cf/m4/version.m4#11 integrate .. //depot/projects/hammer/contrib/sendmail/include/libmilter/mfapi.h#6 integrate .. //depot/projects/hammer/contrib/sendmail/libmilter/docs/xxfi_header.html#4 integrate .. //depot/projects/hammer/contrib/sendmail/libmilter/engine.c#8 integrate .. //depot/projects/hammer/contrib/sendmail/libsm/t-memstat.c#2 integrate .. //depot/projects/hammer/contrib/sendmail/src/README#10 integrate .. //depot/projects/hammer/contrib/sendmail/src/bf.c#5 integrate .. //depot/projects/hammer/contrib/sendmail/src/collect.c#10 integrate .. //depot/projects/hammer/contrib/sendmail/src/conf.c#12 integrate .. //depot/projects/hammer/contrib/sendmail/src/daemon.c#9 integrate .. //depot/projects/hammer/contrib/sendmail/src/deliver.c#11 integrate .. //depot/projects/hammer/contrib/sendmail/src/domain.c#8 integrate .. //depot/projects/hammer/contrib/sendmail/src/envelope.c#6 integrate .. //depot/projects/hammer/contrib/sendmail/src/headers.c#11 integrate .. //depot/projects/hammer/contrib/sendmail/src/helpfile#4 integrate .. //depot/projects/hammer/contrib/sendmail/src/main.c#9 integrate .. //depot/projects/hammer/contrib/sendmail/src/map.c#9 integrate .. //depot/projects/hammer/contrib/sendmail/src/mci.c#9 integrate .. //depot/projects/hammer/contrib/sendmail/src/mime.c#7 integrate .. //depot/projects/hammer/contrib/sendmail/src/parseaddr.c#10 integrate .. //depot/projects/hammer/contrib/sendmail/src/queue.c#11 integrate .. //depot/projects/hammer/contrib/sendmail/src/savemail.c#7 integrate .. //depot/projects/hammer/contrib/sendmail/src/sendmail.h#11 integrate .. //depot/projects/hammer/contrib/sendmail/src/sfsasl.c#8 integrate .. //depot/projects/hammer/contrib/sendmail/src/sfsasl.h#3 integrate .. //depot/projects/hammer/contrib/sendmail/src/srvrsmtp.c#11 integrate .. //depot/projects/hammer/contrib/sendmail/src/tls.c#9 integrate .. //depot/projects/hammer/contrib/sendmail/src/util.c#8 integrate .. //depot/projects/hammer/contrib/sendmail/src/version.c#11 integrate .. //depot/projects/hammer/contrib/tcpdump/tcpdump.1#6 integrate .. //depot/projects/hammer/contrib/top/top.X#8 integrate .. //depot/projects/hammer/contrib/traceroute/traceroute.8#4 integrate .. //depot/projects/hammer/contrib/traceroute/traceroute.c#6 integrate .. //depot/projects/hammer/crypto/openssh/config.h#11 integrate .. //depot/projects/hammer/crypto/openssh/loginrec.c#11 integrate .. //depot/projects/hammer/crypto/openssh/ssh_namespace.h#1 branch .. //depot/projects/hammer/etc/Makefile#51 integrate .. //depot/projects/hammer/etc/bluetooth/hcsecd.conf#3 integrate .. //depot/projects/hammer/etc/defaults/periodic.conf#17 integrate .. //depot/projects/hammer/etc/defaults/rc.conf#71 integrate .. //depot/projects/hammer/etc/devd.conf#27 integrate .. //depot/projects/hammer/etc/hosts.allow#6 integrate .. //depot/projects/hammer/etc/mtree/BSD.root.dist#17 integrate .. //depot/projects/hammer/etc/mtree/BSD.usr.dist#35 integrate .. //depot/projects/hammer/etc/netstart#7 integrate .. //depot/projects/hammer/etc/nsswitch.conf#1 branch .. //depot/projects/hammer/etc/periodic/daily/470.status-named#6 integrate .. //depot/projects/hammer/etc/periodic/security/600.ip6fwdenied#5 delete .. //depot/projects/hammer/etc/periodic/security/650.ip6fwlimit#5 delete .. //depot/projects/hammer/etc/periodic/security/Makefile#4 integrate .. //depot/projects/hammer/etc/rc.d/Makefile#50 integrate .. //depot/projects/hammer/etc/rc.d/abi#9 integrate .. //depot/projects/hammer/etc/rc.d/auditd#2 integrate .. //depot/projects/hammer/etc/rc.d/bridge#1 branch .. //depot/projects/hammer/etc/rc.d/cached#2 integrate .. //depot/projects/hammer/etc/rc.d/devd#6 integrate .. //depot/projects/hammer/etc/rc.d/ip6fw#7 integrate .. //depot/projects/hammer/etc/rc.d/isdnd#11 integrate .. //depot/projects/hammer/etc/rc.d/jail#19 integrate .. //depot/projects/hammer/etc/rc.d/ldconfig#13 integrate .. //depot/projects/hammer/etc/rc.d/mdconfig#1 branch .. //depot/projects/hammer/etc/rc.d/mdconfig2#1 branch .. //depot/projects/hammer/etc/rc.d/moused#9 integrate .. //depot/projects/hammer/etc/rc.d/netif#16 integrate .. //depot/projects/hammer/etc/rc.d/nsswitch#7 integrate .. //depot/projects/hammer/etc/rc.d/pcvt#5 delete .. //depot/projects/hammer/etc/rc.d/pf#12 integrate .. //depot/projects/hammer/etc/rc.d/syscons#10 integrate .. //depot/projects/hammer/etc/rc.d/sysctl#7 integrate .. //depot/projects/hammer/etc/rc.firewall6#7 integrate .. //depot/projects/hammer/etc/rc.subr#36 integrate .. //depot/projects/hammer/etc/sendmail/freebsd.mc#7 integrate .. //depot/projects/hammer/etc/sendmail/freebsd.submit.mc#3 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes#61 integrate .. //depot/projects/hammer/gnu/lib/libgcc_r/Makefile#2 delete .. //depot/projects/hammer/include/arpa/nameser.h#4 integrate .. //depot/projects/hammer/include/glob.h#2 integrate .. //depot/projects/hammer/include/malloc_np.h#2 integrate .. //depot/projects/hammer/include/netdb.h#17 integrate .. //depot/projects/hammer/include/res_update.h#2 integrate .. //depot/projects/hammer/include/resolv.h#10 integrate .. //depot/projects/hammer/kerberos5/lib/libroken/Makefile#5 integrate .. //depot/projects/hammer/lib/csu/common/crtbegin.c#2 delete .. //depot/projects/hammer/lib/csu/common/crtend.c#2 delete .. //depot/projects/hammer/lib/libatm/Makefile#8 integrate .. //depot/projects/hammer/lib/libbsm/Makefile#2 integrate .. //depot/projects/hammer/lib/libc/Makefile#26 integrate .. //depot/projects/hammer/lib/libc/arm/SYS.h#3 integrate .. //depot/projects/hammer/lib/libc/gen/getgrent.c#11 integrate .. //depot/projects/hammer/lib/libc/gen/gethostname.c#4 integrate .. //depot/projects/hammer/lib/libc/gen/glob.3#8 integrate .. //depot/projects/hammer/lib/libc/gen/glob.c#5 integrate .. //depot/projects/hammer/lib/libc/gen/signal.3#10 integrate .. //depot/projects/hammer/lib/libc/gen/syslog.c#11 integrate .. //depot/projects/hammer/lib/libc/i386/gen/_ctx_start.S#3 integrate .. //depot/projects/hammer/lib/libc/i386/sys/i386_set_watch.3#4 integrate .. //depot/projects/hammer/lib/libc/include/isc/list.h#1 branch .. //depot/projects/hammer/lib/libc/nameser/Symbol.map#2 integrate .. //depot/projects/hammer/lib/libc/nameser/ns_samedomain.c#2 integrate .. //depot/projects/hammer/lib/libc/net/Makefile.inc#16 integrate .. //depot/projects/hammer/lib/libc/net/Symbol.map#5 integrate .. //depot/projects/hammer/lib/libc/net/gai_strerror.3#4 integrate .. //depot/projects/hammer/lib/libc/net/gai_strerror.c#2 integrate .. //depot/projects/hammer/lib/libc/net/gethostbydns.c#14 integrate .. //depot/projects/hammer/lib/libc/net/gethostbyht.c#6 integrate .. //depot/projects/hammer/lib/libc/net/gethostbyname.3#7 integrate .. //depot/projects/hammer/lib/libc/net/gethostbynis.c#8 integrate .. //depot/projects/hammer/lib/libc/net/gethostnamadr.c#7 integrate .. //depot/projects/hammer/lib/libc/net/getnameinfo.c#7 integrate .. //depot/projects/hammer/lib/libc/net/netdb_private.h#7 integrate .. //depot/projects/hammer/lib/libc/net/nscachedcli.c#2 integrate .. //depot/projects/hammer/lib/libc/net/res_mkupdate.c#6 delete .. //depot/projects/hammer/lib/libc/net/res_update.c#5 delete .. //depot/projects/hammer/lib/libc/posix1e/mac_is_present.3#1 branch .. //depot/projects/hammer/lib/libc/resolv/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libc/resolv/Symbol.map#3 integrate .. //depot/projects/hammer/lib/libc/resolv/h_errno.c#2 integrate .. //depot/projects/hammer/lib/libc/resolv/res_findzonecut.c#1 branch .. //depot/projects/hammer/lib/libc/resolv/res_mkupdate.c#1 branch .. //depot/projects/hammer/lib/libc/resolv/res_state.c#3 integrate .. //depot/projects/hammer/lib/libc/resolv/res_update.c#1 branch .. //depot/projects/hammer/lib/libc/stdlib/a64l.c#2 integrate .. //depot/projects/hammer/lib/libc/stdlib/malloc.c#30 integrate .. //depot/projects/hammer/lib/libc/stdlib/strtol.3#5 integrate .. //depot/projects/hammer/lib/libc/stdlib/strtoul.3#5 integrate .. //depot/projects/hammer/lib/libc/stdlib/tsearch.3#7 integrate .. //depot/projects/hammer/lib/libc/string/strlcpy.c#5 integrate .. //depot/projects/hammer/lib/libc/sys/chflags.2#4 integrate .. //depot/projects/hammer/lib/libc/sys/mincore.2#5 integrate .. //depot/projects/hammer/lib/libc/sys/stat.2#12 integrate .. //depot/projects/hammer/lib/libc/sys/truncate.2#5 integrate .. //depot/projects/hammer/lib/libc/sys/wait.2#9 integrate .. //depot/projects/hammer/lib/libfetch/ftp.c#10 integrate .. //depot/projects/hammer/lib/libkvm/kvm_minidump_amd64.c#2 integrate .. //depot/projects/hammer/lib/libkvm/kvm_minidump_i386.c#2 integrate .. //depot/projects/hammer/lib/libmagic/Makefile#8 integrate .. //depot/projects/hammer/lib/libmagic/config.h#3 integrate .. //depot/projects/hammer/lib/libpam/modules/pam_ssh/Makefile#8 integrate .. //depot/projects/hammer/lib/libpthread/arch/i386/i386/thr_getcontext.S#4 integrate .. //depot/projects/hammer/lib/libpthread/pthread.map#16 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_private.h#36 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sig.c#27 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sigaction.c#9 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_symbols.c#4 integrate .. //depot/projects/hammer/lib/libsdp/sdp.h#4 integrate .. //depot/projects/hammer/lib/libsdp/util.c#6 integrate .. //depot/projects/hammer/lib/libthr/pthread.map#10 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_mutex.c#31 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_private.h#33 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_spec.c#4 integrate .. //depot/projects/hammer/lib/libthread_db/libpthread_db.c#8 integrate .. //depot/projects/hammer/lib/libthread_db/libpthread_db.h#4 integrate .. //depot/projects/hammer/lib/libthread_db/libthr_db.c#8 integrate .. //depot/projects/hammer/lib/libutil/Makefile#12 integrate .. //depot/projects/hammer/lib/libutil/kld.c#2 integrate .. //depot/projects/hammer/lib/libutil/login_class.3#6 integrate .. //depot/projects/hammer/lib/libutil/pidfile.c#3 integrate .. //depot/projects/hammer/lib/msun/i387/Makefile.inc#7 integrate .. //depot/projects/hammer/lib/msun/i387/e_scalb.S#3 delete .. //depot/projects/hammer/lib/msun/i387/e_scalbf.S#3 delete .. //depot/projects/hammer/lib/msun/src/e_scalbf.c#5 integrate .. //depot/projects/hammer/lib/msun/src/s_tanh.c#2 integrate .. //depot/projects/hammer/libexec/ftpd/Makefile#8 integrate .. //depot/projects/hammer/libexec/ftpd/ftpcmd.y#10 integrate .. //depot/projects/hammer/release/Makefile#87 integrate .. //depot/projects/hammer/release/doc/README#2 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/Makefile#4 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/alpha/Makefile#3 delete .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/alpha/article.sgml#3 delete .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#20 delete .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/artheader.sgml#6 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#88 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#4 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/installation/Makefile#4 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/installation/alpha/Makefile#2 delete .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/installation/alpha/article.sgml#3 delete .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/installation/common/artheader.sgml#6 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/installation/common/install.sgml#15 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/installation/common/layout.sgml#8 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/Makefile#4 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/alpha/Makefile#2 delete .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/alpha/article.sgml#5 delete .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#114 integrate .. //depot/projects/hammer/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#21 integrate .. //depot/projects/hammer/release/doc/ru_RU.KOI8-R/hardware/Makefile#2 integrate .. //depot/projects/hammer/release/doc/ru_RU.KOI8-R/hardware/common/dev.sgml#15 integrate .. //depot/projects/hammer/release/doc/share/examples/Makefile.relnotesng#8 integrate .. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#40 integrate .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#9 integrate .. //depot/projects/hammer/release/i386/mkisoimages.sh#8 integrate .. //depot/projects/hammer/release/pc98/fixit-small_crunch.conf#7 integrate .. //depot/projects/hammer/release/picobsd/build/picobsd#6 integrate .. //depot/projects/hammer/sbin/Makefile#41 integrate .. //depot/projects/hammer/sbin/adjkerntz/adjkerntz.c#4 integrate .. //depot/projects/hammer/sbin/devfs/devfs.c#3 integrate .. //depot/projects/hammer/sbin/dhclient/dhclient.c#11 integrate .. //depot/projects/hammer/sbin/fdisk/fdisk.c#19 integrate .. //depot/projects/hammer/sbin/ffsinfo/ffsinfo.8#8 integrate .. //depot/projects/hammer/sbin/fsdb/fsdb.8#7 integrate .. //depot/projects/hammer/sbin/fsdb/fsdb.c#8 integrate .. //depot/projects/hammer/sbin/geom/class/eli/geli.8#6 integrate .. //depot/projects/hammer/sbin/geom/class/eli/geom_eli.c#8 integrate .. //depot/projects/hammer/sbin/ggate/ggatec/ggatec.8#6 integrate .. //depot/projects/hammer/sbin/gpt/add.c#11 integrate .. //depot/projects/hammer/sbin/gpt/gpt.8#13 integrate .. //depot/projects/hammer/sbin/gpt/gpt.c#10 integrate .. //depot/projects/hammer/sbin/gpt/gpt.h#9 integrate .. //depot/projects/hammer/sbin/gpt/label.c#2 integrate .. //depot/projects/hammer/sbin/gpt/remove.c#6 integrate .. //depot/projects/hammer/sbin/gpt/show.c#9 integrate .. //depot/projects/hammer/sbin/ifconfig/Makefile#9 integrate .. //depot/projects/hammer/sbin/ifconfig/ifconfig.8#37 integrate .. //depot/projects/hammer/sbin/ifconfig/ifgroup.c#1 branch .. //depot/projects/hammer/sbin/ifconfig/ifieee80211.c#25 integrate .. //depot/projects/hammer/sbin/ifconfig/ifpfsync.c#3 integrate .. //depot/projects/hammer/sbin/init/init.c#10 integrate .. //depot/projects/hammer/sbin/ip6fw/Makefile#4 delete .. //depot/projects/hammer/sbin/ip6fw/ip6fw.8#10 delete .. //depot/projects/hammer/sbin/ip6fw/ip6fw.c#10 delete .. //depot/projects/hammer/sbin/ip6fw/sample.sh#2 delete .. //depot/projects/hammer/sbin/ipf/ipf/Makefile#4 integrate .. //depot/projects/hammer/sbin/ipfw/ipfw.8#54 integrate .. //depot/projects/hammer/sbin/ipfw/ipfw2.c#51 integrate .. //depot/projects/hammer/sbin/mount/mount.8#20 integrate .. //depot/projects/hammer/sbin/mount/mount.c#26 integrate .. //depot/projects/hammer/sbin/mount_msdosfs/mount_msdosfs.c#13 integrate .. //depot/projects/hammer/sbin/mount_std/mount_std.8#7 integrate .. //depot/projects/hammer/sbin/rcorder/rcorder.c#5 integrate .. //depot/projects/hammer/sbin/setkey/setkey.8#3 integrate .. //depot/projects/hammer/secure/lib/libssh/Makefile#17 integrate .. //depot/projects/hammer/secure/libexec/sftp-server/Makefile#7 integrate .. //depot/projects/hammer/secure/libexec/ssh-keysign/Makefile#5 integrate .. //depot/projects/hammer/secure/usr.bin/scp/Makefile#5 integrate .. //depot/projects/hammer/secure/usr.bin/sftp/Makefile#6 integrate .. //depot/projects/hammer/secure/usr.bin/ssh-add/Makefile#5 integrate .. //depot/projects/hammer/secure/usr.bin/ssh-agent/Makefile#5 integrate .. //depot/projects/hammer/secure/usr.bin/ssh-keygen/Makefile#5 integrate .. //depot/projects/hammer/secure/usr.bin/ssh-keyscan/Makefile#4 integrate .. //depot/projects/hammer/secure/usr.bin/ssh/Makefile#12 integrate .. //depot/projects/hammer/secure/usr.sbin/sshd/Makefile#15 integrate .. //depot/projects/hammer/share/examples/diskless/clone_root#3 integrate .. //depot/projects/hammer/share/examples/etc/README.examples#6 integrate .. //depot/projects/hammer/share/examples/kld/cdev/module/cdevmod.c#5 integrate .. //depot/projects/hammer/share/examples/mdoc/example.4#6 integrate .. //depot/projects/hammer/share/man/man4/Makefile#84 integrate .. //depot/projects/hammer/share/man/man4/aac.4#12 integrate .. //depot/projects/hammer/share/man/man4/acpi.4#39 integrate .. //depot/projects/hammer/share/man/man4/acpi_dock.4#1 branch .. //depot/projects/hammer/share/man/man4/adv.4#4 integrate .. //depot/projects/hammer/share/man/man4/adw.4#4 integrate .. //depot/projects/hammer/share/man/man4/aha.4#10 integrate .. //depot/projects/hammer/share/man/man4/ahb.4#5 integrate .. //depot/projects/hammer/share/man/man4/ahc.4#7 integrate .. //depot/projects/hammer/share/man/man4/ahd.4#5 integrate .. //depot/projects/hammer/share/man/man4/altq.4#12 integrate .. //depot/projects/hammer/share/man/man4/amd.4#3 integrate .. //depot/projects/hammer/share/man/man4/amr.4#15 integrate .. //depot/projects/hammer/share/man/man4/arcmsr.4#2 integrate .. //depot/projects/hammer/share/man/man4/ata.4#26 integrate .. //depot/projects/hammer/share/man/man4/ath.4#31 integrate .. //depot/projects/hammer/share/man/man4/atkbd.4#6 integrate .. //depot/projects/hammer/share/man/man4/audit.4#2 integrate .. //depot/projects/hammer/share/man/man4/auditpipe.4#1 branch .. //depot/projects/hammer/share/man/man4/bge.4#21 integrate .. //depot/projects/hammer/share/man/man4/bt.4#5 integrate .. //depot/projects/hammer/share/man/man4/carp.4#7 integrate .. //depot/projects/hammer/share/man/man4/ciss.4#11 integrate .. //depot/projects/hammer/share/man/man4/cpufreq.4#11 integrate .. //depot/projects/hammer/share/man/man4/dc.4#19 integrate .. //depot/projects/hammer/share/man/man4/ddb.4#9 integrate .. //depot/projects/hammer/share/man/man4/dpt.4#7 integrate .. //depot/projects/hammer/share/man/man4/enc.4#1 branch .. //depot/projects/hammer/share/man/man4/esp.4#6 integrate .. //depot/projects/hammer/share/man/man4/fast_ipsec.4#3 integrate .. //depot/projects/hammer/share/man/man4/fdc.4#4 integrate .. //depot/projects/hammer/share/man/man4/fxp.4#13 integrate .. //depot/projects/hammer/share/man/man4/geom.4#10 integrate .. //depot/projects/hammer/share/man/man4/geom_fox.4#2 integrate .. //depot/projects/hammer/share/man/man4/hptmv.4#6 integrate .. //depot/projects/hammer/share/man/man4/ida.4#5 integrate .. //depot/projects/hammer/share/man/man4/if_bridge.4#11 integrate .. //depot/projects/hammer/share/man/man4/iir.4#7 integrate .. //depot/projects/hammer/share/man/man4/ip.4#19 integrate .. //depot/projects/hammer/share/man/man4/ips.4#5 integrate .. //depot/projects/hammer/share/man/man4/isp.4#8 integrate .. //depot/projects/hammer/share/man/man4/ispfw.4#4 integrate .. //depot/projects/hammer/share/man/man4/kbdmux.4#5 integrate .. //depot/projects/hammer/share/man/man4/ktr.4#7 integrate .. //depot/projects/hammer/share/man/man4/lmc.4#6 integrate .. //depot/projects/hammer/share/man/man4/man4.alpha/Makefile#2 delete .. //depot/projects/hammer/share/man/man4/man4.alpha/linux.4#3 delete .. //depot/projects/hammer/share/man/man4/man4.alpha/osf1.4#4 delete .. //depot/projects/hammer/share/man/man4/man4.i386/Makefile#35 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/linux.4#6 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/lnc.4#10 delete .. //depot/projects/hammer/share/man/man4/man4.i386/padlock.4#3 integrate .. //depot/projects/hammer/share/man/man4/mlx.4#6 integrate .. //depot/projects/hammer/share/man/man4/mly.4#5 integrate .. //depot/projects/hammer/share/man/man4/mpt.4#8 integrate .. //depot/projects/hammer/share/man/man4/mxge.4#1 branch .. //depot/projects/hammer/share/man/man4/myri10ge.4#2 delete .. //depot/projects/hammer/share/man/man4/ncr.4#4 integrate .. //depot/projects/hammer/share/man/man4/ncv.4#5 integrate .. //depot/projects/hammer/share/man/man4/nfe.4#1 branch .. //depot/projects/hammer/share/man/man4/ng_etf.4#5 integrate .. //depot/projects/hammer/share/man/man4/ng_netflow.4#12 integrate .. //depot/projects/hammer/share/man/man4/ng_tag.4#1 branch .. //depot/projects/hammer/share/man/man4/nsp.4#6 integrate .. //depot/projects/hammer/share/man/man4/pcvt.4#6 delete .. //depot/projects/hammer/share/man/man4/pst.4#4 integrate .. //depot/projects/hammer/share/man/man4/re.4#17 integrate .. //depot/projects/hammer/share/man/man4/sched_4bsd.4#3 integrate .. //depot/projects/hammer/share/man/man4/sched_core.4#1 branch .. //depot/projects/hammer/share/man/man4/sched_ule.4#3 integrate .. //depot/projects/hammer/share/man/man4/sio.4#9 integrate .. //depot/projects/hammer/share/man/man4/smp.4#9 integrate .. //depot/projects/hammer/share/man/man4/snd_csa.4#6 integrate .. //depot/projects/hammer/share/man/man4/snd_envy24.4#1 branch .. //depot/projects/hammer/share/man/man4/snd_gusc.4#5 integrate .. //depot/projects/hammer/share/man/man4/snd_ich.4#8 integrate .. //depot/projects/hammer/share/man/man4/snd_sbc.4#7 integrate .. //depot/projects/hammer/share/man/man4/splash.4#5 integrate .. //depot/projects/hammer/share/man/man4/stg.4#6 integrate .. //depot/projects/hammer/share/man/man4/sym.4#7 integrate .. //depot/projects/hammer/share/man/man4/trm.4#3 integrate .. //depot/projects/hammer/share/man/man4/twa.4#6 integrate .. //depot/projects/hammer/share/man/man4/twe.4#10 integrate .. //depot/projects/hammer/share/man/man4/umodem.4#6 integrate .. //depot/projects/hammer/share/man/man4/uplcom.4#11 integrate .. //depot/projects/hammer/share/man/man4/uscanner.4#16 integrate .. //depot/projects/hammer/share/man/man4/uvisor.4#7 integrate .. //depot/projects/hammer/share/man/man4/vinum.4#6 integrate .. //depot/projects/hammer/share/man/man4/vkbd.4#4 integrate .. //depot/projects/hammer/share/man/man5/Makefile#19 integrate .. //depot/projects/hammer/share/man/man5/devfs.5#6 integrate .. //depot/projects/hammer/share/man/man5/ext2fs.5#1 branch .. //depot/projects/hammer/share/man/man5/linprocfs.5#5 integrate .. //depot/projects/hammer/share/man/man5/linsysfs.5#1 branch .. //depot/projects/hammer/share/man/man5/mailer.conf.5#5 integrate .. //depot/projects/hammer/share/man/man5/make.conf.5#45 integrate .. //depot/projects/hammer/share/man/man5/nsswitch.conf.5#8 integrate .. //depot/projects/hammer/share/man/man5/periodic.conf.5#15 integrate .. //depot/projects/hammer/share/man/man5/procfs.5#8 integrate .. //depot/projects/hammer/share/man/man5/rc.conf.5#74 integrate .. //depot/projects/hammer/share/man/man5/reiserfs.5#1 branch .. //depot/projects/hammer/share/man/man5/src.conf.5#4 integrate .. //depot/projects/hammer/share/man/man7/build.7#15 integrate .. //depot/projects/hammer/share/man/man7/hier.7#28 integrate .. //depot/projects/hammer/share/man/man7/ports.7#16 integrate .. //depot/projects/hammer/share/man/man7/security.7#16 integrate .. //depot/projects/hammer/share/man/man8/rc.subr.8#9 integrate .. //depot/projects/hammer/share/man/man9/Makefile#64 integrate .. //depot/projects/hammer/share/man/man9/crypto.9#6 integrate .. //depot/projects/hammer/share/man/man9/device_get_sysctl.9#1 branch .. //depot/projects/hammer/share/man/man9/lock.9#4 integrate .. //depot/projects/hammer/share/man/man9/make_dev.9#8 integrate .. //depot/projects/hammer/share/man/man9/suser.9#9 integrate .. //depot/projects/hammer/share/man/man9/vflush.9#5 integrate .. //depot/projects/hammer/share/man/man9/vgone.9#4 integrate .. //depot/projects/hammer/share/man/man9/zero_copy.9#8 integrate .. //depot/projects/hammer/share/misc/bsd-family-tree#33 integrate .. //depot/projects/hammer/share/misc/iso3166#6 integrate .. //depot/projects/hammer/share/mk/bsd.README#11 integrate .. //depot/projects/hammer/share/mk/bsd.own.mk#12 integrate .. //depot/projects/hammer/share/monetdef/pt_PT.ISO8859-1.src#2 integrate .. //depot/projects/hammer/share/zoneinfo/africa#4 integrate .. //depot/projects/hammer/share/zoneinfo/antarctica#5 integrate .. //depot/projects/hammer/share/zoneinfo/asia#8 integrate .. //depot/projects/hammer/share/zoneinfo/australasia#7 integrate .. //depot/projects/hammer/share/zoneinfo/backward#6 integrate .. //depot/projects/hammer/share/zoneinfo/etcetera#3 integrate .. //depot/projects/hammer/share/zoneinfo/europe#8 integrate .. //depot/projects/hammer/share/zoneinfo/factory#2 integrate .. //depot/projects/hammer/share/zoneinfo/leapseconds#7 integrate .. //depot/projects/hammer/share/zoneinfo/northamerica#8 integrate .. //depot/projects/hammer/share/zoneinfo/southamerica#9 integrate .. //depot/projects/hammer/share/zoneinfo/systemv#3 integrate .. //depot/projects/hammer/share/zoneinfo/yearistype.sh#3 integrate .. //depot/projects/hammer/share/zoneinfo/zone.tab#8 integrate .. //depot/projects/hammer/sys/Makefile#12 integrate .. //depot/projects/hammer/sys/alpha/Makefile#2 delete .. //depot/projects/hammer/sys/alpha/alpha/api_up1000.c#6 delete .. //depot/projects/hammer/sys/alpha/alpha/atomic.s#3 delete .. //depot/projects/hammer/sys/alpha/alpha/autoconf.c#10 delete .. //depot/projects/hammer/sys/alpha/alpha/busdma_machdep.c#21 delete .. //depot/projects/hammer/sys/alpha/alpha/busspace.c#4 delete .. //depot/projects/hammer/sys/alpha/alpha/clock.c#15 delete .. //depot/projects/hammer/sys/alpha/alpha/clock_if.m#3 delete .. //depot/projects/hammer/sys/alpha/alpha/cpuconf.c#6 delete .. //depot/projects/hammer/sys/alpha/alpha/db_disasm.c#7 delete .. //depot/projects/hammer/sys/alpha/alpha/db_instruction.h#4 delete .. //depot/projects/hammer/sys/alpha/alpha/db_interface.c#6 delete .. //depot/projects/hammer/sys/alpha/alpha/db_trace.c#14 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_1000a.c#7 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_2100_a50.c#8 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_2100_a500.c#8 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_3000_300.c#5 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_3000_500.c#5 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_axppci_33.c#8 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_eb164.c#7 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_eb64plus.c#7 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_kn20aa.c#8 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_kn300.c#7 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_kn8ae.c#6 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_st550.c#7 delete .. //depot/projects/hammer/sys/alpha/alpha/dec_st6600.c#6 delete .. //depot/projects/hammer/sys/alpha/alpha/divrem.m4#4 delete .. //depot/projects/hammer/sys/alpha/alpha/dump_machdep.c#7 delete .. //depot/projects/hammer/sys/alpha/alpha/elf_machdep.c#16 delete .. //depot/projects/hammer/sys/alpha/alpha/exception.s#4 delete .. //depot/projects/hammer/sys/alpha/alpha/fp_emulate.c#6 delete .. //depot/projects/hammer/sys/alpha/alpha/gdb_machdep.c#4 delete .. //depot/projects/hammer/sys/alpha/alpha/genassym.c#7 delete .. //depot/projects/hammer/sys/alpha/alpha/ieee_float.c#5 delete .. //depot/projects/hammer/sys/alpha/alpha/ieee_float.h#2 delete .. //depot/projects/hammer/sys/alpha/alpha/in_cksum.c#5 delete .. //depot/projects/hammer/sys/alpha/alpha/interrupt.c#23 delete .. //depot/projects/hammer/sys/alpha/alpha/locore.s#4 delete .. //depot/projects/hammer/sys/alpha/alpha/machdep.c#37 delete .. //depot/projects/hammer/sys/alpha/alpha/mem.c#12 delete .. //depot/projects/hammer/sys/alpha/alpha/mp_machdep.c#18 delete .. //depot/projects/hammer/sys/alpha/alpha/pal.s#3 delete .. //depot/projects/hammer/sys/alpha/alpha/pmap.c#53 delete .. //depot/projects/hammer/sys/alpha/alpha/prom.c#8 delete .. //depot/projects/hammer/sys/alpha/alpha/prom_disp.s#3 delete .. //depot/projects/hammer/sys/alpha/alpha/promcons.c#16 delete .. //depot/projects/hammer/sys/alpha/alpha/sgmap.c#6 delete .. //depot/projects/hammer/sys/alpha/alpha/support.s#8 delete .. //depot/projects/hammer/sys/alpha/alpha/swtch.s#3 delete .. //depot/projects/hammer/sys/alpha/alpha/sys_machdep.c#9 delete .. //depot/projects/hammer/sys/alpha/alpha/trap.c#22 delete .. //depot/projects/hammer/sys/alpha/alpha/uio_machdep.c#5 delete .. //depot/projects/hammer/sys/alpha/alpha/uma_machdep.c#2 delete .. //depot/projects/hammer/sys/alpha/alpha/vm_machdep.c#24 delete .. //depot/projects/hammer/sys/alpha/compile/.cvsignore#2 delete .. //depot/projects/hammer/sys/alpha/conf/.cvsignore#2 delete .. //depot/projects/hammer/sys/alpha/conf/DEFAULTS#3 delete .. //depot/projects/hammer/sys/alpha/conf/GENERIC#35 delete .. //depot/projects/hammer/sys/alpha/conf/GENERIC.hints#7 delete .. //depot/projects/hammer/sys/alpha/conf/MAC#2 delete .. //depot/projects/hammer/sys/alpha/conf/Makefile#3 delete .. //depot/projects/hammer/sys/alpha/conf/NOTES#10 delete .. //depot/projects/hammer/sys/alpha/include/_bus.h#2 delete .. //depot/projects/hammer/sys/alpha/include/_inttypes.h#2 delete .. //depot/projects/hammer/sys/alpha/include/_limits.h#9 delete .. //depot/projects/hammer/sys/alpha/include/_stdint.h#3 delete .. //depot/projects/hammer/sys/alpha/include/_types.h#7 delete .. //depot/projects/hammer/sys/alpha/include/alpha_cpu.h#5 delete .. //depot/projects/hammer/sys/alpha/include/asm.h#5 delete .. //depot/projects/hammer/sys/alpha/include/atomic.h#12 delete .. //depot/projects/hammer/sys/alpha/include/bootinfo.h#3 delete .. //depot/projects/hammer/sys/alpha/include/bus.h#18 delete .. //depot/projects/hammer/sys/alpha/include/bus_dma.h#2 delete .. //depot/projects/hammer/sys/alpha/include/bwx.h#2 delete .. //depot/projects/hammer/sys/alpha/include/chipset.h#3 delete .. //depot/projects/hammer/sys/alpha/include/clock.h#3 delete .. //depot/projects/hammer/sys/alpha/include/clockvar.h#3 delete .. //depot/projects/hammer/sys/alpha/include/cpu.h#13 delete .. //depot/projects/hammer/sys/alpha/include/cpuconf.h#5 delete .. //depot/projects/hammer/sys/alpha/include/cpufunc.h#3 delete .. //depot/projects/hammer/sys/alpha/include/db_machdep.h#6 delete .. //depot/projects/hammer/sys/alpha/include/elf.h#3 delete .. //depot/projects/hammer/sys/alpha/include/endian.h#7 delete .. //depot/projects/hammer/sys/alpha/include/exec.h#4 delete .. //depot/projects/hammer/sys/alpha/include/float.h#6 delete .. //depot/projects/hammer/sys/alpha/include/floatingpoint.h#3 delete .. //depot/projects/hammer/sys/alpha/include/fpu.h#4 delete .. //depot/projects/hammer/sys/alpha/include/frame.h#3 delete .. //depot/projects/hammer/sys/alpha/include/gdb_machdep.h#4 delete .. //depot/projects/hammer/sys/alpha/include/ieee.h#4 delete .. //depot/projects/hammer/sys/alpha/include/ieeefp.h#3 delete .. //depot/projects/hammer/sys/alpha/include/in_cksum.h#4 delete .. //depot/projects/hammer/sys/alpha/include/inst.h#2 delete .. //depot/projects/hammer/sys/alpha/include/intr.h#7 delete .. //depot/projects/hammer/sys/alpha/include/intrcnt.h#3 delete .. //depot/projects/hammer/sys/alpha/include/ioctl_bt848.h#4 delete .. //depot/projects/hammer/sys/alpha/include/ioctl_meteor.h#4 delete .. //depot/projects/hammer/sys/alpha/include/kdb.h#4 delete .. //depot/projects/hammer/sys/alpha/include/limits.h#8 delete .. //depot/projects/hammer/sys/alpha/include/md_var.h#5 delete .. //depot/projects/hammer/sys/alpha/include/memdev.h#2 delete .. //depot/projects/hammer/sys/alpha/include/mutex.h#2 delete .. //depot/projects/hammer/sys/alpha/include/pal.h#3 delete .. //depot/projects/hammer/sys/alpha/include/param.h#15 delete .. //depot/projects/hammer/sys/alpha/include/pc/bios.h#3 delete .. //depot/projects/hammer/sys/alpha/include/pc/display.h#2 delete .. //depot/projects/hammer/sys/alpha/include/pc/vesa.h#3 delete .. //depot/projects/hammer/sys/alpha/include/pcb.h#6 delete .. //depot/projects/hammer/sys/alpha/include/pcpu.h#4 delete .. //depot/projects/hammer/sys/alpha/include/pmap.h#15 delete .. //depot/projects/hammer/sys/alpha/include/pmc_mdep.h#3 delete .. //depot/projects/hammer/sys/alpha/include/ppireg.h#2 delete .. //depot/projects/hammer/sys/alpha/include/proc.h#5 delete .. //depot/projects/hammer/sys/alpha/include/profile.h#5 delete .. //depot/projects/hammer/sys/alpha/include/prom.h#4 delete .. //depot/projects/hammer/sys/alpha/include/pte.h#3 delete .. //depot/projects/hammer/sys/alpha/include/ptrace.h#5 delete .. //depot/projects/hammer/sys/alpha/include/reg.h#4 delete .. //depot/projects/hammer/sys/alpha/include/reloc.h#3 delete .. //depot/projects/hammer/sys/alpha/include/resource.h#3 delete .. //depot/projects/hammer/sys/alpha/include/rpb.h#3 delete .. //depot/projects/hammer/sys/alpha/include/runq.h#3 delete .. //depot/projects/hammer/sys/alpha/include/setjmp.h#4 delete .. //depot/projects/hammer/sys/alpha/include/sf_buf.h#3 delete .. //depot/projects/hammer/sys/alpha/include/sgmap.h#2 delete .. //depot/projects/hammer/sys/alpha/include/sigframe.h#3 delete .. //depot/projects/hammer/sys/alpha/include/signal.h#7 delete .. //depot/projects/hammer/sys/alpha/include/smp.h#5 delete .. //depot/projects/hammer/sys/alpha/include/stdarg.h#6 delete .. //depot/projects/hammer/sys/alpha/include/swiz.h#2 delete .. //depot/projects/hammer/sys/alpha/include/sysarch.h#4 delete .. //depot/projects/hammer/sys/alpha/include/timerreg.h#3 delete .. //depot/projects/hammer/sys/alpha/include/ucontext.h#5 delete .. //depot/projects/hammer/sys/alpha/include/varargs.h#6 delete .. //depot/projects/hammer/sys/alpha/include/vmparam.h#6 delete .. //depot/projects/hammer/sys/alpha/isa/isa.c#14 delete .. //depot/projects/hammer/sys/alpha/isa/isa_dma.c#9 delete .. //depot/projects/hammer/sys/alpha/isa/isavar.h#2 delete .. //depot/projects/hammer/sys/alpha/isa/mcclock_isa.c#6 delete .. //depot/projects/hammer/sys/alpha/linux/Makefile#2 delete .. //depot/projects/hammer/sys/alpha/linux/linux.h#5 delete .. //depot/projects/hammer/sys/alpha/linux/linux_dummy.c#6 delete .. //depot/projects/hammer/sys/alpha/linux/linux_genassym.c#5 delete .. //depot/projects/hammer/sys/alpha/linux/linux_ipc64.h#2 delete .. //depot/projects/hammer/sys/alpha/linux/linux_locore.s#2 delete .. //depot/projects/hammer/sys/alpha/linux/linux_machdep.c#13 delete .. //depot/projects/hammer/sys/alpha/linux/linux_proto.h#16 delete .. //depot/projects/hammer/sys/alpha/linux/linux_syscall.h#16 delete .. //depot/projects/hammer/sys/alpha/linux/linux_sysent.c#16 delete .. //depot/projects/hammer/sys/alpha/linux/linux_sysvec.c#16 delete .. //depot/projects/hammer/sys/alpha/linux/syscalls.conf#3 delete .. //depot/projects/hammer/sys/alpha/linux/syscalls.master#16 delete .. //depot/projects/hammer/sys/alpha/mcbus/mcbus.c#5 delete .. //depot/projects/hammer/sys/alpha/mcbus/mcbusreg.h#3 delete .. //depot/projects/hammer/sys/alpha/mcbus/mcbusvar.h#3 delete .. //depot/projects/hammer/sys/alpha/mcbus/mcmem.c#5 delete .. //depot/projects/hammer/sys/alpha/mcbus/mcpcia.c#14 delete .. //depot/projects/hammer/sys/alpha/mcbus/mcpciareg.h#3 delete .. //depot/projects/hammer/sys/alpha/mcbus/mcpciavar.h#3 delete .. //depot/projects/hammer/sys/alpha/osf1/Makefile#3 delete .. //depot/projects/hammer/sys/alpha/osf1/README.mach-traps#2 delete .. //depot/projects/hammer/sys/alpha/osf1/exec_ecoff.h#3 delete .. //depot/projects/hammer/sys/alpha/osf1/imgact_osf1.c#11 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1.h#3 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_ioctl.c#8 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_misc.c#21 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_mount.c#12 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_proto.h#9 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_signal.c#19 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_signal.h#3 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_syscall.h#9 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_sysent.c#9 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_sysvec.c#7 delete .. //depot/projects/hammer/sys/alpha/osf1/osf1_util.h#4 delete .. //depot/projects/hammer/sys/alpha/osf1/syscalls.conf#3 delete .. //depot/projects/hammer/sys/alpha/osf1/syscalls.master#9 delete .. //depot/projects/hammer/sys/alpha/pci/alphapci_if.m#3 delete .. //depot/projects/hammer/sys/alpha/pci/apecs.c#12 delete .. //depot/projects/hammer/sys/alpha/pci/apecs_pci.c#5 delete .. //depot/projects/hammer/sys/alpha/pci/apecsreg.h#3 delete .. //depot/projects/hammer/sys/alpha/pci/apecsvar.h#2 delete .. //depot/projects/hammer/sys/alpha/pci/bwx.c#4 delete .. //depot/projects/hammer/sys/alpha/pci/cia.c#11 delete .. //depot/projects/hammer/sys/alpha/pci/cia_pci.c#5 delete .. //depot/projects/hammer/sys/alpha/pci/ciareg.h#3 delete .. //depot/projects/hammer/sys/alpha/pci/ciavar.h#2 delete .. //depot/projects/hammer/sys/alpha/pci/irongate.c#5 delete .. //depot/projects/hammer/sys/alpha/pci/irongate_pci.c#4 delete .. //depot/projects/hammer/sys/alpha/pci/irongatereg.h#2 delete .. //depot/projects/hammer/sys/alpha/pci/irongatevar.h#2 delete .. //depot/projects/hammer/sys/alpha/pci/lca.c#6 delete .. //depot/projects/hammer/sys/alpha/pci/lca_pci.c#5 delete .. //depot/projects/hammer/sys/alpha/pci/lcareg.h#4 delete .. //depot/projects/hammer/sys/alpha/pci/lcavar.h#2 delete .. //depot/projects/hammer/sys/alpha/pci/pci_eb164_intr.s#3 delete .. //depot/projects/hammer/sys/alpha/pci/pci_eb64plus_intr.s#3 delete .. //depot/projects/hammer/sys/alpha/pci/pcibus.c#9 delete .. //depot/projects/hammer/sys/alpha/pci/pcibus.h#2 delete .. //depot/projects/hammer/sys/alpha/pci/swiz.c#4 delete .. //depot/projects/hammer/sys/alpha/pci/t2.c#12 delete .. //depot/projects/hammer/sys/alpha/pci/t2_pci.c#4 delete .. //depot/projects/hammer/sys/alpha/pci/t2reg.h#3 delete .. //depot/projects/hammer/sys/alpha/pci/t2var.h#2 delete .. //depot/projects/hammer/sys/alpha/pci/tsunami.c#10 delete .. //depot/projects/hammer/sys/alpha/pci/tsunami_pci.c#6 delete .. //depot/projects/hammer/sys/alpha/pci/tsunamireg.h#3 delete .. //depot/projects/hammer/sys/alpha/pci/tsunamivar.h#2 delete .. //depot/projects/hammer/sys/alpha/tlsb/dwlpx.c#12 delete .. //depot/projects/hammer/sys/alpha/tlsb/dwlpxreg.h#3 delete .. //depot/projects/hammer/sys/alpha/tlsb/dwlpxvar.h#3 delete .. //depot/projects/hammer/sys/alpha/tlsb/gbus.c#5 delete .. //depot/projects/hammer/sys/alpha/tlsb/gbusreg.h#2 delete .. //depot/projects/hammer/sys/alpha/tlsb/gbusvar.h#2 delete .. //depot/projects/hammer/sys/alpha/tlsb/kftxx.c#5 delete .. //depot/projects/hammer/sys/alpha/tlsb/kftxxreg.h#3 delete .. //depot/projects/hammer/sys/alpha/tlsb/kftxxvar.h#2 delete .. //depot/projects/hammer/sys/alpha/tlsb/mcclock_tlsb.c#5 delete .. //depot/projects/hammer/sys/alpha/tlsb/tlsb.c#6 delete .. //depot/projects/hammer/sys/alpha/tlsb/tlsbcpu.c#5 delete .. //depot/projects/hammer/sys/alpha/tlsb/tlsbmem.c#5 delete .. //depot/projects/hammer/sys/alpha/tlsb/tlsbreg.h#3 delete .. //depot/projects/hammer/sys/alpha/tlsb/tlsbvar.h#3 delete .. //depot/projects/hammer/sys/alpha/tlsb/zs_tlsb.c#15 delete .. //depot/projects/hammer/sys/alpha/tlsb/zsreg.h#2 delete .. //depot/projects/hammer/sys/alpha/tlsb/zsvar.h#2 delete .. //depot/projects/hammer/sys/amd64/amd64/busdma_machdep.c#40 integrate .. //depot/projects/hammer/sys/amd64/amd64/fpu.c#32 integrate .. //depot/projects/hammer/sys/amd64/amd64/initcpu.c#17 integrate .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#155 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#121 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#153 integrate .. //depot/projects/hammer/sys/amd64/amd64/trap.c#91 integrate .. //depot/projects/hammer/sys/amd64/conf/DEFAULTS#4 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#90 integrate .. //depot/projects/hammer/sys/amd64/conf/NOTES#96 integrate .. //depot/projects/hammer/sys/amd64/include/clock.h#21 integrate .. //depot/projects/hammer/sys/amd64/include/cpu.h#20 integrate .. //depot/projects/hammer/sys/amd64/include/md_var.h#38 integrate .. //depot/projects/hammer/sys/amd64/include/mutex.h#8 integrate .. //depot/projects/hammer/sys/amd64/include/pmap.h#63 integrate .. //depot/projects/hammer/sys/amd64/include/specialreg.h#19 integrate .. //depot/projects/hammer/sys/amd64/linux32/linux32_dummy.c#2 integrate .. //depot/projects/hammer/sys/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/hammer/sys/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/hammer/sys/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/hammer/sys/amd64/linux32/linux32_sysvec.c#13 integrate .. //depot/projects/hammer/sys/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/hammer/sys/arm/arm/busdma_machdep.c#18 integrate .. //depot/projects/hammer/sys/arm/arm/elf_trampoline.c#6 integrate .. //depot/projects/hammer/sys/arm/arm/inckern.S#3 integrate .. //depot/projects/hammer/sys/arm/arm/locore.S#14 integrate .. //depot/projects/hammer/sys/arm/arm/machdep.c#18 integrate .. //depot/projects/hammer/sys/arm/arm/pmap.c#35 integrate .. //depot/projects/hammer/sys/arm/arm/vm_machdep.c#22 integrate .. //depot/projects/hammer/sys/arm/at91/at91.c#4 integrate .. //depot/projects/hammer/sys/arm/at91/at91_pdcreg.h#1 branch .. //depot/projects/hammer/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/hammer/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/hammer/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/hammer/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/hammer/sys/arm/at91/at91_st.c#3 integrate .. //depot/projects/hammer/sys/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/hammer/sys/arm/at91/files.at91#4 integrate .. //depot/projects/hammer/sys/arm/at91/if_ate.c#4 integrate .. //depot/projects/hammer/sys/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/hammer/sys/arm/at91/uart_bus_at91usart.c#2 integrate .. //depot/projects/hammer/sys/arm/at91/uart_cpu_at91rm9200usart.c#2 integrate .. //depot/projects/hammer/sys/arm/at91/uart_dev_at91usart.c#4 integrate .. //depot/projects/hammer/sys/arm/conf/IQ31244#11 integrate .. //depot/projects/hammer/sys/arm/conf/KB920X#2 integrate .. //depot/projects/hammer/sys/arm/conf/SIMICS#8 integrate .. //depot/projects/hammer/sys/arm/conf/SKYEYE#2 integrate .. //depot/projects/hammer/sys/arm/include/_types.h#7 integrate .. //depot/projects/hammer/sys/arm/include/atomic.h#16 integrate .. //depot/projects/hammer/sys/arm/include/cpu.h#6 integrate .. //depot/projects/hammer/sys/arm/include/cpuconf.h#5 integrate .. //depot/projects/hammer/sys/arm/include/cpufunc.h#8 integrate .. //depot/projects/hammer/sys/arm/include/pmap.h#17 integrate .. //depot/projects/hammer/sys/arm/sa11x0/assabet_machdep.c#10 integrate .. //depot/projects/hammer/sys/arm/sa11x0/sa11x0_io.c#7 integrate .. //depot/projects/hammer/sys/arm/sa11x0/sa11x0_reg.h#2 integrate .. //depot/projects/hammer/sys/arm/sa11x0/sa11x0_var.h#3 integrate .. //depot/projects/hammer/sys/arm/sa11x0/uart_cpu_sa1110.c#3 integrate .. //depot/projects/hammer/sys/arm/sa11x0/uart_dev_sa1110.c#4 integrate .. //depot/projects/hammer/sys/arm/xscale/i80321/i80321_space.c#5 integrate .. //depot/projects/hammer/sys/arm/xscale/i80321/iq31244_machdep.c#18 integrate .. //depot/projects/hammer/sys/arm/xscale/i80321/iq80321.c#10 integrate .. //depot/projects/hammer/sys/boot/Makefile#17 integrate .. //depot/projects/hammer/sys/boot/alpha/Makefile#2 delete .. //depot/projects/hammer/sys/boot/alpha/Makefile.inc#4 delete .. //depot/projects/hammer/sys/boot/alpha/boot1/Makefile#6 delete .. //depot/projects/hammer/sys/boot/alpha/boot1/boot1.c#3 delete .. //depot/projects/hammer/sys/boot/alpha/cdboot/Makefile#4 delete .. //depot/projects/hammer/sys/boot/alpha/cdboot/version#2 delete .. //depot/projects/hammer/sys/boot/alpha/common/Makefile.common#7 delete .. //depot/projects/hammer/sys/boot/alpha/common/conf.c#5 delete .. //depot/projects/hammer/sys/boot/alpha/common/help.alpha#3 delete .. //depot/projects/hammer/sys/boot/alpha/common/ldscript#2 delete .. //depot/projects/hammer/sys/boot/alpha/common/main.c#4 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/Makefile#4 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/OSFpal.c#3 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/alpha_copy.c#3 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/alpha_module.c#3 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/bbinfo.h#2 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/bootinfo.c#4 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/common.h#2 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/delay.c#4 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/devicename.c#4 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/elf_freebsd.c#6 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/getsecs.c#4 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/libalpha.h#3 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/pal.S#2 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/prom.c#3 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/prom_disp.S#2 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/prom_swpal.S#2 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/reboot.c#3 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/srmdisk.c#5 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/srmnet.c#3 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/start.S#2 delete .. //depot/projects/hammer/sys/boot/alpha/libalpha/time.c#3 delete .. //depot/projects/hammer/sys/boot/alpha/loader/Makefile#3 delete .. //depot/projects/hammer/sys/boot/alpha/loader/version#2 delete .. //depot/projects/hammer/sys/boot/alpha/netboot/Makefile#4 delete .. //depot/projects/hammer/sys/boot/alpha/netboot/version#2 delete .. //depot/projects/hammer/sys/boot/arc/Makefile#2 delete .. //depot/projects/hammer/sys/boot/arc/Makefile.inc#2 delete .. //depot/projects/hammer/sys/boot/arc/include/arcfuncs.h#4 delete .. //depot/projects/hammer/sys/boot/arc/include/arctypes.h#2 delete .. //depot/projects/hammer/sys/boot/arc/include/libarc.h#2 delete .. //depot/projects/hammer/sys/boot/arc/lib/Makefile#3 delete .. //depot/projects/hammer/sys/boot/arc/lib/abort.c#3 delete .. //depot/projects/hammer/sys/boot/arc/lib/arcconsole.c#3 delete .. //depot/projects/hammer/sys/boot/arc/lib/arcdisk.c#5 delete .. //depot/projects/hammer/sys/boot/arc/lib/arch/alpha/copy.c#2 delete .. //depot/projects/hammer/sys/boot/arc/lib/arch/alpha/rpb.c#2 delete .. //depot/projects/hammer/sys/boot/arc/lib/arch/alpha/setjmp.S#2 delete .. //depot/projects/hammer/sys/boot/arc/lib/arch/alpha/start.S#2 delete .. //depot/projects/hammer/sys/boot/arc/lib/bootinfo.c#4 delete .. //depot/projects/hammer/sys/boot/arc/lib/delay.c#3 delete .. //depot/projects/hammer/sys/boot/arc/lib/devicename.c#4 delete .. //depot/projects/hammer/sys/boot/arc/lib/elf_freebsd.c#6 delete .. //depot/projects/hammer/sys/boot/arc/lib/module.c#3 delete .. //depot/projects/hammer/sys/boot/arc/lib/prom.c#3 delete .. //depot/projects/hammer/sys/boot/arc/lib/setjmperr.c#3 delete .. //depot/projects/hammer/sys/boot/arc/lib/time.c#3 delete .. //depot/projects/hammer/sys/boot/arc/loader/Makefile#3 delete .. //depot/projects/hammer/sys/boot/arc/loader/conf.c#4 delete .. //depot/projects/hammer/sys/boot/arc/loader/help.alpha#2 delete .. //depot/projects/hammer/sys/boot/arc/loader/main.c#3 delete .. //depot/projects/hammer/sys/boot/arc/loader/version#2 delete .. //depot/projects/hammer/sys/boot/common/Makefile.inc#11 integrate .. //depot/projects/hammer/sys/boot/common/load_elf.c#17 integrate .. //depot/projects/hammer/sys/boot/common/loader.8#24 integrate .. //depot/projects/hammer/sys/boot/efi/libefi/bootinfo.c#7 integrate .. //depot/projects/hammer/sys/boot/ficl/Makefile#13 integrate .. //depot/projects/hammer/sys/boot/ficl/alpha/sysdep.c#2 delete .. //depot/projects/hammer/sys/boot/ficl/alpha/sysdep.h#2 delete .. //depot/projects/hammer/sys/boot/ficl/loader.c#6 integrate .. //depot/projects/hammer/sys/boot/forth/loader.4th#2 integrate .. //depot/projects/hammer/sys/boot/forth/loader.conf#30 integrate .. //depot/projects/hammer/sys/boot/i386/boot0/boot0.S#9 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/biosdisk.c#11 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/bootinfo.c#6 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/conf.c#4 integrate .. //depot/projects/hammer/sys/boot/pc98/Makefile#3 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/io.c#6 integrate .. //depot/projects/hammer/sys/boot/pc98/cdboot/Makefile#1 branch .. //depot/projects/hammer/sys/boot/pc98/cdboot/cdboot.s#1 branch .. //depot/projects/hammer/sys/boot/pc98/libpc98/bioscd.c#1 branch .. //depot/projects/hammer/sys/boot/powerpc/loader/conf.c#5 integrate .. //depot/projects/hammer/sys/bsm/audit.h#3 integrate .. //depot/projects/hammer/sys/bsm/audit_kevents.h#4 integrate .. //depot/projects/hammer/sys/bsm/audit_record.h#2 integrate .. //depot/projects/hammer/sys/cam/cam_ccb.h#8 integrate .. //depot/projects/hammer/sys/cam/cam_debug.h#3 integrate .. //depot/projects/hammer/sys/cam/cam_periph.c#19 integrate .. //depot/projects/hammer/sys/cam/cam_xpt.c#26 integrate .. //depot/projects/hammer/sys/cam/scsi/scsi_all.h#7 integrate .. //depot/projects/hammer/sys/cam/scsi/scsi_target.c#17 integrate .. //depot/projects/hammer/sys/coda/cnode.h#8 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_misc.c#43 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_proto.h#43 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscall.h#40 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscalls.c#40 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_sysent.c#40 integrate .. //depot/projects/hammer/sys/compat/freebsd32/syscalls.master#44 integrate .. //depot/projects/hammer/sys/compat/linprocfs/linprocfs.c#30 integrate .. //depot/projects/hammer/sys/compat/linsysfs/linsysfs.c#1 branch .. //depot/projects/hammer/sys/compat/linux/linux_file.c#16 integrate .. //depot/projects/hammer/sys/compat/linux/linux_ioctl.c#29 integrate .. //depot/projects/hammer/sys/compat/linux/linux_ioctl.h#11 integrate .. //depot/projects/hammer/sys/compat/linux/linux_ipc.c#15 integrate .. //depot/projects/hammer/sys/compat/linux/linux_misc.c#35 integrate .. //depot/projects/hammer/sys/compat/linux/linux_signal.c#14 integrate .. //depot/projects/hammer/sys/compat/linux/linux_socket.c#26 integrate .. //depot/projects/hammer/sys/compat/linux/linux_stats.c#26 integrate .. //depot/projects/hammer/sys/compat/linux/linux_util.c#10 integrate .. //depot/projects/hammer/sys/compat/linux/linux_util.h#9 integrate .. //depot/projects/hammer/sys/compat/ndis/kern_ndis.c#38 integrate .. //depot/projects/hammer/sys/compat/ndis/subr_hal.c#18 integrate .. //depot/projects/hammer/sys/compat/ndis/subr_ndis.c#40 integrate .. //depot/projects/hammer/sys/compat/ndis/subr_ntoskrnl.c#41 integrate .. //depot/projects/hammer/sys/compat/ndis/winx32_wrap.S#4 integrate .. //depot/projects/hammer/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_ipc.c#10 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_misc.c#25 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_proto.h#7 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_syscall.h#7 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_syscallnames.c#7 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_sysent.c#7 integrate .. //depot/projects/hammer/sys/compat/svr4/syscalls.master#7 integrate .. //depot/projects/hammer/sys/conf/Makefile.alpha#13 delete .. //depot/projects/hammer/sys/conf/Makefile.arm#20 integrate .. //depot/projects/hammer/sys/conf/NOTES#110 integrate .. //depot/projects/hammer/sys/conf/files#143 integrate .. //depot/projects/hammer/sys/conf/files.alpha#27 delete .. //depot/projects/hammer/sys/conf/files.amd64#87 integrate .. //depot/projects/hammer/sys/conf/files.arm#7 integrate .. //depot/projects/hammer/sys/conf/files.i386#73 integrate .. //depot/projects/hammer/sys/conf/files.ia64#36 integrate .. //depot/projects/hammer/sys/conf/files.pc98#56 integrate .. //depot/projects/hammer/sys/conf/files.powerpc#19 integrate .. //depot/projects/hammer/sys/conf/kern.mk#22 integrate .. //depot/projects/hammer/sys/conf/kern.post.mk#39 integrate .. //depot/projects/hammer/sys/conf/kern.pre.mk#43 integrate .. //depot/projects/hammer/sys/conf/kmod.mk#58 integrate .. //depot/projects/hammer/sys/conf/ldscript.alpha#5 delete .. //depot/projects/hammer/sys/conf/options#97 integrate .. //depot/projects/hammer/sys/conf/options.alpha#9 delete .. //depot/projects/hammer/sys/conf/options.amd64#42 integrate .. //depot/projects/hammer/sys/conf/options.arm#8 integrate .. //depot/projects/hammer/sys/conf/options.i386#47 integrate .. //depot/projects/hammer/sys/conf/options.pc98#43 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/COPYRIGHT#4 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/README#5 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/ah.h#8 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/ah_desc.h#4 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/ah_devid.h#5 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/hammer/sys/contrib/dev/ath/freebsd/ah_if.m#4 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/freebsd/ah_osdep.c#8 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/freebsd/ah_osdep.h#6 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/hammer/sys/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/hammer/sys/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/hammer/sys/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/hammer/sys/contrib/dev/ath/public/ap43.inc#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jul 6 00:52:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D353116A4DF; Thu, 6 Jul 2006 00:52:50 +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 B222A16A4DD for ; Thu, 6 Jul 2006 00:52:50 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 792AF43D45 for ; Thu, 6 Jul 2006 00:52:50 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k660qo3J096209 for ; Thu, 6 Jul 2006 00:52:50 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k660qoG7096206 for perforce@freebsd.org; Thu, 6 Jul 2006 00:52:50 GMT (envelope-from cognet@freebsd.org) Date: Thu, 6 Jul 2006 00:52:50 GMT Message-Id: <200607060052.k660qoG7096206@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100684 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 00:52:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100684 Change 100684 by cognet@cognet on 2006/07/06 00:52:15 Ooops prefix the cp number with $. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#3 (text+ko) ==== @@ -44,9 +44,9 @@ { register_t ret, tmp; - __asm __volatile("mfc0 %0, 12\n" /* MIPS_COP_0_STATUS */ - "and %1, %0, ~1\n" /* MIPS_SR_INT_IE */ - "mtc0 %1, 12\n" /* MIPS_COP_0_STATUS */ + __asm __volatile("mfc0 %0, $12\n" /* MIPS_COP_0_STATUS */ + "and %1, $%0, ~1\n" /* MIPS_SR_INT_IE */ + "mtc0 %1, $12\n" /* MIPS_COP_0_STATUS */ : "=r" (ret), "=r" (tmp)); return (ret); } @@ -56,9 +56,9 @@ { register_t tmp; - __asm __volatile("mfc %0, 12\n" /* MIPS_COP_0_STATUS */ + __asm __volatile("mfc %0, $12\n" /* MIPS_COP_0_STATUS */ "and %0, %0, 1\n" /* MIPS_SR_INT_IE */ - "mtc0 %0, 12\n" /* MIPS_COP_0_STATUS */ + "mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ : "=r" (tmp)); } @@ -66,7 +66,7 @@ intr_restore(register_t flag) { - __asm __volatile("mtc0 %0, 12\n" /* MIPS_COP_0_STATUS */ + __asm __volatile("mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ : : "r" (flag)); } From owner-p4-projects@FreeBSD.ORG Thu Jul 6 01:12:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8A69F16A4E0; Thu, 6 Jul 2006 01:12:16 +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 340F416A4DD for ; Thu, 6 Jul 2006 01:12:16 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC5A243D49 for ; Thu, 6 Jul 2006 01:12:15 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k661CF4L098579 for ; Thu, 6 Jul 2006 01:12:15 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k661CEbG098576 for perforce@freebsd.org; Thu, 6 Jul 2006 01:12:14 GMT (envelope-from peter@freebsd.org) Date: Thu, 6 Jul 2006 01:12:14 GMT Message-Id: <200607060112.k661CEbG098576@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 100685 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 01:12:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=100685 Change 100685 by peter@peter_daintree on 2006/07/06 01:11:18 IFC @100673 Affected files ... .. //depot/projects/bike_sched/sys/Makefile#2 integrate .. //depot/projects/bike_sched/sys/amd64/amd64/pmap.c#4 integrate .. //depot/projects/bike_sched/sys/amd64/conf/GENERIC#3 integrate .. //depot/projects/bike_sched/sys/dev/ata/ata-chipset.c#3 integrate .. //depot/projects/bike_sched/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/bike_sched/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/bike_sched/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/bike_sched/sys/dev/usb/if_aue.c#2 integrate .. //depot/projects/bike_sched/sys/i386/conf/GENERIC#3 integrate .. //depot/projects/bike_sched/sys/ia64/include/ieeefp.h#2 integrate .. //depot/projects/bike_sched/sys/kern/init_sysent.c#3 integrate .. //depot/projects/bike_sched/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/bike_sched/sys/kern/syscalls.c#3 integrate .. //depot/projects/bike_sched/sys/kern/syscalls.master#4 integrate .. //depot/projects/bike_sched/sys/kern/vfs_subr.c#3 integrate .. //depot/projects/bike_sched/sys/net/if_enc.c#2 integrate .. //depot/projects/bike_sched/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#2 integrate .. //depot/projects/bike_sched/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 integrate .. //depot/projects/bike_sched/sys/netinet/in_rmx.c#2 integrate .. //depot/projects/bike_sched/sys/netinet/libalias/libalias.3#2 integrate .. //depot/projects/bike_sched/sys/netinet6/in6_rmx.c#2 integrate .. //depot/projects/bike_sched/sys/sys/syscall.h#3 integrate .. //depot/projects/bike_sched/sys/sys/syscall.mk#3 integrate .. //depot/projects/bike_sched/sys/sys/sysproto.h#3 integrate Differences ... ==== //depot/projects/bike_sched/sys/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/bike_sched/sys/amd64/amd64/pmap.c#4 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.564 2006/07/05 07:04:31 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -2969,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3022,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3082,7 +3071,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3093,7 +3098,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* ==== //depot/projects/bike_sched/sys/amd64/conf/GENERIC#3 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/bike_sched/sys/dev/ata/ata-chipset.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.164 2006/06/28 09:59:09 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.165 2006/07/04 20:36:03 sos Exp $"); #include "opt_ata.h" #include @@ -142,6 +142,7 @@ static void ata_promise_queue_hpkt(struct ata_pci_controller *ctlr, u_int32_t hpkt); static void ata_promise_next_hpkt(struct ata_pci_controller *ctlr); static int ata_serverworks_chipinit(device_t dev); +static int ata_serverworks_allocate(device_t dev); static void ata_serverworks_setmode(device_t dev, int mode); static int ata_sii_chipinit(device_t dev); static int ata_cmd_allocate(device_t dev); @@ -1894,6 +1895,8 @@ for (i = ATA_DATA; i < ATA_MAX_RES; i++) ch->r_io[i].res = ctlr->r_res2; + + /* setup ATA registers */ ch->r_io[ATA_DATA].offset = ch_offset + 0x00; ch->r_io[ATA_FEATURE].offset = ch_offset + 0x06; ch->r_io[ATA_COUNT].offset = ch_offset + 0x08; @@ -1906,9 +1909,13 @@ ch->r_io[ATA_STATUS].offset = ch_offset + 0x1c; ch->r_io[ATA_ALTSTAT].offset = ch_offset + 0x28; ch->r_io[ATA_CONTROL].offset = ch_offset + 0x29; + + /* setup DMA registers */ ch->r_io[ATA_SSTATUS].offset = ch_offset + 0x100; ch->r_io[ATA_SERROR].offset = ch_offset + 0x104; ch->r_io[ATA_SCONTROL].offset = ch_offset + 0x108; + + /* setup SATA registers */ ch->r_io[ATA_BMCMD_PORT].offset = ch_offset + 0x70; ch->r_io[ATA_BMSTAT_PORT].offset = ch_offset + 0x72; ch->r_io[ATA_BMDTP_PORT].offset = ch_offset + 0x74; @@ -3890,11 +3897,14 @@ struct ata_pci_controller *ctlr = device_get_softc(dev); struct ata_chip_id *idx; static struct ata_chip_id ids[] = - {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, - { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, - { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, - { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, - { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, + {{ ATA_ROSB4, 0x00, SWKS33, 0x00, ATA_UDMA2, "ROSB4" }, + { ATA_CSB5, 0x92, SWKS100, 0x00, ATA_UDMA5, "CSB5" }, + { ATA_CSB5, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB5" }, + { ATA_CSB6, 0x00, SWKS100, 0x00, ATA_UDMA5, "CSB6" }, + { ATA_CSB6_1, 0x00, SWKS66, 0x00, ATA_UDMA4, "CSB6" }, + { ATA_HT1000, 0x00, SWKS100, 0x00, ATA_UDMA5, "HT1000" }, + { ATA_HT1000_S1, 0x00, SWKS100, 0x00, ATA_SA150, "HT1000 SATA" }, + { ATA_HT1000_S2, 0x00, SWKSMIO, 0x00, ATA_SA150, "HT1000 SATA mmio" }, { 0, 0, 0, 0, 0, 0}}; char buffer[64]; @@ -3917,7 +3927,19 @@ if (ata_setup_interrupt(dev)) return ENXIO; - if (ctlr->chip->cfg1 == SWKS33) { + if (ctlr->chip->cfg1 == SWKSMIO) { + ctlr->r_type2 = SYS_RES_MEMORY; + ctlr->r_rid2 = PCIR_BAR(5); + if (!(ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2, + &ctlr->r_rid2, RF_ACTIVE))) + return ENXIO; + + ctlr->channels = 4; + ctlr->allocate = ata_serverworks_allocate; + ctlr->setmode = ata_sata_setmode; + return 0; + } + else if (ctlr->chip->cfg1 == SWKS33) { device_t *children; int nchildren, i; @@ -3943,6 +3965,46 @@ return 0; } +static int +ata_serverworks_allocate(device_t dev) +{ + struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(dev)); + struct ata_channel *ch = device_get_softc(dev); + int ch_offset; + int i; + + ch_offset = ch->unit * 0x100; + + for (i = ATA_DATA; i < ATA_MAX_RES; i++) + ch->r_io[i].res = ctlr->r_res2; + + /* setup ATA registers */ + ch->r_io[ATA_DATA].offset = ch_offset + 0x00; + ch->r_io[ATA_FEATURE].offset = ch_offset + 0x04; + ch->r_io[ATA_COUNT].offset = ch_offset + 0x08; + ch->r_io[ATA_SECTOR].offset = ch_offset + 0x0c; + ch->r_io[ATA_CYL_LSB].offset = ch_offset + 0x10; + ch->r_io[ATA_CYL_MSB].offset = ch_offset + 0x14; + ch->r_io[ATA_DRIVE].offset = ch_offset + 0x18; + ch->r_io[ATA_COMMAND].offset = ch_offset + 0x1c; + ch->r_io[ATA_CONTROL].offset = ch_offset + 0x20; + ata_default_registers(dev); + + /* setup DMA registers */ + ch->r_io[ATA_BMCMD_PORT].offset = ch_offset + 0x30; + ch->r_io[ATA_BMSTAT_PORT].offset = ch_offset + 0x32; + ch->r_io[ATA_BMDTP_PORT].offset = ch_offset + 0x34; + + /* setup SATA registers */ + ch->r_io[ATA_SSTATUS].offset = ch_offset + 0x40; + ch->r_io[ATA_SERROR].offset = ch_offset + 0x44; + ch->r_io[ATA_SCONTROL].offset = ch_offset + 0x48; + + ch->flags |= ATA_NO_SLAVE; + ata_pci_hw(dev); + return 0; +} + static void ata_serverworks_setmode(device_t dev, int mode) { @@ -4200,6 +4262,7 @@ ch->r_io[ATA_CONTROL].offset = 0x8a + (unit01 << 6) + (unit10 << 8); ch->r_io[ATA_IDX_ADDR].res = ctlr->r_res2; ata_default_registers(dev); + ch->r_io[ATA_BMCMD_PORT].res = ctlr->r_res2; ch->r_io[ATA_BMCMD_PORT].offset = 0x00 + (unit01 << 3) + (unit10 << 8); ch->r_io[ATA_BMSTAT_PORT].res = ctlr->r_res2; ==== //depot/projects/bike_sched/sys/dev/ata/ata-lowlevel.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.76 2006/01/18 09:14:55 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.77 2006/07/04 20:36:03 sos Exp $"); #include "opt_ata.h" #include @@ -719,7 +719,7 @@ DELAY(20); } if (timeout <= 0) { - device_printf(request->dev,"timeout waiting for ATAPI ready\n"); + device_printf(request->dev, "timeout waiting for ATAPI ready\n"); request->result = EIO; return -1; } ==== //depot/projects/bike_sched/sys/dev/ata/ata-pci.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.64 2006/03/13 14:01:37 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.65 2006/07/04 20:36:03 sos Exp $ */ /* structure holding chipset config info */ @@ -249,6 +249,9 @@ #define ATA_CSB5 0x02121166 #define ATA_CSB6 0x02131166 #define ATA_CSB6_1 0x02171166 +#define ATA_HT1000 0x02141166 +#define ATA_HT1000_S1 0x024b1166 +#define ATA_HT1000_S2 0x024a1166 #define ATA_SILICON_IMAGE_ID 0x1095 #define ATA_SII3114 0x31141095 @@ -362,6 +365,7 @@ #define SWKS33 0 #define SWKS66 1 #define SWKS100 2 +#define SWKSMIO 3 #define SIIMEMIO 1 #define SIIINTR 0x01 ==== //depot/projects/bike_sched/sys/dev/sk/if_sk.c#3 (text) ==== @@ -48,7 +48,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.125 2006/06/07 09:05:20 yongari Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.126 2006/07/05 04:56:50 yongari Exp $"); /* * SysKonnect SK-NET gigabit ethernet driver for FreeBSD. Supports @@ -140,7 +140,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.125 2006/06/07 09:05:20 yongari Exp $"; + "$FreeBSD: src/sys/dev/sk/if_sk.c,v 1.126 2006/07/05 04:56:50 yongari Exp $"; #endif static struct sk_type sk_devs[] = { @@ -2871,8 +2871,8 @@ SK_IF_LOCK(sc_if); /* - * Reclaim first as there is a possibility of loosing Tx completion - * interrupt. + * Reclaim first as there is a possibility of losing Tx completion + * interrupts. */ sk_txeof(sc_if); if (sc_if->sk_cdata.sk_tx_cnt != 0) { ==== //depot/projects/bike_sched/sys/dev/usb/if_aue.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/if_aue.c,v 1.96 2006/02/14 12:44:55 glebius Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/if_aue.c,v 1.97 2006/07/05 00:49:26 thompsa Exp $"); /* * ADMtek AN986 Pegasus and AN8511 Pegasus II USB to ethernet driver. @@ -524,6 +524,7 @@ struct ifnet *ifp; struct ifmultiaddr *ifma; u_int32_t h = 0, i; + u_int8_t hashtbl[8] = { 0, 0, 0, 0, 0, 0, 0, 0 }; ifp = sc->aue_ifp; @@ -534,10 +535,6 @@ AUE_CLRBIT(sc, AUE_CTL0, AUE_CTL0_ALLMULTI); - /* first, zot all the existing hash bits */ - for (i = 0; i < 8; i++) - aue_csr_write_1(sc, AUE_MAR0 + i, 0); - /* now program new ones */ IF_ADDR_LOCK(ifp); #if __FreeBSD_version >= 500000 @@ -550,10 +547,14 @@ continue; h = ether_crc32_le(LLADDR((struct sockaddr_dl *) ifma->ifma_addr), ETHER_ADDR_LEN) & ((1 << AUE_BITS) - 1); - AUE_SETBIT(sc, AUE_MAR + (h >> 3), 1 << (h & 0x7)); + hashtbl[(h >> 3)] |= 1 << (h & 0x7); } IF_ADDR_UNLOCK(ifp); + /* write the hashtable */ + for (i = 0; i < 8; i++) + aue_csr_write_1(sc, AUE_MAR0 + i, hashtbl[i]); + return; } ==== //depot/projects/bike_sched/sys/i386/conf/GENERIC#3 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.452 2006/06/26 22:03:21 babkin Exp $ +# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.453 2006/07/05 02:32:54 davidxu Exp $ cpu I486_CPU cpu I586_CPU @@ -30,7 +30,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/bike_sched/sys/ia64/include/ieeefp.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/include/ieeefp.h,v 1.4 2003/08/11 21:25:19 marcel Exp $ + * $FreeBSD: src/sys/ia64/include/ieeefp.h,v 1.5 2006/07/05 06:10:21 bde Exp $ */ #ifndef _MACHINE_IEEEFP_H_ @@ -39,10 +39,10 @@ #define FP_X_IMP IA64_FPSR_TRAP_ID /* imprecise(inexact) exception */ typedef enum { - FP_RZ=0, /* round to zero (truncate) */ - FP_RM=1, /* round toward negative infinity */ - FP_RN=2, /* round to nearest representable number */ - FP_RP=3 /* round toward positive infinity */ + FP_RN = 0, /* round to nearest */ + FP_RM, /* round toward minus infinity */ + FP_RP, /* round toward plus infinity */ + FP_RZ /* round toward zero */ } fp_rnd_t; -#endif /* _MACHINE_IEEEFP_H_ */ +#endif /* !_MACHINE_IEEEFP_H_ */ ==== //depot/projects/bike_sched/sys/kern/init_sysent.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * $FreeBSD: src/sys/kern/init_sysent.c,v 1.212 2006/07/05 19:24:14 wsalamon Exp $ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp */ #include "opt_compat.h" @@ -50,8 +50,8 @@ { compat4(SYF_MPSAFE | AS(freebsd4_getfsstat_args),getfsstat), AUE_GETFSSTAT }, /* 18 = old getfsstat */ { compat(SYF_MPSAFE | AS(olseek_args),lseek), AUE_LSEEK }, /* 19 = old lseek */ { SYF_MPSAFE | 0, (sy_call_t *)getpid, AUE_GETPID }, /* 20 = getpid */ - { AS(mount_args), (sy_call_t *)mount, AUE_MOUNT }, /* 21 = mount */ - { AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT }, /* 22 = unmount */ + { SYF_MPSAFE | AS(mount_args), (sy_call_t *)mount, AUE_MOUNT }, /* 21 = mount */ + { SYF_MPSAFE | AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT }, /* 22 = unmount */ { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid, AUE_SETUID }, /* 23 = setuid */ { SYF_MPSAFE | 0, (sy_call_t *)getuid, AUE_GETUID }, /* 24 = getuid */ { SYF_MPSAFE | 0, (sy_call_t *)geteuid, AUE_GETEUID }, /* 25 = geteuid */ @@ -384,10 +384,10 @@ { SYF_MPSAFE | AS(__acl_delete_fd_args), (sy_call_t *)__acl_delete_fd, AUE_NULL }, /* 352 = __acl_delete_fd */ { SYF_MPSAFE | AS(__acl_aclcheck_file_args), (sy_call_t *)__acl_aclcheck_file, AUE_NULL }, /* 353 = __acl_aclcheck_file */ { SYF_MPSAFE | AS(__acl_aclcheck_fd_args), (sy_call_t *)__acl_aclcheck_fd, AUE_NULL }, /* 354 = __acl_aclcheck_fd */ - { SYF_MPSAFE | AS(extattrctl_args), (sy_call_t *)extattrctl, AUE_NULL }, /* 355 = extattrctl */ - { SYF_MPSAFE | AS(extattr_set_file_args), (sy_call_t *)extattr_set_file, AUE_NULL }, /* 356 = extattr_set_file */ - { SYF_MPSAFE | AS(extattr_get_file_args), (sy_call_t *)extattr_get_file, AUE_NULL }, /* 357 = extattr_get_file */ - { SYF_MPSAFE | AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file, AUE_NULL }, /* 358 = extattr_delete_file */ + { SYF_MPSAFE | AS(extattrctl_args), (sy_call_t *)extattrctl, AUE_EXTATTRCTL }, /* 355 = extattrctl */ + { SYF_MPSAFE | AS(extattr_set_file_args), (sy_call_t *)extattr_set_file, AUE_EXTATTR_SET_FILE }, /* 356 = extattr_set_file */ + { SYF_MPSAFE | AS(extattr_get_file_args), (sy_call_t *)extattr_get_file, AUE_EXTATTR_GET_FILE }, /* 357 = extattr_get_file */ + { SYF_MPSAFE | AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file, AUE_EXTATTR_DELETE_FILE }, /* 358 = extattr_delete_file */ { SYF_MPSAFE | AS(aio_waitcomplete_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 359 = aio_waitcomplete */ { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid, AUE_GETRESUID }, /* 360 = getresuid */ { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid, AUE_GETRESGID }, /* 361 = getresgid */ @@ -400,14 +400,14 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 368 = __cap_set_fd */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 369 = __cap_set_file */ { AS(nosys_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 370 = lkmressys */ - { SYF_MPSAFE | AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd, AUE_NULL }, /* 371 = extattr_set_fd */ - { SYF_MPSAFE | AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd, AUE_NULL }, /* 372 = extattr_get_fd */ - { SYF_MPSAFE | AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd, AUE_NULL }, /* 373 = extattr_delete_fd */ + { SYF_MPSAFE | AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd, AUE_EXTATTR_SET_FD }, /* 371 = extattr_set_fd */ + { SYF_MPSAFE | AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd, AUE_EXTATTR_GET_FD }, /* 372 = extattr_get_fd */ + { SYF_MPSAFE | AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd, AUE_EXTATTR_DELETE_FD }, /* 373 = extattr_delete_fd */ { SYF_MPSAFE | AS(__setugid_args), (sy_call_t *)__setugid, AUE_NULL }, /* 374 = __setugid */ { AS(nfsclnt_args), (sy_call_t *)nosys, AUE_NULL }, /* 375 = nfsclnt */ { SYF_MPSAFE | AS(eaccess_args), (sy_call_t *)eaccess, AUE_EACCESS }, /* 376 = eaccess */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 377 = afs_syscall */ - { AS(nmount_args), (sy_call_t *)nmount, AUE_NMOUNT }, /* 378 = nmount */ + { SYF_MPSAFE | AS(nmount_args), (sy_call_t *)nmount, AUE_NMOUNT }, /* 378 = nmount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 379 = kse_exit */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 380 = kse_wakeup */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 381 = kse_create */ @@ -441,9 +441,9 @@ { SYF_MPSAFE | AS(__mac_get_pid_args), (sy_call_t *)__mac_get_pid, AUE_NULL }, /* 409 = __mac_get_pid */ { SYF_MPSAFE | AS(__mac_get_link_args), (sy_call_t *)__mac_get_link, AUE_NULL }, /* 410 = __mac_get_link */ { SYF_MPSAFE | AS(__mac_set_link_args), (sy_call_t *)__mac_set_link, AUE_NULL }, /* 411 = __mac_set_link */ - { SYF_MPSAFE | AS(extattr_set_link_args), (sy_call_t *)extattr_set_link, AUE_NULL }, /* 412 = extattr_set_link */ - { SYF_MPSAFE | AS(extattr_get_link_args), (sy_call_t *)extattr_get_link, AUE_NULL }, /* 413 = extattr_get_link */ - { SYF_MPSAFE | AS(extattr_delete_link_args), (sy_call_t *)extattr_delete_link, AUE_NULL }, /* 414 = extattr_delete_link */ + { SYF_MPSAFE | AS(extattr_set_link_args), (sy_call_t *)extattr_set_link, AUE_EXTATTR_SET_LINK }, /* 412 = extattr_set_link */ + { SYF_MPSAFE | AS(extattr_get_link_args), (sy_call_t *)extattr_get_link, AUE_EXTATTR_GET_LINK }, /* 413 = extattr_get_link */ + { SYF_MPSAFE | AS(extattr_delete_link_args), (sy_call_t *)extattr_delete_link, AUE_EXTATTR_DELETE_LINK }, /* 414 = extattr_delete_link */ { SYF_MPSAFE | AS(__mac_execve_args), (sy_call_t *)__mac_execve, AUE_NULL }, /* 415 = __mac_execve */ { SYF_MPSAFE | AS(sigaction_args), (sy_call_t *)sigaction, AUE_SIGACTION }, /* 416 = sigaction */ { SYF_MPSAFE | AS(sigreturn_args), (sy_call_t *)sigreturn, AUE_SIGRETURN }, /* 417 = sigreturn */ @@ -466,9 +466,9 @@ { SYF_MPSAFE | AS(_umtx_lock_args), (sy_call_t *)_umtx_lock, AUE_NULL }, /* 434 = _umtx_lock */ { SYF_MPSAFE | AS(_umtx_unlock_args), (sy_call_t *)_umtx_unlock, AUE_NULL }, /* 435 = _umtx_unlock */ { SYF_MPSAFE | AS(jail_attach_args), (sy_call_t *)jail_attach, AUE_NULL }, /* 436 = jail_attach */ - { SYF_MPSAFE | AS(extattr_list_fd_args), (sy_call_t *)extattr_list_fd, AUE_NULL }, /* 437 = extattr_list_fd */ - { SYF_MPSAFE | AS(extattr_list_file_args), (sy_call_t *)extattr_list_file, AUE_NULL }, /* 438 = extattr_list_file */ - { SYF_MPSAFE | AS(extattr_list_link_args), (sy_call_t *)extattr_list_link, AUE_NULL }, /* 439 = extattr_list_link */ + { SYF_MPSAFE | AS(extattr_list_fd_args), (sy_call_t *)extattr_list_fd, AUE_EXTATTR_LIST_FD }, /* 437 = extattr_list_fd */ + { SYF_MPSAFE | AS(extattr_list_file_args), (sy_call_t *)extattr_list_file, AUE_EXTATTR_LIST_FILE }, /* 438 = extattr_list_file */ + { SYF_MPSAFE | AS(extattr_list_link_args), (sy_call_t *)extattr_list_link, AUE_EXTATTR_LIST_LINK }, /* 439 = extattr_list_link */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 440 = kse_switchin */ { SYF_MPSAFE | AS(ksem_timedwait_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 441 = ksem_timedwait */ { SYF_MPSAFE | AS(thr_suspend_args), (sy_call_t *)thr_suspend, AUE_NULL }, /* 442 = thr_suspend */ ==== //depot/projects/bike_sched/sys/kern/syscalls.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * $FreeBSD: src/sys/kern/syscalls.c,v 1.196 2006/07/05 19:24:14 wsalamon Exp $ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp */ const char *syscallnames[] = { ==== //depot/projects/bike_sched/sys/kern/syscalls.master#4 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp $ + $FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp $ ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 ; ; System call name/number master file. @@ -618,16 +618,18 @@ acl_type_t type, struct acl *aclp); } 354 AUE_NULL MSTD { int __acl_aclcheck_fd(int filedes, \ acl_type_t type, struct acl *aclp); } -355 AUE_NULL MSTD { int extattrctl(const char *path, int cmd, \ +355 AUE_EXTATTRCTL MSTD { int extattrctl(const char *path, int cmd, \ const char *filename, int attrnamespace, \ const char *attrname); } -356 AUE_NULL MSTD { int extattr_set_file(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -357 AUE_NULL MSTD { ssize_t extattr_get_file(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -358 AUE_NULL MSTD { int extattr_delete_file(const char *path, \ +356 AUE_EXTATTR_SET_FILE MSTD { int extattr_set_file( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +357 AUE_EXTATTR_GET_FILE MSTD { ssize_t extattr_get_file( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +358 AUE_EXTATTR_DELETE_FILE MSTD { int extattr_delete_file(const char *path, \ int attrnamespace, \ const char *attrname); } 359 AUE_NULL MNOSTD { int aio_waitcomplete( \ @@ -649,13 +651,13 @@ 368 AUE_NULL UNIMPL __cap_set_fd 369 AUE_NULL UNIMPL __cap_set_file 370 AUE_NULL NODEF lkmressys lkmressys nosys_args int -371 AUE_NULL MSTD { int extattr_set_fd(int fd, \ +371 AUE_EXTATTR_SET_FD MSTD { int extattr_set_fd(int fd, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -372 AUE_NULL MSTD { ssize_t extattr_get_fd(int fd, \ +372 AUE_EXTATTR_GET_FD MSTD { ssize_t extattr_get_fd(int fd, \ int attrnamespace, const char *attrname, \ void *data, size_t nbytes); } -373 AUE_NULL MSTD { int extattr_delete_fd(int fd, \ +373 AUE_EXTATTR_DELETE_FD MSTD { int extattr_delete_fd(int fd, \ int attrnamespace, \ const char *attrname); } 374 AUE_NULL MSTD { int __setugid(int flag); } @@ -715,14 +717,16 @@ struct mac *mac_p); } 411 AUE_NULL MSTD { int __mac_set_link(const char *path_p, \ struct mac *mac_p); } -412 AUE_NULL MSTD { int extattr_set_link(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -413 AUE_NULL MSTD { ssize_t extattr_get_link(const char *path, \ - int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } -414 AUE_NULL MSTD { int extattr_delete_link(const char *path, \ - int attrnamespace, \ +412 AUE_EXTATTR_SET_LINK MSTD { int extattr_set_link( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +413 AUE_EXTATTR_GET_LINK MSTD { ssize_t extattr_get_link( \ + const char *path, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +414 AUE_EXTATTR_DELETE_LINK MSTD { int extattr_delete_link( \ + const char *path, int attrnamespace, \ const char *attrname); } 415 AUE_NULL MSTD { int __mac_execve(char *fname, char **argv, \ char **envv, struct mac *mac_p); } @@ -758,13 +762,13 @@ 434 AUE_NULL MSTD { int _umtx_lock(struct umtx *umtx); } 435 AUE_NULL MSTD { int _umtx_unlock(struct umtx *umtx); } 436 AUE_NULL MSTD { int jail_attach(int jid); } -437 AUE_NULL MSTD { ssize_t extattr_list_fd(int fd, \ +437 AUE_EXTATTR_LIST_FD MSTD { ssize_t extattr_list_fd(int fd, \ int attrnamespace, void *data, \ size_t nbytes); } -438 AUE_NULL MSTD { ssize_t extattr_list_file( \ +438 AUE_EXTATTR_LIST_FILE MSTD { ssize_t extattr_list_file( \ const char *path, int attrnamespace, \ void *data, size_t nbytes); } -439 AUE_NULL MSTD { ssize_t extattr_list_link( \ +439 AUE_EXTATTR_LIST_LINK MSTD { ssize_t extattr_list_link( \ const char *path, int attrnamespace, \ void *data, size_t nbytes); } 440 AUE_NULL UNIMPL kse_switchin ==== //depot/projects/bike_sched/sys/kern/vfs_subr.c#3 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_subr.c,v 1.676 2006/06/26 22:03:21 babkin Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_subr.c,v 1.677 2006/07/05 16:33:25 kib Exp $"); #include "opt_ddb.h" #include "opt_mac.h" @@ -785,6 +785,9 @@ VNASSERT(TAILQ_EMPTY(&vp->v_cache_dst), vp, ("vp has namecache dst")); VNASSERT(LIST_EMPTY(&vp->v_cache_src), vp, ("vp has namecache src")); VI_UNLOCK(vp); +#ifdef MAC + mac_destroy_vnode(vp); +#endif if (vp->v_pollinfo != NULL) { knlist_destroy(&vp->v_pollinfo->vpi_selinfo.si_note); mtx_destroy(&vp->v_pollinfo->vpi_lock); @@ -796,9 +799,6 @@ #endif lockdestroy(vp->v_vnlock); mtx_destroy(&vp->v_interlock); -#ifdef MAC - mac_destroy_vnode(vp); -#endif uma_zfree(vnode_zone, vp); } ==== //depot/projects/bike_sched/sys/net/if_enc.c#2 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/net/if_enc.c,v 1.3 2006/06/28 21:57:35 thompsa Exp $ + * $FreeBSD: src/sys/net/if_enc.c,v 1.4 2006/07/04 23:09:11 thompsa Exp $ */ #include @@ -86,27 +86,18 @@ static int enc_output(struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst, struct rtentry *rt); static int enc_clone_create(struct if_clone *, int); -static int enc_clone_destroy(struct ifnet *); +static void enc_clone_destroy(struct ifnet *); IFC_SIMPLE_DECLARE(enc, 1); -static int +static void enc_clone_destroy(struct ifnet *ifp) { + KASSERT(ifp != encif, ("%s: destroying encif", __func__)); - mtx_lock(&enc_mtx); - /* do not allow enc0 to be destroyed */ - if (encif == ifp) { - mtx_unlock(&enc_mtx); - return (EBUSY); - } - mtx_unlock(&enc_mtx); - bpfdetach(ifp); if_detach(ifp); if_free(ifp); - - return (0); } static int ==== //depot/projects/bike_sched/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * $Id: ng_bt3c_pccard.c,v 1.5 2003/04/01 18:15:21 max Exp $ - * $FreeBSD: src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c,v 1.18 2005/10/26 23:13:51 emax Exp $ + * $FreeBSD: src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c,v 1.19 2006/07/05 17:18:47 emax Exp $ * * XXX XXX XX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX * @@ -96,30 +96,30 @@ #define bt3c_set_address(sc, address) \ do { \ - outb(rman_get_start((sc)->iobase) + BT3C_ADDR_L, ((address) & 0xff)); \ - outb(rman_get_start((sc)->iobase) + BT3C_ADDR_H, (((address) >> 8) & 0xff)); \ + bus_space_write_1((sc)->iot, (sc)->ioh, BT3C_ADDR_L, ((address) & 0xff)); \ + bus_space_write_1((sc)->iot, (sc)->ioh, BT3C_ADDR_H, (((address) >> 8) & 0xff)); \ } while (0) #define bt3c_read_data(sc, data) \ do { \ - (data) = inb(rman_get_start((sc)->iobase) + BT3C_DATA_L); \ - (data) |= ((inb(rman_get_start((sc)->iobase) + BT3C_DATA_H) & 0xff) << 8); \ + (data) = bus_space_read_1((sc)->iot, (sc)->ioh, BT3C_DATA_L); \ + (data) |= ((bus_space_read_1((sc)->iot, (sc)->ioh, BT3C_DATA_H) & 0xff) << 8); \ } while (0) #define bt3c_write_data(sc, data) \ do { \ - outb(rman_get_start((sc)->iobase) + BT3C_DATA_L, ((data) & 0xff)); \ - outb(rman_get_start((sc)->iobase) + BT3C_DATA_H, (((data) >> 8) & 0xff)); \ + bus_space_write_1((sc)->iot, (sc)->ioh, BT3C_DATA_L, ((data) & 0xff)); \ + bus_space_write_1((sc)->iot, (sc)->ioh, BT3C_DATA_H, (((data) >> 8) & 0xff)); \ } while (0) #define bt3c_read_control(sc, data) \ do { \ - (data) = inb(rman_get_start((sc)->iobase) + BT3C_CONTROL); \ + (data) = bus_space_read_1((sc)->iot, (sc)->ioh, BT3C_CONTROL); \ } while (0) #define bt3c_write_control(sc, data) \ do { \ - outb(rman_get_start((sc)->iobase) + BT3C_CONTROL, (data)); \ + bus_space_write_1((sc)->iot, (sc)->ioh, BT3C_CONTROL, (data)); \ } while (0) #define bt3c_read(sc, address, data) \ @@ -622,6 +622,8 @@ device_printf(dev, "Could not allocate I/O ports\n"); goto bad; } + sc->iot = rman_get_bustag(sc->iobase); + sc->ioh = rman_get_bushandle(sc->iobase); /* Allocate IRQ */ sc->irq_rid = 0; ==== //depot/projects/bike_sched/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * $Id: ng_bt3c_var.h,v 1.1 2002/11/24 19:46:54 max Exp $ - * $FreeBSD: src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h,v 1.3 2005/01/07 01:45:42 imp Exp $ + * $FreeBSD: src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h,v 1.4 2006/07/05 17:18:47 emax Exp $ * * XXX XXX XX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX * @@ -63,6 +63,8 @@ device_t dev; /* pointer back to device */ int iobase_rid; /* iobase RID */ struct resource *iobase; /* iobase */ + bus_space_tag_t iot; /* I/O tag */ + bus_space_handle_t ioh; /* I/O handle */ int irq_rid; /* irq RID */ struct resource *irq; /* irq */ void *irq_cookie; /* irq cookie */ ==== //depot/projects/bike_sched/sys/netinet/in_rmx.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/netinet/in_rmx.c,v 1.54 2005/09/19 22:54:55 andre Exp $ + * $FreeBSD: src/sys/netinet/in_rmx.c,v 1.55 2006/07/05 23:37:21 oleg Exp $ */ /* @@ -262,7 +262,7 @@ arg.found = arg.killed = 0; arg.rnh = rnh; - arg.nextstop = time_second + rtq_timeout; + arg.nextstop = time_uptime + rtq_timeout; arg.draining = arg.updating = 0; RADIX_NODE_HEAD_LOCK(rnh); rnh->rnh_walktree(rnh, in_rtqkill, &arg); @@ -277,14 +277,14 @@ * hard. */ if ((arg.found - arg.killed > rtq_toomany) && - (time_second - last_adjusted_timeout >= rtq_timeout) && + (time_uptime - last_adjusted_timeout >= rtq_timeout) && rtq_reallyold > rtq_minreallyold) { rtq_reallyold = 2 * rtq_reallyold / 3; if (rtq_reallyold < rtq_minreallyold) { rtq_reallyold = rtq_minreallyold; } - last_adjusted_timeout = time_second; + last_adjusted_timeout = time_uptime; #ifdef DIAGNOSTIC log(LOG_DEBUG, "in_rtqtimo: adjusted rtq_reallyold to %d\n", rtq_reallyold); @@ -297,7 +297,7 @@ } atv.tv_usec = 0; - atv.tv_sec = arg.nextstop - time_second; + atv.tv_sec = arg.nextstop - time_uptime; callout_reset(&rtq_timer, tvtohz(&atv), in_rtqtimo, rock); } ==== //depot/projects/bike_sched/sys/netinet/libalias/libalias.3#2 (text+ko) ==== @@ -23,9 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/sys/netinet/libalias/libalias.3,v 1.54 2005/11/24 14:17:35 ru Exp $ +.\" $FreeBSD: src/sys/netinet/libalias/libalias.3,v 1.55 2006/07/04 20:39:38 maxim Exp $ .\" -.Dd January 17, 2004 +.Dd July 04, 2006 .Dt LIBALIAS 3 .Os .Sh NAME @@ -1011,8 +1011,3 @@ a unique aliasing link can be established. In an alternate operating mode, the first choice of an aliasing port is also random and unrelated to the local port number. -.Sh BUGS -PPTP aliasing does not work when more than one internal client -connects to the same external server at the same time, because -PPTP requires a single TCP control connection to be established -between any two IP addresses. ==== //depot/projects/bike_sched/sys/netinet6/in6_rmx.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/netinet6/in6_rmx.c,v 1.15 2005/09/19 22:54:55 andre Exp $ */ +/* $FreeBSD: src/sys/netinet6/in6_rmx.c,v 1.16 2006/07/05 23:37:21 oleg Exp $ */ /* $KAME: in6_rmx.c,v 1.11 2001/07/26 06:53:16 jinmei Exp $ */ /*- @@ -332,7 +332,7 @@ arg.found = arg.killed = 0; arg.rnh = rnh; - arg.nextstop = time_second + rtq_timeout; + arg.nextstop = time_uptime + rtq_timeout; arg.draining = arg.updating = 0; RADIX_NODE_HEAD_LOCK(rnh); rnh->rnh_walktree(rnh, in6_rtqkill, &arg); @@ -347,14 +347,14 @@ * hard. */ if ((arg.found - arg.killed > rtq_toomany) - && (time_second - last_adjusted_timeout >= rtq_timeout) + && (time_uptime - last_adjusted_timeout >= rtq_timeout) && rtq_reallyold > rtq_minreallyold) { rtq_reallyold = 2*rtq_reallyold / 3; if (rtq_reallyold < rtq_minreallyold) { rtq_reallyold = rtq_minreallyold; } - last_adjusted_timeout = time_second; + last_adjusted_timeout = time_uptime; #ifdef DIAGNOSTIC log(LOG_DEBUG, "in6_rtqtimo: adjusted rtq_reallyold to %d", rtq_reallyold); @@ -367,7 +367,7 @@ } atv.tv_usec = 0; - atv.tv_sec = arg.nextstop - time_second; + atv.tv_sec = arg.nextstop - time_uptime; callout_reset(&rtq_timer, tvtohz(&atv), in6_rtqtimo, rock); } @@ -412,16 +412,17 @@ struct timeval atv; arg.rnh = rnh; - arg.nextstop = time_second + MTUTIMO_DEFAULT; + arg.nextstop = time_uptime + MTUTIMO_DEFAULT; RADIX_NODE_HEAD_LOCK(rnh); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jul 6 03:48:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 509AA16A4E0; Thu, 6 Jul 2006 03:48:33 +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 282DD16A4DE for ; Thu, 6 Jul 2006 03:48:33 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0A1FE43D66 for ; Thu, 6 Jul 2006 03:48:29 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k663mTvu007995 for ; Thu, 6 Jul 2006 03:48:29 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k663mTHW007992 for perforce@freebsd.org; Thu, 6 Jul 2006 03:48:29 GMT (envelope-from scottl@freebsd.org) Date: Thu, 6 Jul 2006 03:48:29 GMT Message-Id: <200607060348.k663mTHW007992@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 100686 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 03:48:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=100686 Change 100686 by scottl@scottl-wv1u on 2006/07/06 03:47:59 Use a sleep mutex to protect kernel environment handling instead of an sx lock. The sx lock seemed to only be used to get around the copyout case in kenv(KENV_DUMP) path. Fix that path to safely use a sleep lock instead. Affected files ... .. //depot/projects/scottl-camlock/src/sys/kern/kern_environment.c#7 edit .. //depot/projects/scottl-camlock/src/sys/kern/subr_hints.c#3 edit .. //depot/projects/scottl-camlock/src/sys/sys/systm.h#7 edit Differences ... ==== //depot/projects/scottl-camlock/src/sys/kern/kern_environment.c#7 (text+ko) ==== @@ -48,7 +48,6 @@ #include #include #include -#include #include #include #include @@ -65,7 +64,7 @@ /* dynamic environment variables */ char **kenvp; -struct sx kenv_lock; +struct mtx kenv_lock; /* * No need to protect this with a mutex @@ -86,7 +85,7 @@ int len; } */ *uap; { - char *name, *value; + char *name, *value, *buffer; size_t len, done, needed; int error, i; @@ -100,7 +99,8 @@ return (error); #endif done = needed = 0; - sx_slock(&kenv_lock); + buffer = malloc(uap->len, M_TEMP, M_WAITOK|M_ZERO); + mtx_lock(&kenv_lock); for (i = 0; kenvp[i] != NULL; i++) { len = strlen(kenvp[i]) + 1; needed += len; @@ -110,14 +110,15 @@ * buffer, just keep computing the required size. */ if (uap->value != NULL && len > 0) { - error = copyout(kenvp[i], uap->value + done, - len); - if (error) + if (done + len > uap->len) break; + bcopy(kenvp[i], buffer + done, len); done += len; } } - sx_sunlock(&kenv_lock); + mtx_unlock(&kenv_lock); + error = copyout(buffer, uap->value, done); + free(buffer, M_TEMP); td->td_retval[0] = ((done == needed) ? 0 : needed); return (error); } @@ -220,7 +221,7 @@ } kenvp[i] = NULL; - sx_init(&kenv_lock, "kernel environment"); + mtx_init(&kenv_lock, "kernel environment", NULL, MTX_DEF); dynamic_kenv = 1; } SYSINIT(kenv, SI_SUB_KMEM, SI_ORDER_ANY, init_dynamic_kenv, NULL); @@ -242,7 +243,7 @@ char *cp; int len, i; - sx_assert(&kenv_lock, SX_LOCKED); + mtx_assert(&kenv_lock, MA_OWNED); len = strlen(name); for (cp = kenvp[0], i = 0; cp != NULL; cp = kenvp[++i]) { if ((strncmp(cp, name, len) == 0) && @@ -288,16 +289,16 @@ int len; if (dynamic_kenv) { - sx_slock(&kenv_lock); + mtx_lock(&kenv_lock); cp = _getenv_dynamic(name, NULL); if (cp != NULL) { strcpy(buf, cp); - sx_sunlock(&kenv_lock); + mtx_unlock(&kenv_lock); len = strlen(buf) + 1; ret = malloc(len, M_KENV, M_WAITOK); strcpy(ret, buf); } else { - sx_sunlock(&kenv_lock); + mtx_unlock(&kenv_lock); ret = NULL; } } else @@ -314,9 +315,9 @@ char *cp; if (dynamic_kenv) { - sx_slock(&kenv_lock); + mtx_lock(&kenv_lock); cp = _getenv_dynamic(name, NULL); - sx_sunlock(&kenv_lock); + mtx_unlock(&kenv_lock); } else cp = _getenv_static(name); if (cp != NULL) @@ -344,12 +345,12 @@ buf = malloc(namelen + vallen, M_KENV, M_WAITOK); sprintf(buf, "%s=%s", name, value); - sx_xlock(&kenv_lock); + mtx_lock(&kenv_lock); cp = _getenv_dynamic(name, &i); if (cp != NULL) { oldenv = kenvp[i]; kenvp[i] = buf; - sx_xunlock(&kenv_lock); + mtx_unlock(&kenv_lock); free(oldenv, M_KENV); } else { /* We add the option if it wasn't found */ @@ -359,13 +360,13 @@ /* Bounds checking */ if (i < 0 || i >= KENV_SIZE) { free(buf, M_KENV); - sx_xunlock(&kenv_lock); + mtx_unlock(&kenv_lock); return (-1); } kenvp[i] = buf; kenvp[i + 1] = NULL; - sx_xunlock(&kenv_lock); + mtx_unlock(&kenv_lock); } return (0); } @@ -381,18 +382,18 @@ KENV_CHECK; - sx_xlock(&kenv_lock); + mtx_lock(&kenv_lock); cp = _getenv_dynamic(name, &i); if (cp != NULL) { oldenv = kenvp[i]; for (j = i + 1; kenvp[j] != NULL; j++) kenvp[i++] = kenvp[j]; kenvp[i] = NULL; - sx_xunlock(&kenv_lock); + mtx_unlock(&kenv_lock); free(oldenv, M_KENV); return (0); } - sx_xunlock(&kenv_lock); + mtx_unlock(&kenv_lock); return (-1); } ==== //depot/projects/scottl-camlock/src/sys/kern/subr_hints.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ #include #include -#include +#include #include #include @@ -72,7 +72,7 @@ break; case 2: /* fallback mode */ if (dynamic_kenv) { - sx_slock(&kenv_lock); + mtx_lock(&kenv_lock); cp = kenvp[0]; for (i = 0; cp != NULL; cp = kenvp[++i]) { if (!strncmp(cp, "hint.", 5)) { @@ -81,7 +81,7 @@ break; } } - sx_sunlock(&kenv_lock); + mtx_unlock(&kenv_lock); } else { cp = kern_envp; while (cp) { @@ -114,11 +114,11 @@ } if (use_kenv) { - sx_slock(&kenv_lock); + mtx_lock(&kenv_lock); i = 0; cp = kenvp[0]; if (cp == NULL) { - sx_sunlock(&kenv_lock); + mtx_unlock(&kenv_lock); return (ENOENT); } } else @@ -165,7 +165,7 @@ } } if (use_kenv) - sx_sunlock(&kenv_lock); + mtx_unlock(&kenv_lock); if (cp == NULL) return ENOENT; ==== //depot/projects/scottl-camlock/src/sys/sys/systm.h#7 (text+ko) ==== @@ -102,7 +102,7 @@ extern int envmode; extern int hintmode; /* 0 = off. 1 = config, 2 = fallback */ extern int dynamic_kenv; -extern struct sx kenv_lock; +extern struct mtx kenv_lock; extern char *kern_envp; extern char static_env[]; extern char static_hints[]; /* by config for now */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 04:04:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EFA9216A4E2; Thu, 6 Jul 2006 04:04:50 +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 C05C516A4E0 for ; Thu, 6 Jul 2006 04:04:50 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7862943D4C for ; Thu, 6 Jul 2006 04:04:50 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6644ojx009877 for ; Thu, 6 Jul 2006 04:04:50 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6644ou3009874 for perforce@freebsd.org; Thu, 6 Jul 2006 04:04:50 GMT (envelope-from scottl@freebsd.org) Date: Thu, 6 Jul 2006 04:04:50 GMT Message-Id: <200607060404.k6644ou3009874@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 100687 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 04:04:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100687 Change 100687 by scottl@scottl-wv1u on 2006/07/06 04:04:48 Drop the lock sooner in ahd_attach so that it doesn't interfere with the eventhandler API. Affected files ... .. //depot/projects/scottl-camlock/src/sys/dev/aic7xxx/aic79xx_osm.c#10 edit Differences ... ==== //depot/projects/scottl-camlock/src/sys/dev/aic7xxx/aic79xx_osm.c#10 (text+ko) ==== @@ -179,6 +179,7 @@ fail: ahd->platform_data->sim = sim; ahd->platform_data->path = path; + ahd_unlock(ahd, &s); if (count != 0) { /* We have to wait until after any system dumps... */ ahd->platform_data->eh = @@ -187,7 +188,6 @@ ahd_intr_enable(ahd, TRUE); } - ahd_unlock(ahd, &s); return (count); } From owner-p4-projects@FreeBSD.ORG Thu Jul 6 05:33:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E87C16A4E1; Thu, 6 Jul 2006 05:33: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 0896F16A4DA for ; Thu, 6 Jul 2006 05:33:41 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C5F3743D46 for ; Thu, 6 Jul 2006 05:33:40 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k665Xex0028723 for ; Thu, 6 Jul 2006 05:33:40 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k665Xejs028716 for perforce@freebsd.org; Thu, 6 Jul 2006 05:33:40 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 6 Jul 2006 05:33:40 GMT Message-Id: <200607060533.k665Xejs028716@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 100691 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 05:33:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=100691 Change 100691 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/06 05:32:43 fix config add some debug info to pmap_ipi Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/conf/GENERIC#5 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/pmap.c#8 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/conf/GENERIC#5 (text+ko) ==== @@ -211,4 +211,4 @@ device ccd options SPIN_PROFILING -options HZ=100+options HZ=100 ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/pmap.c#8 (text+ko) ==== @@ -1218,12 +1218,13 @@ pmap_ipi(pmap_t pmap, char *func, uint64_t arg1, uint64_t arg2) { - int i, cpu_count; + int i, cpu_count, retried; u_int cpus; cpumask_t cpumask, active, curactive; cpumask_t active_total, ackmask; uint16_t *cpulist; + retried = 0; if (!smp_started) return (0); @@ -1273,9 +1274,23 @@ while (ackmask != curactive) { membar(Sync); i++; - if (i > 10000000) - panic(" ackmask=0x%x active=0x%x\n", ackmask, curactive); + if (i > 10000000) { + uint64_t cpu_state; + printf("cpu with cpumask=0x%x appears to not be responding to ipis\n", + curactive & ~ackmask); + + hv_cpu_state((uint64_t)ffs64(curactive & ~ackmask), &cpu_state); + printf("cpu_state of %ld is %ld\n", ffs64(curactive & ~ackmask), cpu_state); + if (!retried) { + printf("I'm going to send off another ipi just to confirm that it isn't a memory barrier bug\n" + "and then I'm going to panic\n"); + + retried = 1; + goto retry; + } + panic(" ackmask=0x%x active=0x%x\n", ackmask, curactive); + } } active_total |= curactive; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 05:46:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3ADC816A4E7; Thu, 6 Jul 2006 05:46:59 +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 1740E16A4E5 for ; Thu, 6 Jul 2006 05:46:59 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CA5B343D45 for ; Thu, 6 Jul 2006 05:46:58 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k665kwTK030521 for ; Thu, 6 Jul 2006 05:46:58 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k665kwqW030518 for perforce@freebsd.org; Thu, 6 Jul 2006 05:46:58 GMT (envelope-from imp@freebsd.org) Date: Thu, 6 Jul 2006 05:46:58 GMT Message-Id: <200607060546.k665kwqW030518@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100693 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 05:46:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=100693 Change 100693 by imp@imp_lighthouse on 2006/07/06 05:46:44 Our board does weird things with serial ports sometimes for reasons that are unclear. We have noticed that RXD1 is held high, and some weird things based on which part we're talking to sometimes. To avoid this, we expliticly pull up the TXDx lines (but not for DBGU). This appears to be because the USARTs can supprot RS-485 multi-drop, but the DBGU doesn't. This may solve some weirdness that we're seeing, but until more tests are run, it won't be known. At least this way the state of all the lines is explict and we don't reply on the kindess of boatloaders for our good function. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_pio.c#14 edit .. //depot/projects/arm/src/sys/arm/at91/at91_piovar.h#2 edit .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#27 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_pio.c#14 (text+ko) ==== @@ -280,21 +280,29 @@ * them. */ void -at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask) +at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask, int use_pullup) { uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); PIO[PIO_ASR / 4] = periph_a_mask; PIO[PIO_PDR / 4] = periph_a_mask; + if (use_pullup) + PIO[PIO_PUER / 4] = periph_a_mask; + else + PIO[PIO_PUDR / 4] = periph_a_mask; } void -at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask) +at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask, int use_pullup) { uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); PIO[PIO_BSR / 4] = periph_b_mask; PIO[PIO_PDR / 4] = periph_b_mask; + if (use_pullup) + PIO[PIO_PUER / 4] = periph_b_mask; + else + PIO[PIO_PUDR / 4] = periph_b_mask; } void @@ -314,11 +322,15 @@ } void -at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask) +at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask, int use_pullup) { uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); PIO[PIO_OER / 4] = output_enable_mask; + if (use_pullup) + PIO[PIO_PUER / 4] = output_enable_mask; + else + PIO[PIO_PUDR / 4] = output_enable_mask; } void ==== //depot/projects/arm/src/sys/arm/at91/at91_piovar.h#2 (text+ko) ==== @@ -27,11 +27,12 @@ #ifndef ARM_AT91_AT91_PIOVAR_H #define ARM_AT91_AT91_PIOVAR_H -void at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask); -void at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask); +void at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask, int use_pullup); +void at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask, int use_pullup); void at91_pio_use_gpio(uint32_t pio, uint32_t gpio_mask); void at91_pio_gpio_input(uint32_t pio, uint32_t input_enable_mask); -void at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask); +void at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask, + int use_pullup); void at91_pio_gpio_set(uint32_t pio, uint32_t data_mask); void at91_pio_gpio_clear(uint32_t pio, uint32_t data_mask); ==== //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#27 (text+ko) ==== @@ -203,21 +203,33 @@ static long board_init(void) { + /* + * Since the USART supprots RS-485 multidrop mode, it allows the + * TX pins to float. However, for RS-232 operations, we don't want + * these pins to float. Instead, they should be pulled up to avoid + * mismatches. Linux does something similar when it configures the + * TX lines. This implies that we also allow the RX lines to float + * rather than be in the state they are left in by the boot loader. + * Since they are input pins, I think that this is the right thing + * to do. + */ + /* PIOA's A periph: Turn USART 0 and 2's TX/RX pins */ at91_pio_use_periph_a(AT91RM92_PIOA_BASE, - AT91C_PA17_TXD0 | AT91C_PA18_RXD0 | - AT91C_PA23_TXD2 | AT91C_PA22_RXD2); + AT91C_PA18_RXD0 | AT91C_PA22_RXD2, 0); + at91_pio_use_periph_a(AT91RM92_PIOA_BASE, + AT91C_PA17_TXD0 | AT91C_PA23_TXD2, 1); /* PIOA's B periph: Turn USART 3's TX/RX pins */ - at91_pio_use_periph_b(AT91RM92_PIOA_BASE, - AT91C_PA5_TXD3 | AT91C_PA6_RXD3); + at91_pio_use_periph_b(AT91RM92_PIOA_BASE, AT91C_PA6_RXD3, 0); + at91_pio_use_periph_b(AT91RM92_PIOA_BASE, AT91C_PA5_TXD3, 1); /* PIOB's A periph: Turn USART 1's TX/RX pins */ - at91_pio_use_periph_a(AT91RM92_PIOB_BASE, - AT91C_PB20_TXD1 | AT91C_PB21_RXD1); + at91_pio_use_periph_a(AT91RM92_PIOB_BASE, AT91C_PB21_RXD1, 0); + at91_pio_use_periph_a(AT91RM92_PIOB_BASE, AT91C_PB20_TXD1, 1); /* Pin assignment */ /* Assert PA24 low -- talk to rubidium */ at91_pio_use_gpio(AT91RM92_PIOA_BASE, AT91C_PIO_PA24); - at91_pio_gpio_output(AT91RM92_PIOA_BASE, AT91C_PIO_PA24); + at91_pio_gpio_output(AT91RM92_PIOA_BASE, AT91C_PIO_PA24, 0); at91_pio_gpio_clear(AT91RM92_PIOA_BASE, AT91C_PIO_PA24); return (ramsize()); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 07:12:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7B25B16A4E0; Thu, 6 Jul 2006 07:12:47 +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 55EF916A4DA for ; Thu, 6 Jul 2006 07:12:47 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0F36743D49 for ; Thu, 6 Jul 2006 07:12:47 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k667CkqI039538 for ; Thu, 6 Jul 2006 07:12:46 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k667CkPM039535 for perforce@freebsd.org; Thu, 6 Jul 2006 07:12:46 GMT (envelope-from jb@freebsd.org) Date: Thu, 6 Jul 2006 07:12:46 GMT Message-Id: <200607060712.k667CkPM039535@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100697 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 07:12:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=100697 Change 100697 by jb@jb_freebsd2 on 2006/07/06 07:12:24 Regenerate. Affected files ... .. //depot/projects/dtrace/src/sys/kern/init_sysent.c#4 edit .. //depot/projects/dtrace/src/sys/kern/syscalls.c#3 edit .. //depot/projects/dtrace/src/sys/kern/systrace_args.c#2 edit .. //depot/projects/dtrace/src/sys/sys/syscall.h#3 edit .. //depot/projects/dtrace/src/sys/sys/syscall.mk#3 edit .. //depot/projects/dtrace/src/sys/sys/sysproto.h#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/init_sysent.c#4 (text+ko) ==== @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp */ #include "opt_compat.h" @@ -50,8 +50,8 @@ { compat4(SYF_MPSAFE | AS(freebsd4_getfsstat_args),getfsstat), AUE_GETFSSTAT, NULL, 0, 0 }, /* 18 = old getfsstat */ { compat(SYF_MPSAFE | AS(olseek_args),lseek), AUE_LSEEK, NULL, 0, 0 }, /* 19 = old lseek */ { SYF_MPSAFE | 0, (sy_call_t *)getpid, AUE_GETPID, NULL, 0, 0 }, /* 20 = getpid */ - { AS(mount_args), (sy_call_t *)mount, AUE_MOUNT, NULL, 0, 0 }, /* 21 = mount */ - { AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT, NULL, 0, 0 }, /* 22 = unmount */ + { SYF_MPSAFE | AS(mount_args), (sy_call_t *)mount, AUE_MOUNT, NULL, 0, 0 }, /* 21 = mount */ + { SYF_MPSAFE | AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT, NULL, 0, 0 }, /* 22 = unmount */ { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid, AUE_SETUID, NULL, 0, 0 }, /* 23 = setuid */ { SYF_MPSAFE | 0, (sy_call_t *)getuid, AUE_GETUID, NULL, 0, 0 }, /* 24 = getuid */ { SYF_MPSAFE | 0, (sy_call_t *)geteuid, AUE_GETEUID, NULL, 0, 0 }, /* 25 = geteuid */ @@ -407,7 +407,7 @@ { AS(nfsclnt_args), (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 375 = nfsclnt */ { SYF_MPSAFE | 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_NMOUNT, NULL, 0, 0 }, /* 378 = nmount */ + { SYF_MPSAFE | AS(nmount_args), (sy_call_t *)nmount, AUE_NMOUNT, NULL, 0, 0 }, /* 378 = nmount */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 379 = kse_exit */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 380 = kse_wakeup */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 381 = kse_create */ ==== //depot/projects/dtrace/src/sys/kern/syscalls.c#3 (text+ko) ==== @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp */ const char *syscallnames[] = { ==== //depot/projects/dtrace/src/sys/kern/systrace_args.c#2 (text+ko) ==== @@ -2067,42 +2067,6 @@ *n_args = 3; break; } - /* kse_exit */ - case 379: { - *n_args = 0; - break; - } - /* kse_wakeup */ - case 380: { - struct kse_wakeup_args *p = params; - uarg[0] = (intptr_t) p->mbx; /* struct kse_mailbox * */ - *n_args = 1; - break; - } - /* kse_create */ - case 381: { - struct kse_create_args *p = params; - uarg[0] = (intptr_t) p->mbx; /* struct kse_mailbox * */ - iarg[1] = p->newgroup; /* int */ - *n_args = 2; - break; - } - /* kse_thr_interrupt */ - case 382: { - struct kse_thr_interrupt_args *p = params; - uarg[0] = (intptr_t) p->tmbx; /* struct kse_thr_mailbox * */ - iarg[1] = p->cmd; /* int */ - iarg[2] = p->data; /* long */ - *n_args = 3; - break; - } - /* kse_release */ - case 383: { - struct kse_release_args *p = params; - uarg[0] = (intptr_t) p->timeout; /* struct timespec * */ - *n_args = 1; - break; - } /* __mac_get_proc */ case 384: { struct __mac_get_proc_args *p = params; @@ -2534,14 +2498,6 @@ *n_args = 4; break; } - /* kse_switchin */ - case 440: { - struct kse_switchin_args *p = params; - uarg[0] = (intptr_t) p->tmbx; /* struct kse_thr_mailbox * */ - iarg[1] = p->flags; /* int */ - *n_args = 2; - break; - } /* ksem_timedwait */ case 441: { struct ksem_timedwait_args *p = params; ==== //depot/projects/dtrace/src/sys/sys/syscall.h#3 (text+ko) ==== @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp */ #define SYS_syscall 0 ==== //depot/projects/dtrace/src/sys/sys/syscall.mk#3 (text+ko) ==== @@ -1,7 +1,7 @@ # FreeBSD system call names. # DO NOT EDIT-- this file is automatically generated. # $FreeBSD$ -# created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp +# created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp MIASM = \ syscall.o \ exit.o \ ==== //depot/projects/dtrace/src/sys/sys/sysproto.h#3 (text+ko) ==== @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.215 2006/03/28 14:32:37 des Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.216 2006/06/27 14:46:31 jhb Exp */ #ifndef _SYS_SYSPROTO_H_ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 07:43:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 27FD716A4E0; Thu, 6 Jul 2006 07:43:29 +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 037D616A4DD for ; Thu, 6 Jul 2006 07:43:29 +0000 (UTC) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B11D243D4C for ; Thu, 6 Jul 2006 07:43:28 +0000 (GMT) (envelope-from dongmei@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k667hSH8041099 for ; Thu, 6 Jul 2006 07:43:28 GMT (envelope-from dongmei@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k667hRew041096 for perforce@freebsd.org; Thu, 6 Jul 2006 07:43:27 GMT (envelope-from dongmei@FreeBSD.org) Date: Thu, 6 Jul 2006 07:43:27 GMT Message-Id: <200607060743.k667hRew041096@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to dongmei@FreeBSD.org using -f From: dongmei To: Perforce Change Reviews Cc: Subject: PERFORCE change 100699 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 07:43:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=100699 Change 100699 by dongmei@soc-dongmei-sebsd on 2006/07/06 07:42:48 Modified to support making modular policy,if want to make modular policYnot monolithic policy, should to modify the MONOLITHIC to n in build.conf,then run: gmake policy. That will create loadable modular policy. Then based on this you can write your own loadable modular policy as follows: write myapp.te file#include the private types for module and allow rules write myapp.fc file#define the files' security context write myapp.if file#define the interface for other modules make install-header #to install the policy header file to /usr/share/sebsd/include/ make -f /usr/share/sebsd/include/Makefile #create the myapp.pp module semodule -i myapp.pp # load the myapp.pp policy module semodule -l # using this command can lookup the myapp.pp policy module's status Affected files ... .. //depot/projects/soc2006/dongmei_sebsd/Makefile#4 edit .. //depot/projects/soc2006/dongmei_sebsd/SEBSD-Installation.txt#2 integrate .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/Makefile#2 edit .. //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/Rules.modular#2 edit Differences ... ==== //depot/projects/soc2006/dongmei_sebsd/Makefile#4 (text+ko) ==== ==== //depot/projects/soc2006/dongmei_sebsd/SEBSD-Installation.txt#2 (text+ko) ==== @@ -41,13 +41,24 @@ # pkg_add -r gmake -3. Install SEBSD sources. After downloading the sources from +3. Enable multilabel support on filesystems. In order for the SEBSD file + labeling to function properly, file label support must be enabled. To + enable multilabel support on your system, boot into single user mode + and use 'tunefs' to enable multilabel support for each filesystem on + your system. Here is an example for /. + + # tunefs -l enable / + + Repeat this step, substituting each other filesystem in place of / as + above. + +4. Install SEBSD sources. After downloading the sources from http://www.trustedbsd.org/sebsd.html, untar them into /usr/src. # cd /usr/src # tar -zxf /path/to/sebsd-.tar.gz -4. Build the SEBSD system. This process is similar to the canonical +5. Build the SEBSD system. This process is similar to the canonical building of world detailed in the FreeBSD Handbook, with a few additional steps, and some re-arranging of the typical order. @@ -85,7 +96,7 @@ the FreeBSD boot loader. Refer to the FreeBSD handbook for more information on the boot loader. -5. Inspect the SEBSD policy. The system comes pre-installed with a +6. Inspect the SEBSD policy. The system comes pre-installed with a sample policy, but local changes might be required. The policy source is located in /etc/security/sebsd/targeted/src/policy and the compiled (binary) version is installed in @@ -108,17 +119,16 @@ /usr/sbin/load_policy /etc/security/sebsd/targeted/policy/policy.20 -6. Label the file system. In step 4b, extended attribute support was - enabled in the fstab file , but the individual filesystems were not - labeled. To label all file systems, login as root and run the - following command: +7. Label the file system. In step 3, extended attribute support was + enabled, but the individual filesystems were not labeled. To label all + file systems, login as root and run the following command: cd /etc/security/sebsd/targeted/src/policy && gmake relabel Note that you will see several errors during the relabel process as well as many permission denials on the system console. This is normal. -7. Reboot the machine, so that applications can use the file labels +8. Reboot the machine, so that applications can use the file labels and will be started in the correct domains. At this point, the machine will be running SEBSD with the sample ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/Makefile#2 (text+ko) ==== @@ -49,7 +49,7 @@ CHECKPOLICY := $(BINDIR)/checkpolicy CHECKMODULE := $(BINDIR)/checkmodule SEMODULE := $(SBINDIR)/semodule -SEMOD_PKG := $(BINDIR)/semodule_package +SEMOD_PKG := $(SBINDIR)/semodule_package LOADPOLICY := $(SBINDIR)/load_policy SETFILES := $(SBINDIR)/setfiles GENHOMEDIRCON := $(SBINDIR)/genhomedircon @@ -136,7 +136,7 @@ USERPATH = $(INSTALLDIR)/users CONTEXTPATH = $(INSTALLDIR)/contexts FCPATH = $(CONTEXTPATH)/files/file_contexts -SHAREDIR = $(PREFIX)/share/selinux +SHAREDIR = $(PREFIX)/share/sebsd MODPKGDIR = $(SHAREDIR)/$(NAME) HEADERDIR = $(MODPKGDIR)/include DOCSDIR = $(PREFIX)/share/doc/$(PKGNAME) ==== //depot/projects/soc2006/dongmei_sebsd/contrib/sebsd/refpolicy/Rules.modular#2 (text+ko) ==== @@ -73,7 +73,7 @@ @test -d $(TMPDIR) || mkdir -p $(TMPDIR) $(call peruser-expansion,$(basename $(@F)),$@.role) $(verbose) m4 $(M4PARAM) -s $^ $@.role > $(@:.mod=.tmp) - $(verbose) $(CHECKMODULE) -m $(@:.mod=.tmp) -o $@ + $(verbose) $(CHECKMODULE) -m -o $@ $(@:.mod=.tmp) $(TMPDIR)/%.mod.fc: $(M4SUPPORT) %.fc @test -d $(TMPDIR) || mkdir -p $(TMPDIR) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 08:40:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2B8AD16A519; Thu, 6 Jul 2006 08:40:30 +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 DF58416A4FE; Thu, 6 Jul 2006 08:40:29 +0000 (UTC) (envelope-from mux@freebsd.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.FreeBSD.org (Postfix) with ESMTP id 878A743D5A; Thu, 6 Jul 2006 08:40:27 +0000 (GMT) (envelope-from mux@freebsd.org) Received: by elvis.mu.org (Postfix, from userid 1920) id 3A7FD1A4E21; Thu, 6 Jul 2006 01:40:27 -0700 (PDT) Date: Thu, 6 Jul 2006 10:40:27 +0200 From: Maxime Henrion To: Scott Long Message-ID: <20060706084027.GW8070@elvis.mu.org> References: <200607060348.k663mTHW007992@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200607060348.k663mTHW007992@repoman.freebsd.org> User-Agent: Mutt/1.4.2.1i Cc: Perforce Change Reviews Subject: Re: PERFORCE change 100686 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 08:40:30 -0000 Scott Long wrote: > http://perforce.freebsd.org/chv.cgi?CH=100686 > > Change 100686 by scottl@scottl-wv1u on 2006/07/06 03:47:59 > > Use a sleep mutex to protect kernel environment handling instead of > an sx lock. The sx lock seemed to only be used to get around the > copyout case in kenv(KENV_DUMP) path. Fix that path to safely use a > sleep lock instead. Actually, the sx lock was not used for that but simply for the usual reason we use sx locks: to allow multiple readers to read the kernel environment in parallel. This is just FYI, I don't mind you changing it to a mutex, since kenv() is quite rarely used and it probably doesn't benefit much from the sx lock (it may even get pessimized by it). Cheers, Maxime From owner-p4-projects@FreeBSD.ORG Thu Jul 6 09:00:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3BA6E16A4E5; Thu, 6 Jul 2006 09:00:07 +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 1556C16A4DE for ; Thu, 6 Jul 2006 09:00:06 +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 570DC43D5C for ; Thu, 6 Jul 2006 09:00:06 +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 k66906fB053566 for ; Thu, 6 Jul 2006 09:00:06 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 k66905IX053563 for perforce@freebsd.org; Thu, 6 Jul 2006 09:00:05 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 09:00:05 GMT Message-Id: <200607060900.k66905IX053563@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 100703 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 09:00:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100703 Change 100703 by rwatson@rwatson_zoo on 2006/07/06 08:59:25 Finish re-populating mac_policy_ops, a few more renames and comments. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#9 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#9 (text+ko) ==== @@ -535,30 +535,31 @@ * Object: struct vnode (VFS node) */ typedef void (*mpo_vnode_init_label_t)(struct label *label); -typedef void (*mpo_vnode_destroy_vnode_label_t)(struct label *label); -typedef int (*mpo_vnode_associate_vnode_extattr_t)(struct mount *mp, +typedef void (*mpo_vnode_destroy_label_t)(struct label *label); +typedef int (*mpo_vnode_associate_extattr_t)(struct mount *mp, struct label *fslabel, struct vnode *vp, struct label *vlabel); -typedef void (*mpo_vnode_associate_vnode_singlelabel_t)(struct mount *mp, +typedef void (*mpo_vnode_associate_singlelabel_t)(struct mount *mp, struct label *fslabel, struct vnode *vp, struct label *vlabel); -typedef int (*mpo_vnode_create_vnode_extattr_t)(struct ucred *cred, +typedef int (*mpo_vnode_create_extattr_t)(struct ucred *cred, struct mount *mp, struct label *fslabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp); -typedef void (*mpo_vnode_create_mount_t)(struct ucred *cred, struct mount *mp, - struct label *mntlabel, struct label *fslabel); -typedef void (*mpo_vnode_relabel_vnode_t)(struct ucred *cred, struct vnode *vp, +typedef void (*mpo_vnode_create_mount_t)(struct ucred *cred, + struct mount *mp, struct label *mntlabel, + struct label *fslabel); +typedef void (*mpo_vnode_relabel_t)(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *label); -typedef int (*mpo_vnode_setlabel_vnode_extattr_t)(struct ucred *cred, +typedef int (*mpo_vnode_setlabel_extattr_t)(struct ucred *cred, struct vnode *vp, struct label *vlabel, struct label *intlabel); -typedef void (*mpo_vnode_copy_vnode_label_t)(struct label *src, +typedef void (*mpo_vnode_copy_label_t)(struct label *src, struct label *dest); -typedef int (*mpo_vnode_externalize_vnode_label_t)(struct label *label, +typedef int (*mpo_vnode_externalize_label_t)(struct label *label, char *element_name, struct sbuf *sb, int *claimed); -typedef int (*mpo_vnode_internalize_vnode_label_t)(struct label *label, +typedef int (*mpo_vnode_internalize_label_t)(struct label *label, char *element_name, char *element_data, int *claimed); typedef void (*mpo_vnode_execve_transition_t)(struct ucred *old, struct ucred *new, struct vnode *vp, @@ -840,6 +841,106 @@ mpo_sysv_sem_check_semctl_t mpo_sysv_sem_check_semctl; mpo_sysv_sem_check_semget_t mpo_sysv_sem_check_semget; mpo_sysv_sem_check_semop_t mpo_sysv_sem_check_semop; + + mpo_sysv_shm_init_label_t mpo_sysv_shm_init_label; + mpo_sysv_shm_destroy_label_t mpo_sysv_shm_destroy_label; + mpo_sysv_shm_cleanup_t mpo_sysv_shm_cleanup; + mpo_sysv_shm_create_t mpo_sysv_shm_create; + mpo_sysv_shm_check_shmat_t mpo_sysv_shm_check_shmat; + mpo_sysv_shm_check_shmctl_t mpo_sysv_shm_check_shmctl; + mpo_sysv_shm_check_shmdt_t mpo_sysv_shm_check_shmdt; + mpo_sysv_shm_check_shmget_t mpo_sysv_shm_check_shmget; + + /* + * XXXRW: Further naming consistency work is desirable here. Might + * be best if the "peer" label were at the protocol layer. + */ + mpo_socket_init_label_t mpo_socket_init_label; + mpo_socket_init_peer_label_t mpo_socket_init_peer_label; + mpo_socket_destroy_label_t mpo_socket_destroy_label; + mpo_socket_destroy_peer_label_t mpo_socket_destroy_peer_label; + mpo_socket_copy_label_t mpo_socket_copy_label; + mpo_socket_externalize_label_t mpo_socket_externalize_label; + mpo_socket_externalize_peer_label_t mpo_socket_externalize_peer_label; + mpo_socket_internalize_label_t mpo_socket_internalize_label; + mpo_socket_create_t mpo_socket_create; + mpo_socket_create_from_socket_t mpo_socket_create_from_socket; + mpo_socket_relabel_t mpo_socket_relabel; + mpo_socket_set_peer_from_socket_t mpo_socket_set_peer_from_socket; + mpo_socket_create_mbuf_t mpo_socket_create_mbuf; + mpo_socket_set_peer_from_mbuf_t mpo_socket_set_peer_from_mbuf; + mpo_socket_check_accept_t mpo_socket_check_accept; + mpo_socket_check_bind_t mpo_socket_check_bind; + mpo_socket_check_connect_t mpo_socket_check_connect; + mpo_socket_check_create_t mpo_socket_check_create; + mpo_socket_check_deliver_t mpo_socket_check_deliver; + mpo_socket_check_listen_t mpo_socket_check_listen; + mpo_socket_check_poll_t mpo_socket_check_poll; + mpo_socket_check_receive_t mpo_socket_check_receive; + mpo_socket_check_relabel_t mpo_socket_check_relabel; + mpo_socket_check_send_t mpo_socket_check_send; + mpo_socket_check_stat_t mpo_socket_check_stat; + mpo_socket_check_visible_t mpo_socket_check_visible; + + mpo_system_check_ioperm_t mpo_system_check_ioperm; + mpo_system_check_acct_t mpo_system_check_acct; + mpo_system_check_nfsd_t mpo_system_check_nfsd; + mpo_system_check_reboot_t mpo_system_check_reboot; + mpo_system_check_settime_t mpo_system_check_settime; + mpo_system_check_swapon_t mpo_system_check_swapon; + mpo_system_check_swapoff_t mpo_system_check_swapoff; + mpo_system_check_sysctl_t mpo_system_check_sysctl; + + /* + * XXXRW: Some further name-munging desirable here. Perhaps delete + * should be unlink? Resort. + */ + mpo_vnode_init_label_t mpo_vnode_init_label; + mpo_vnode_destroy_label_t mpo_vnode_destroy_label; + mpo_vnode_associate_extattr_t mpo_vnode_associate_extattr; + mpo_vnode_associate_singlelabel_t mpo_vnode_associate_singlelabel; + mpo_vnode_create_extattr_t mpo_vnode_create_extattr; + mpo_vnode_create_mount_t mpo_vnode_create_mount; + mpo_vnode_relabel_t mpo_vnode_relabel; + mpo_vnode_setlabel_extattr_t mpo_vnode_setlabel_extattr; + mpo_vnode_copy_label_t mpo_vnode_copy_label; + mpo_vnode_externalize_label_t mpo_vnode_externalize_label; + mpo_vnode_internalize_label_t mpo_vnode_internalize_label; + mpo_vnode_execve_transition_t mpo_vnode_execve_transition; + mpo_vnode_execve_will_transition_t mpo_vnode_execve_will_transition; + mpo_vnode_check_access_t mpo_vnode_check_access; + mpo_check_vnode_chdir_t mpo_check_vnode_chdir; + mpo_check_vnode_chroot_t mpo_check_vnode_chroot; + mpo_vnode_check_create_t mpo_vnode_check_create; + mpo_vnode_check_delete_t mpo_vnode_check_delete; + mpo_vnode_check_deleteacl_t mpo_vnode_check_deleteacl; + mpo_vnode_check_deleteextattr_t mpo_vnode_check_deleteextattr; + mpo_vnode_check_exec_t mpo_vnode_check_exec; + mpo_vnode_check_getacl_t mpo_vnode_check_getacl; + mpo_vnode_check_getextattr_t mpo_vnode_check_getextattr; + mpo_vnode_check_link_t mpo_vnode_check_link; + mpo_vnode_check_listextattr_t mpo_vnode_check_listextattr; + mpo_vnode_check_lookup_t mpo_vnode_check_lookup; + mpo_vnode_check_mmap_t mpo_vnode_check_mmap; + mpo_vnode_check_mmap_downgrade_t mpo_vnode_check_mmap_downgrade; + mpo_vnode_check_mprotect_t mpo_vnode_check_mprotect; + mpo_vnode_check_open_t mpo_vnode_check_open; + mpo_vnode_check_poll_t mpo_vnode_check_poll; + mpo_vnode_check_read_t mpo_vnode_check_read; + mpo_vnode_check_readdir_t mpo_vnode_check_readdir; + mpo_vnode_check_readlink_t mpo_vnode_check_readlink; + mpo_vnode_check_relabel_t mpo_vnode_check_relabel; + mpo_vnode_check_rename_from_t mpo_vnode_check_rename_from; + mpo_vnode_check_rename_to_t mpo_vnode_check_rename_to; + mpo_vnode_check_revoke_t mpo_vnode_check_revoke; + mpo_vnode_check_setacl_t mpo_vnode_check_setacl; + mpo_vnode_check_setextattr_t mpo_vnode_check_setextattr; + mpo_vnode_check_setflags_t mpo_vnode_check_setflags; + mpo_vnode_check_setmode_t mpo_vnode_check_setmode; + mpo_vnode_check_setowner_t mpo_vnode_check_setowner; + mpo_vnode_check_setutimes_t mpo_vnode_check_setutimes; + mpo_vnode_check_stat_t mpo_vnode_check_stat; + mpo_vnode_check_write_t mpo_vnode_check_write; }; /* From owner-p4-projects@FreeBSD.ORG Thu Jul 6 09:01:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A73FB16A4EB; Thu, 6 Jul 2006 09:01:08 +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 8071E16A4E9 for ; Thu, 6 Jul 2006 09:01:08 +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 33D9D43D45 for ; Thu, 6 Jul 2006 09:01:08 +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 k669185u053704 for ; Thu, 6 Jul 2006 09:01:08 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 k66917CH053701 for perforce@freebsd.org; Thu, 6 Jul 2006 09:01:07 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 09:01:07 GMT Message-Id: <200607060901.k66917CH053701@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 100704 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 09:01:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=100704 Change 100704 by rwatson@rwatson_zoo on 2006/07/06 09:00:54 Integrate mac.h to mac_framework.h, first step in separating user include file from the kernel API. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jul 6 09:05:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EC54616A4E0; Thu, 6 Jul 2006 09:05:14 +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 ADDFD16A4DA for ; Thu, 6 Jul 2006 09:05:14 +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 04BE643D46 for ; Thu, 6 Jul 2006 09:05:14 +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 k6695DMZ055105 for ; Thu, 6 Jul 2006 09:05:13 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 k6695D1M055102 for perforce@freebsd.org; Thu, 6 Jul 2006 09:05:13 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 09:05:13 GMT Message-Id: <200607060905.k6695D1M055102@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 100705 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 09:05:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=100705 Change 100705 by rwatson@rwatson_zoo on 2006/07/06 09:04:45 Make mac.h the user space API, and mac_framework.h the kernel API. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac.h#2 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac.h#2 (text+ko) ==== @@ -1,7 +1,7 @@ /*- * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2005 Networks Associates Technology, Inc. - * Copyright (c) 2005 SPARTA, Inc. + * Copyright (c) 2005-2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -38,7 +38,7 @@ * $FreeBSD: src/sys/sys/mac.h,v 1.70 2006/04/06 23:33:11 csjp Exp $ */ /* - * Userland/kernel interface for Mandatory Access Control. + * Userland interface for Mandatory Access Control. * * The POSIX.1e implementation page may be reached at: * http://www.trustedbsd.org/ @@ -68,8 +68,6 @@ typedef struct mac *mac_t; -#ifndef _KERNEL - /* * Location of the userland MAC framework configuration file. mac.conf * binds policy names to shared libraries that understand those policies, @@ -105,372 +103,4 @@ int mac_to_text(mac_t mac, char **_text); __END_DECLS -#else /* _KERNEL */ - -/* - * Kernel functions to manage and evaluate labels. - */ -struct bpf_d; -struct cdev; -struct componentname; -struct devfs_dirent; -struct ifnet; -struct ifreq; -struct inpcb; -struct image_params; -struct inpcb; -struct ipq; -struct ksem; -struct m_tag; -struct mbuf; -struct mount; -struct msg; -struct msqid_kernel; -struct proc; -struct semid_kernel; -struct shmid_kernel; -struct sockaddr; -struct socket; -struct sysctl_oid; -struct sysctl_req; -struct pipepair; -struct thread; -struct timespec; -struct ucred; -struct uio; -struct vattr; -struct vnode; - -#include /* XXX acl_type_t */ - -struct vop_setlabel_args; - -/* - * Label operations. - */ -void mac_init_bpfdesc(struct bpf_d *); -void mac_init_cred(struct ucred *); -void mac_init_devfsdirent(struct devfs_dirent *); -void mac_init_ifnet(struct ifnet *); -int mac_init_inpcb(struct inpcb *, int flag); -void mac_init_sysv_msgmsg(struct msg *); -void mac_init_sysv_msgqueue(struct msqid_kernel*); -void mac_init_sysv_sem(struct semid_kernel*); -void mac_init_sysv_shm(struct shmid_kernel*); -int mac_init_ipq(struct ipq *, int flag); -int mac_init_socket(struct socket *, int flag); -void mac_init_pipe(struct pipepair *); -void mac_init_posix_sem(struct ksem *); -int mac_init_mbuf(struct mbuf *mbuf, int flag); -int mac_init_mbuf_tag(struct m_tag *, int flag); -void mac_init_mount(struct mount *); -void mac_init_proc(struct proc *); -void mac_init_vnode(struct vnode *); -void mac_copy_mbuf(struct mbuf *m_from, struct mbuf *m_to); -void mac_copy_mbuf_tag(struct m_tag *, struct m_tag *); -void mac_copy_vnode_label(struct label *, struct label *label); -void mac_destroy_bpfdesc(struct bpf_d *); -void mac_destroy_cred(struct ucred *); -void mac_destroy_devfsdirent(struct devfs_dirent *); -void mac_destroy_ifnet(struct ifnet *); -void mac_destroy_inpcb(struct inpcb *); -void mac_destroy_sysv_msgmsg(struct msg *); -void mac_destroy_sysv_msgqueue(struct msqid_kernel *); -void mac_destroy_sysv_sem(struct semid_kernel *); -void mac_destroy_sysv_shm(struct shmid_kernel *); -void mac_destroy_ipq(struct ipq *); -void mac_destroy_socket(struct socket *); -void mac_destroy_pipe(struct pipepair *); -void mac_destroy_posix_sem(struct ksem *); -void mac_destroy_proc(struct proc *); -void mac_destroy_mbuf_tag(struct m_tag *); -void mac_destroy_mount(struct mount *); -void mac_destroy_vnode(struct vnode *); - -struct label *mac_cred_label_alloc(void); -void mac_cred_label_free(struct label *label); -struct label *mac_vnode_label_alloc(void); -void mac_vnode_label_free(struct label *label); - -/* - * Labeling event operations: file system objects, and things that - * look a lot like file system objects. - */ -void mac_associate_vnode_devfs(struct mount *mp, struct devfs_dirent *de, - struct vnode *vp); -int mac_associate_vnode_extattr(struct mount *mp, struct vnode *vp); -void mac_associate_vnode_singlelabel(struct mount *mp, struct vnode *vp); -void mac_create_devfs_device(struct ucred *cred, struct mount *mp, - struct cdev *dev, struct devfs_dirent *de); -void mac_create_devfs_directory(struct mount *mp, char *dirname, - int dirnamelen, struct devfs_dirent *de); -void mac_create_devfs_symlink(struct ucred *cred, struct mount *mp, - struct devfs_dirent *dd, struct devfs_dirent *de); -int mac_create_vnode_extattr(struct ucred *cred, struct mount *mp, - struct vnode *dvp, struct vnode *vp, struct componentname *cnp); -void mac_create_mount(struct ucred *cred, struct mount *mp); -void mac_relabel_vnode(struct ucred *cred, struct vnode *vp, - struct label *newlabel); -void mac_update_devfsdirent(struct mount *mp, struct devfs_dirent *de, - struct vnode *vp); - -/* - * Labeling event operations: IPC objects. - */ -void mac_create_mbuf_from_socket(struct socket *so, struct mbuf *m); -void mac_create_socket(struct ucred *cred, struct socket *socket); -void mac_create_socket_from_socket(struct socket *oldsocket, - struct socket *newsocket); -void mac_set_socket_peer_from_mbuf(struct mbuf *mbuf, - struct socket *socket); -void mac_set_socket_peer_from_socket(struct socket *oldsocket, - struct socket *newsocket); -void mac_create_pipe(struct ucred *cred, struct pipepair *pp); - -/* - * Labeling event operations: System V IPC primitives - */ -void mac_create_sysv_msgmsg(struct ucred *cred, - struct msqid_kernel *msqkptr, struct msg *msgptr); -void mac_create_sysv_msgqueue(struct ucred *cred, - struct msqid_kernel *msqkptr); -void mac_create_sysv_sem(struct ucred *cred, - struct semid_kernel *semakptr); -void mac_create_sysv_shm(struct ucred *cred, - struct shmid_kernel *shmsegptr); - -/* - * Labeling event operations: POSIX (global/inter-process) semaphores. - */ -void mac_create_posix_sem(struct ucred *cred, struct ksem *ksemptr); - - -/* - * Labeling event operations: network objects. - */ -void mac_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d); -void mac_create_ifnet(struct ifnet *ifp); -void mac_create_inpcb_from_socket(struct socket *so, struct inpcb *inp); -void mac_create_ipq(struct mbuf *fragment, struct ipq *ipq); -void mac_create_datagram_from_ipq(struct ipq *ipq, struct mbuf *datagram); -void mac_create_fragment(struct mbuf *datagram, struct mbuf *fragment); -void mac_create_mbuf_from_inpcb(struct inpcb *inp, struct mbuf *m); -void mac_create_mbuf_linklayer(struct ifnet *ifnet, struct mbuf *m); -void mac_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct mbuf *m); -void mac_create_mbuf_from_ifnet(struct ifnet *ifnet, struct mbuf *m); -void mac_create_mbuf_multicast_encap(struct mbuf *oldmbuf, - struct ifnet *ifnet, struct mbuf *newmbuf); -void mac_create_mbuf_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf); -int mac_fragment_match(struct mbuf *fragment, struct ipq *ipq); -void mac_reflect_mbuf_icmp(struct mbuf *m); -void mac_reflect_mbuf_tcp(struct mbuf *m); -void mac_update_ipq(struct mbuf *fragment, struct ipq *ipq); -void mac_inpcb_sosetlabel(struct socket *so, struct inpcb *inp); - -/* - * Labeling event operations: processes. - */ -void mac_copy_cred(struct ucred *cr1, struct ucred *cr2); -int mac_execve_enter(struct image_params *imgp, struct mac *mac_p); -void mac_execve_exit(struct image_params *imgp); -void mac_execve_transition(struct ucred *old, struct ucred *new, - struct vnode *vp, struct label *interpvnodelabel, - struct image_params *imgp); -int mac_execve_will_transition(struct ucred *old, struct vnode *vp, - struct label *interpvnodelabel, struct image_params *imgp); -void mac_create_proc0(struct ucred *cred); -void mac_create_proc1(struct ucred *cred); -void mac_thread_userret(struct thread *td); - -/* - * Label cleanup operation: This is the inverse complement for the - * mac_create and associate type of hooks. This hook lets the policy - * module(s) perform a cleanup/flushing operation on the label - * associated with the objects, without freeing up the space allocated. - * This hook is useful in cases where it is desirable to remove any - * labeling reference when recycling any object to a pool. This hook - * does not replace the mac_destroy hooks. - */ -void mac_cleanup_sysv_msgmsg(struct msg *msgptr); -void mac_cleanup_sysv_msgqueue(struct msqid_kernel *msqkptr); -void mac_cleanup_sysv_sem(struct semid_kernel *semakptr); -void mac_cleanup_sysv_shm(struct shmid_kernel *shmsegptr); - -/* Access control checks. */ -int mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet); -int mac_check_cred_visible(struct ucred *u1, struct ucred *u2); -int mac_check_ifnet_transmit(struct ifnet *ifnet, struct mbuf *m); -int mac_check_inpcb_deliver(struct inpcb *inp, struct mbuf *m); -int mac_check_sysv_msgmsq(struct ucred *cred, struct msg *msgptr, - struct msqid_kernel *msqkptr); -int mac_check_sysv_msgrcv(struct ucred *cred, struct msg *msgptr); -int mac_check_sysv_msgrmid(struct ucred *cred, struct msg *msgptr); -int mac_check_sysv_msqget(struct ucred *cred, - struct msqid_kernel *msqkptr); -int mac_check_sysv_msqsnd(struct ucred *cred, - struct msqid_kernel *msqkptr); -int mac_check_sysv_msqrcv(struct ucred *cred, - struct msqid_kernel *msqkptr); -int mac_check_sysv_msqctl(struct ucred *cred, - struct msqid_kernel *msqkptr, int cmd); -int mac_check_sysv_semctl(struct ucred *cred, - struct semid_kernel *semakptr, int cmd); -int mac_check_sysv_semget(struct ucred *cred, - struct semid_kernel *semakptr); -int mac_check_sysv_semop(struct ucred *cred,struct semid_kernel *semakptr, - size_t accesstype); -int mac_check_sysv_shmat(struct ucred *cred, - struct shmid_kernel *shmsegptr, int shmflg); -int mac_check_sysv_shmctl(struct ucred *cred, - struct shmid_kernel *shmsegptr, int cmd); -int mac_check_sysv_shmdt(struct ucred *cred, - struct shmid_kernel *shmsegptr); -int mac_check_sysv_shmget(struct ucred *cred, - struct shmid_kernel *shmsegptr, int shmflg); -int mac_check_kenv_dump(struct ucred *cred); -int mac_check_kenv_get(struct ucred *cred, char *name); -int mac_check_kenv_set(struct ucred *cred, char *name, char *value); -int mac_check_kenv_unset(struct ucred *cred, char *name); -int mac_check_kld_load(struct ucred *cred, struct vnode *vp); -int mac_check_kld_stat(struct ucred *cred); -int mac_check_kld_unload(struct ucred *cred); -int mac_check_mount_stat(struct ucred *cred, struct mount *mp); -int mac_check_pipe_ioctl(struct ucred *cred, struct pipepair *pp, - unsigned long cmd, void *data); -int mac_check_pipe_poll(struct ucred *cred, struct pipepair *pp); -int mac_check_pipe_read(struct ucred *cred, struct pipepair *pp); -int mac_check_pipe_stat(struct ucred *cred, struct pipepair *pp); -int mac_check_pipe_write(struct ucred *cred, struct pipepair *pp); -int mac_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_getvalue(struct ucred *cred,struct ksem *ksemptr); -int mac_check_posix_sem_open(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr); -int mac_check_proc_debug(struct ucred *cred, struct proc *proc); -int mac_check_proc_sched(struct ucred *cred, struct proc *proc); -int mac_check_proc_setuid(struct proc *proc, struct ucred *cred, - uid_t uid); -int mac_check_proc_seteuid(struct proc *proc, struct ucred *cred, - uid_t euid); -int mac_check_proc_setgid(struct proc *proc, struct ucred *cred, - gid_t gid); -int mac_check_proc_setegid(struct proc *proc, struct ucred *cred, - gid_t egid); -int mac_check_proc_setgroups(struct proc *proc, struct ucred *cred, - int ngroups, gid_t *gidset); -int mac_check_proc_setreuid(struct proc *proc, struct ucred *cred, - uid_t ruid, uid_t euid); -int mac_check_proc_setregid(struct proc *proc, struct ucred *cred, - gid_t rgid, gid_t egid); -int mac_check_proc_setresuid(struct proc *proc, struct ucred *cred, - uid_t ruid, uid_t euid, uid_t suid); -int mac_check_proc_setresgid(struct proc *proc, struct ucred *cred, - gid_t rgid, gid_t egid, gid_t sgid); -int mac_check_proc_signal(struct ucred *cred, struct proc *proc, - int signum); -int mac_check_proc_wait(struct ucred *cred, struct proc *proc); -int mac_check_socket_accept(struct ucred *cred, struct socket *so); -int mac_check_socket_bind(struct ucred *cred, struct socket *so, - struct sockaddr *sockaddr); -int mac_check_socket_connect(struct ucred *cred, struct socket *so, - struct sockaddr *sockaddr); -int mac_check_socket_create(struct ucred *cred, int domain, int type, - int protocol); -int mac_check_socket_deliver(struct socket *so, struct mbuf *m); -int mac_check_socket_listen(struct ucred *cred, struct socket *so); -int mac_check_socket_poll(struct ucred *cred, struct socket *so); -int mac_check_socket_receive(struct ucred *cred, struct socket *so); -int mac_check_socket_send(struct ucred *cred, struct socket *so); -int mac_check_socket_stat(struct ucred *cred, struct socket *so); -int mac_check_socket_visible(struct ucred *cred, struct socket *so); -int mac_check_sysarch_ioperm(struct ucred *cred); -int mac_check_system_acct(struct ucred *cred, struct vnode *vp); -int mac_check_system_nfsd(struct ucred *cred); -int mac_check_system_reboot(struct ucred *cred, int howto); -int mac_check_system_settime(struct ucred *cred); -int mac_check_system_swapon(struct ucred *cred, struct vnode *vp); -int mac_check_system_swapoff(struct ucred *cred, struct vnode *vp); -int mac_check_system_sysctl(struct ucred *cred, struct sysctl_oid *oidp, - void *arg1, int arg2, struct sysctl_req *req); -int mac_check_vnode_access(struct ucred *cred, struct vnode *vp, - int acc_mode); -int mac_check_vnode_chdir(struct ucred *cred, struct vnode *dvp); -int mac_check_vnode_chroot(struct ucred *cred, struct vnode *dvp); -int mac_check_vnode_create(struct ucred *cred, struct vnode *dvp, - struct componentname *cnp, struct vattr *vap); -int mac_check_vnode_delete(struct ucred *cred, struct vnode *dvp, - struct vnode *vp, struct componentname *cnp); -int mac_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, - acl_type_t type); -int mac_check_vnode_deleteextattr(struct ucred *cred, struct vnode *vp, - int attrnamespace, const char *name); -int mac_check_vnode_exec(struct ucred *cred, struct vnode *vp, - struct image_params *imgp); -int mac_check_vnode_getacl(struct ucred *cred, struct vnode *vp, - acl_type_t type); -int mac_check_vnode_getextattr(struct ucred *cred, struct vnode *vp, - int attrnamespace, const char *name, struct uio *uio); -int mac_check_vnode_link(struct ucred *cred, struct vnode *dvp, - struct vnode *vp, struct componentname *cnp); -int mac_check_vnode_listextattr(struct ucred *cred, struct vnode *vp, - int attrnamespace); -int mac_check_vnode_lookup(struct ucred *cred, struct vnode *dvp, - struct componentname *cnp); -int mac_check_vnode_mmap(struct ucred *cred, struct vnode *vp, - int prot, int flags); -int mac_check_vnode_mprotect(struct ucred *cred, struct vnode *vp, - int prot); -int mac_check_vnode_open(struct ucred *cred, struct vnode *vp, - int acc_mode); -int mac_check_vnode_poll(struct ucred *active_cred, - struct ucred *file_cred, struct vnode *vp); -int mac_check_vnode_read(struct ucred *active_cred, - struct ucred *file_cred, struct vnode *vp); -int mac_check_vnode_readdir(struct ucred *cred, struct vnode *vp); -int mac_check_vnode_readlink(struct ucred *cred, struct vnode *vp); -int mac_check_vnode_rename_from(struct ucred *cred, struct vnode *dvp, - struct vnode *vp, struct componentname *cnp); -int mac_check_vnode_rename_to(struct ucred *cred, struct vnode *dvp, - struct vnode *vp, int samedir, struct componentname *cnp); -int mac_check_vnode_revoke(struct ucred *cred, struct vnode *vp); -int mac_check_vnode_setacl(struct ucred *cred, struct vnode *vp, - acl_type_t type, struct acl *acl); -int mac_check_vnode_setextattr(struct ucred *cred, struct vnode *vp, - int attrnamespace, const char *name, struct uio *uio); -int mac_check_vnode_setflags(struct ucred *cred, struct vnode *vp, - u_long flags); -int mac_check_vnode_setmode(struct ucred *cred, struct vnode *vp, - mode_t mode); -int mac_check_vnode_setowner(struct ucred *cred, struct vnode *vp, - uid_t uid, gid_t gid); -int mac_check_vnode_setutimes(struct ucred *cred, struct vnode *vp, - struct timespec atime, struct timespec mtime); -int mac_check_vnode_stat(struct ucred *active_cred, - struct ucred *file_cred, struct vnode *vp); -int mac_check_vnode_write(struct ucred *active_cred, - struct ucred *file_cred, struct vnode *vp); -int mac_getsockopt_label(struct ucred *cred, struct socket *so, - struct mac *extmac); -int mac_getsockopt_peerlabel(struct ucred *cred, struct socket *so, - struct mac *extmac); -int mac_ioctl_ifnet_get(struct ucred *cred, struct ifreq *ifr, - struct ifnet *ifnet); -int mac_ioctl_ifnet_set(struct ucred *cred, struct ifreq *ifr, - struct ifnet *ifnet); -int mac_setsockopt_label(struct ucred *cred, struct socket *so, - struct mac *extmac); -int mac_pipe_label_set(struct ucred *cred, struct pipepair *pp, - struct label *label); -void mac_cred_mmapped_drop_perms(struct thread *td, struct ucred *cred); -void mac_associate_nfsd_label(struct ucred *cred); - -/* - * Calls to help various file systems implement labeling functionality - * using their existing EA implementation. - */ -int vop_stdsetlabel_ea(struct vop_setlabel_args *ap); - -#endif /* !_KERNEL */ - #endif /* !_SYS_MAC_H_ */ ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#2 (text+ko) ==== @@ -1,7 +1,7 @@ /*- * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2005 Networks Associates Technology, Inc. - * Copyright (c) 2005 SPARTA, Inc. + * Copyright (c) 2005-2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -38,78 +38,19 @@ * $FreeBSD: src/sys/sys/mac.h,v 1.70 2006/04/06 23:33:11 csjp Exp $ */ /* - * Userland/kernel interface for Mandatory Access Control. - * - * The POSIX.1e implementation page may be reached at: - * http://www.trustedbsd.org/ + * Kernel interface for Mandatory Access Control -- how kernel services + * interact with the TrustedBSD MAC Framework. */ -#ifndef _SYS_MAC_H_ -#define _SYS_MAC_H_ +#ifndef _SYS_MAC_FRAMEWORK_H_ +#define _SYS_MAC_FRAMEWORK_H_ -#include - -#ifndef _POSIX_MAC -#define _POSIX_MAC +#ifndef _KERNEL +#error "no user-serviceable parts inside" #endif -/* - * MAC framework-related constants and limits. - */ -#define MAC_MAX_POLICY_NAME 32 -#define MAC_MAX_LABEL_ELEMENT_NAME 32 -#define MAC_MAX_LABEL_ELEMENT_DATA 4096 -#define MAC_MAX_LABEL_BUF_LEN 8192 - -struct mac { - size_t m_buflen; - char *m_string; -}; - -typedef struct mac *mac_t; +#include -#ifndef _KERNEL - -/* - * Location of the userland MAC framework configuration file. mac.conf - * binds policy names to shared libraries that understand those policies, - * as well as setting defaults for MAC-aware applications. - */ -#define MAC_CONFFILE "/etc/mac.conf" - -/* - * Extended non-POSIX.1e interfaces that offer additional services - * available from the userland and kernel MAC frameworks. - */ -__BEGIN_DECLS -int mac_execve(char *fname, char **argv, char **envv, mac_t _label); -int mac_free(mac_t _label); -int mac_from_text(mac_t *_label, const char *_text); -int mac_get_fd(int _fd, mac_t _label); -int mac_get_file(const char *_path, mac_t _label); -int mac_get_link(const char *_path, mac_t _label); -int mac_get_peer(int _fd, mac_t _label); -int mac_get_pid(pid_t _pid, mac_t _label); -int mac_get_proc(mac_t _label); -int mac_is_present(const char *_policyname); -int mac_prepare(mac_t *_label, const char *_elements); -int mac_prepare_file_label(mac_t *_label); -int mac_prepare_ifnet_label(mac_t *_label); -int mac_prepare_process_label(mac_t *_label); -int mac_prepare_type(mac_t *_label, const char *_type); -int mac_set_fd(int _fildes, const mac_t _label); -int mac_set_file(const char *_path, mac_t _label); -int mac_set_link(const char *_path, mac_t _label); -int mac_set_proc(const mac_t _label); -int mac_syscall(const char *_policyname, int _call, void *_arg); -int mac_to_text(mac_t mac, char **_text); -__END_DECLS - -#else /* _KERNEL */ - -/* - * Kernel functions to manage and evaluate labels. - */ struct bpf_d; struct cdev; struct componentname; @@ -122,6 +63,7 @@ struct ipq; struct ksem; struct m_tag; +struct mac; struct mbuf; struct mount; struct msg; @@ -140,10 +82,13 @@ struct uio; struct vattr; struct vnode; +struct vop_setlabel_args; #include /* XXX acl_type_t */ -struct vop_setlabel_args; +/* + * Kernel functions to manage and evaluate labels. + */ /* * Label operations. @@ -471,6 +416,4 @@ */ int vop_stdsetlabel_ea(struct vop_setlabel_args *ap); -#endif /* !_KERNEL */ - -#endif /* !_SYS_MAC_H_ */ +#endif /* !_SYS_MAC_FRAMEWORK_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 09:15:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B914416A4E9; Thu, 6 Jul 2006 09:15:27 +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 789BB16A4E8 for ; Thu, 6 Jul 2006 09:15:27 +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 2F3DC43D45 for ; Thu, 6 Jul 2006 09:15:27 +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 k669FR0S055797 for ; Thu, 6 Jul 2006 09:15:27 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 k669FQTN055794 for perforce@freebsd.org; Thu, 6 Jul 2006 09:15:26 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 09:15:26 GMT Message-Id: <200607060915.k669FQTN055794@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 100706 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 09:15:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=100706 Change 100706 by rwatson@rwatson_zoo on 2006/07/06 09:15:04 Fix spelling of mpo_mount_create(). Resort by prefix rather than structure name for Sys V IPC. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#10 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#10 (text+ko) ==== @@ -317,41 +317,9 @@ typedef void (*mpo_mount_fs_destroy_label_t)(struct label *label); typedef int (*mpo_mount_check_stat_t)(struct ucred *cred, struct mount *mp, struct label *mntlabel); - -/* - * Object: struct msqid_kernel (System V message queue) - */ -typedef void (*mpo_sysv_msgqueue_init_label_t)(struct label *label); -typedef void (*mpo_sysv_msgqueue_destroy_t)(struct label *label); -typedef void (*mpo_sysv_msgqueue_cleanup_t)(struct label *msqlabel); -typedef void (*mpo_sysv_msgqueue_create_msg_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqlabel, - struct msg *msgptr, struct label *msglabel); -typedef void (*mpo_sysv_msgqueue_create_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqlabel); - -typedef int (*mpo_sysv_msgqueue_check_msgmsq_t)(struct ucred *cred, - struct msg *msgptr, struct label *msglabel, - struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msgqueue_check_msgrcv_t)(struct ucred *cred, - struct msg *msgptr, struct label *msglabel); -typedef int (*mpo_sysv_msgqueue_check_msgrmid_t)(struct ucred *cred, - struct msg *msgptr, struct label *msglabel); -typedef int (*mpo_sysv_msgqueue_check_msqget_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msgqueue_check_msqsnd_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msgqueue_check_msqrcv_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msgqueue_check_msqctl_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqklabel, - int cmd); -/* - * Object: struct msg (System V message) - */ -typedef void (*mpo_sysv_msg_init_label_t)(struct label *label); -typedef void (*mpo_sysv_msg_destroy_label_t)(struct label *label); -typedef void (*mpo_sysv_msg_cleanup_t)(struct label *msglabel); +typedef void (*mpo_mount_create_t)(struct ucred *cred, + struct mount *mp, struct label *mntlabel, + struct label *fslabel); /* * Object: struct pipepair (Pipe) @@ -416,6 +384,41 @@ typedef int (*mpo_associate_nfsd_label_t)(struct ucred *cred); /* + * Object: struct msqid_kernel (System V message queue) + */ +typedef void (*mpo_sysv_msgqueue_init_label_t)(struct label *label); +typedef void (*mpo_sysv_msgqueue_destroy_t)(struct label *label); +typedef void (*mpo_sysv_msgqueue_cleanup_t)(struct label *msqlabel); +typedef void (*mpo_sysv_msgqueue_create_msg_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqlabel, + struct msg *msgptr, struct label *msglabel); +typedef void (*mpo_sysv_msgqueue_create_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqlabel); + +typedef int (*mpo_sysv_msgqueue_check_msgmsq_t)(struct ucred *cred, + struct msg *msgptr, struct label *msglabel, + struct msqid_kernel *msqkptr, struct label *msqklabel); +typedef int (*mpo_sysv_msgqueue_check_msgrcv_t)(struct ucred *cred, + struct msg *msgptr, struct label *msglabel); +typedef int (*mpo_sysv_msgqueue_check_msgrmid_t)(struct ucred *cred, + struct msg *msgptr, struct label *msglabel); +typedef int (*mpo_sysv_msgqueue_check_msqget_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqklabel); +typedef int (*mpo_sysv_msgqueue_check_msqsnd_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqklabel); +typedef int (*mpo_sysv_msgqueue_check_msqrcv_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqklabel); +typedef int (*mpo_sysv_msgqueue_check_msqctl_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqklabel, + int cmd); +/* + * Object: struct msg (System V message) + */ +typedef void (*mpo_sysv_msg_init_label_t)(struct label *label); +typedef void (*mpo_sysv_msg_destroy_label_t)(struct label *label); +typedef void (*mpo_sysv_msg_cleanup_t)(struct label *msglabel); + +/* * Object: struct semid_kernel (System V IPC semaphore) */ typedef void (*mpo_sysv_sem_init_label_t)(struct label *label); @@ -547,9 +550,6 @@ struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp); -typedef void (*mpo_vnode_create_mount_t)(struct ucred *cred, - struct mount *mp, struct label *mntlabel, - struct label *fslabel); typedef void (*mpo_vnode_relabel_t)(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *label); typedef int (*mpo_vnode_setlabel_extattr_t)(struct ucred *cred, @@ -776,27 +776,7 @@ mpo_mount_destroy_label_t mpo_mount_destroy_label; mpo_mount_fs_destroy_label_t mpo_mount_fs_destroy_label; mpo_mount_check_stat_t mpo_mount_check_stat; - - /* - * XXXRW: These names are a bit awkard. Perhaps sysv_msq to match - * conventional usage? - */ - mpo_sysv_msgqueue_init_label_t mpo_sysv_msgqueue_init_label; - mpo_sysv_msgqueue_destroy_t mpo_sysv_msgqueue_destroy; - mpo_sysv_msgqueue_cleanup_t mpo_sysv_msgqueue_cleanup; - mpo_sysv_msgqueue_create_msg_t mpo_sysv_msgqueue_create_msg; - mpo_sysv_msgqueue_create_t mpo_sysv_msgqueue_create; - mpo_sysv_msgqueue_check_msgmsq_t mpo_sysv_msgqueue_check_msgmsq; - mpo_sysv_msgqueue_check_msgrcv_t mpo_sysv_msgqueue_check_msgrcv; - mpo_sysv_msgqueue_check_msgrmid_t mpo_sysv_msgqueue_check_msgrmid; - mpo_sysv_msgqueue_check_msqget_t mpo_sysv_msgqueue_check_msqget; - mpo_sysv_msgqueue_check_msqsnd_t mpo_sysv_msgqueue_check_msqsnd; - mpo_sysv_msgqueue_check_msqrcv_t mpo_sysv_msgqueue_check_msqrcv; - mpo_sysv_msgqueue_check_msqctl_t mpo_sysv_msgqueue_check_msqctl; - - mpo_sysv_msg_init_label_t mpo_sysv_msg_init_label; - mpo_sysv_msg_destroy_label_t mpo_sysv_msg_destroy_label; - mpo_sysv_msg_cleanup_t mpo_sysv_msg_cleanup; + mpo_mount_create_t mpo_mount_create; /* * XXXRW: Technically, structure name here is pipepair, not pipe. @@ -834,6 +814,27 @@ mpo_proc_check_signal_t mpo_proc_check_signal; mpo_proc_check_wait_t mpo_proc_check_wait; + /* + * XXXRW: These names are a bit awkard. Perhaps sysv_msq to match + * conventional usage? + */ + mpo_sysv_msgqueue_init_label_t mpo_sysv_msgqueue_init_label; + mpo_sysv_msgqueue_destroy_t mpo_sysv_msgqueue_destroy; + mpo_sysv_msgqueue_cleanup_t mpo_sysv_msgqueue_cleanup; + mpo_sysv_msgqueue_create_msg_t mpo_sysv_msgqueue_create_msg; + mpo_sysv_msgqueue_create_t mpo_sysv_msgqueue_create; + mpo_sysv_msgqueue_check_msgmsq_t mpo_sysv_msgqueue_check_msgmsq; + mpo_sysv_msgqueue_check_msgrcv_t mpo_sysv_msgqueue_check_msgrcv; + mpo_sysv_msgqueue_check_msgrmid_t mpo_sysv_msgqueue_check_msgrmid; + mpo_sysv_msgqueue_check_msqget_t mpo_sysv_msgqueue_check_msqget; + mpo_sysv_msgqueue_check_msqsnd_t mpo_sysv_msgqueue_check_msqsnd; + mpo_sysv_msgqueue_check_msqrcv_t mpo_sysv_msgqueue_check_msqrcv; + mpo_sysv_msgqueue_check_msqctl_t mpo_sysv_msgqueue_check_msqctl; + + mpo_sysv_msg_init_label_t mpo_sysv_msg_init_label; + mpo_sysv_msg_destroy_label_t mpo_sysv_msg_destroy_label; + mpo_sysv_msg_cleanup_t mpo_sysv_msg_cleanup; + mpo_sysv_sem_init_label_t mpo_sysv_sem_init_label; mpo_sysv_sem_destroy_label_t mpo_sysv_sem_destroy_label; mpo_sysv_sem_cleanup_t mpo_sysv_sem_cleanup; @@ -900,7 +901,6 @@ mpo_vnode_associate_extattr_t mpo_vnode_associate_extattr; mpo_vnode_associate_singlelabel_t mpo_vnode_associate_singlelabel; mpo_vnode_create_extattr_t mpo_vnode_create_extattr; - mpo_vnode_create_mount_t mpo_vnode_create_mount; mpo_vnode_relabel_t mpo_vnode_relabel; mpo_vnode_setlabel_extattr_t mpo_vnode_setlabel_extattr; mpo_vnode_copy_label_t mpo_vnode_copy_label; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 09:53:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6BAF016A4E1; Thu, 6 Jul 2006 09:53:16 +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 41C5516A4DA for ; Thu, 6 Jul 2006 09:53:16 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 023C943D4C for ; Thu, 6 Jul 2006 09:53:16 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k669rF7f058639 for ; Thu, 6 Jul 2006 09:53:15 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k669rFwh058636 for perforce@freebsd.org; Thu, 6 Jul 2006 09:53:15 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 09:53:15 GMT Message-Id: <200607060953.k669rFwh058636@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100707 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 09:53:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=100707 Change 100707 by piso@piso_newluxor on 2006/07/06 09:52:41 Now we have a rwlock for the modules in kernel land (handler_rw) and nothing in userland: to avoid races in userland the lock will go into *_dll(), but for now we can live without it cause libalias is used only in single threaded app. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#11 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#11 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#11 (text+ko) ==== @@ -60,92 +60,96 @@ #include /* protocol and userland module handlers chains */ -struct chain handler_chain; +struct chain handler_chain; +#ifdef _KERNEL +struct rwlock handler_rw; +#endif + SLIST_HEAD(dll_chain, dll) dll_chain = SLIST_HEAD_INITIALIZER(foo); #ifdef _KERNEL -#define LIBALIAS_LOCK_INIT(_chain) \ - rw_init(&_chain->rw, "Libalias_rwlock") -#define LIBALIAS_LOCK_DESTROY(_chain) rw_destroy(&_chain->rw) -#define LIBALIAS_WLOCK_ASSERT(_chain) \ - rw_assert(&_chain->rw, RA_WLOCKED) +#define LIBALIAS_LOCK_INIT() \ + rw_init(&handler_rw, "Libalias_modules_rwlock") +#define LIBALIAS_LOCK_DESTROY() rw_destroy(&handler_rw) +#define LIBALIAS_WLOCK_ASSERT() \ + rw_assert(&handler_rw, RA_WLOCKED) static __inline void -LIBALIAS_RLOCK(struct chain *chain) +LIBALIAS_RLOCK(void) { - rw_rlock(&chain->rw); + rw_rlock(&handler_rw); } static __inline void -LIBALIAS_RUNLOCK(struct chain *chain) +LIBALIAS_RUNLOCK(void) { - rw_runlock(&chain->rw); + rw_runlock(&handler_rw); } static __inline void -LIBALIAS_WLOCK(struct chain *chain) +LIBALIAS_WLOCK(void) { - rw_wlock(&chain->rw); + rw_wlock(&handler_rw); } static __inline void -LIBALIAS_WUNLOCK(struct chain *chain) +LIBALIAS_WUNLOCK(void) { - rw_wunlock(&chain->rw); + rw_wunlock(&handler_rw); } static void -_handler_chain_init(struct chain *chain) { +_handler_chain_init(void) { - if (!rw_initialized(&chain->rw)) - LIBALIAS_LOCK_INIT(chain); + if (!rw_initialized(&handler_rw)) + LIBALIAS_LOCK_INIT(); } static void -_handler_chain_destroy(struct chain *chain) { +_handler_chain_destroy(void) { - if (rw_initialized(&chain->rw)) - LIBALIAS_LOCK_DESTROY(chain); + if (rw_initialized(&handler_rw)) + LIBALIAS_LOCK_DESTROY(); } #else -#define LIBALIAS_LOCK_INIT(_chain) ; -#define LIBALIAS_LOCK_DESTROY(_chain) ; -#define LIBALIAS_WLOCK_ASSERT(_chain) ; +#define LIBALIAS_LOCK_INIT() ; +#define LIBALIAS_LOCK_DESTROY() ; +#define LIBALIAS_WLOCK_ASSERT() ; static __inline void -LIBALIAS_RLOCK(struct chain *chain __unused) +LIBALIAS_RLOCK(void) { ; } static __inline void -LIBALIAS_RUNLOCK(struct chain *chain __unused) +LIBALIAS_RUNLOCK(void) { ; } static __inline void -LIBALIAS_WLOCK(struct chain *chain __unused) +LIBALIAS_WLOCK(void) { ; } static __inline void -LIBALIAS_WUNLOCK(struct chain *chain __unused) +LIBALIAS_WUNLOCK(void) { ; } static void -_handler_chain_init(struct chain *c __unused) { +_handler_chain_init(void) { ; } static void -_handler_chain_destroy(struct chain *c __unused) { +_handler_chain_destroy(void) { ; } @@ -153,12 +157,12 @@ void handler_chain_init(void) { - _handler_chain_init(&handler_chain); + _handler_chain_init(); } void handler_chain_destroy(void) { - _handler_chain_destroy(&handler_chain); + _handler_chain_destroy(); } static int @@ -166,7 +170,7 @@ struct proto_handler **b; int i = 0; - LIBALIAS_WLOCK_ASSERT(c); + LIBALIAS_WLOCK_ASSERT(); b = (struct proto_handler **)&c->chain; p->next = NULL; /* i'm paranoid... */ for(; *b != NULL; b = &((*b)->next), i++) { @@ -186,7 +190,7 @@ _detach_handler(struct chain *c, struct proto_handler *p) { struct proto_handler **b; - LIBALIAS_WLOCK_ASSERT(c); + LIBALIAS_WLOCK_ASSERT(); b = (struct proto_handler **)&c->chain; for(; (*b != NULL) && (*b != p); b = &((*b)->next)) ; @@ -199,13 +203,13 @@ attach_handlers(struct proto_handler *_p) { int i, res = NOK; - LIBALIAS_WLOCK(&handler_chain); + LIBALIAS_WLOCK(); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; res = _attach_handler(&handler_chain, &_p[i]); if (res != OK) break; } - LIBALIAS_WUNLOCK(&handler_chain); + LIBALIAS_WUNLOCK(); return (res); } @@ -213,13 +217,13 @@ detach_handlers(struct proto_handler *_p) { int i, res = NOK; - LIBALIAS_WLOCK(&handler_chain); + LIBALIAS_WLOCK(); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; res = _detach_handler(&handler_chain, &_p[i]); if (res != OK) break; } - LIBALIAS_WUNLOCK(&handler_chain); + LIBALIAS_WUNLOCK(); return (res); } @@ -227,9 +231,9 @@ detach_handler(struct proto_handler *_p) { int res = NOK; - LIBALIAS_WLOCK(&handler_chain); + LIBALIAS_WLOCK(); res = _detach_handler(&handler_chain, _p); - LIBALIAS_WUNLOCK(&handler_chain); + LIBALIAS_WUNLOCK(); return (res); } @@ -238,14 +242,14 @@ struct proto_handler *p; int err; - LIBALIAS_RLOCK(&handler_chain); + LIBALIAS_RLOCK(); for (p = handler_chain.chain, err = EHDNOF; p != NULL; p = p->next) if ((p->dir & dir) && (p->proto & proto)) if (p->fingerprint(la, pip, ad) == OK) { err = p->protohandler(la, pip, ad); break; } - LIBALIAS_RUNLOCK(&handler_chain); + LIBALIAS_RUNLOCK(); return (err); } ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#11 (text+ko) ==== @@ -32,10 +32,6 @@ #ifndef _ALIAS_MOD_H_ #define _ALIAS_MOD_H_ -#include -#include -#include - /* Protocol handlers struct & function. */ /* Packet flow direction. */ @@ -83,7 +79,6 @@ // XXX - convert it to use queue(3) struct chain { void *chain; - struct rwlock rw; }; /* From owner-p4-projects@FreeBSD.ORG Thu Jul 6 09:54:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 51EA316A4E2; Thu, 6 Jul 2006 09:54:18 +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 13F8916A4DF for ; Thu, 6 Jul 2006 09:54:18 +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 B1E9943D45 for ; Thu, 6 Jul 2006 09:54:17 +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 k669sHdo058691 for ; Thu, 6 Jul 2006 09:54:17 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 k669sHXw058688 for perforce@freebsd.org; Thu, 6 Jul 2006 09:54:17 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 09:54:17 GMT Message-Id: <200607060954.k669sHXw058688@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 100708 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 09:54:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=100708 Change 100708 by rwatson@rwatson_zoo on 2006/07/06 09:54:10 Resort. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#3 (text+ko) ==== @@ -90,208 +90,110 @@ * Kernel functions to manage and evaluate labels. */ -/* - * Label operations. - */ void mac_init_bpfdesc(struct bpf_d *); -void mac_init_cred(struct ucred *); +void mac_destroy_bpfdesc(struct bpf_d *); +void mac_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d); +void mac_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct mbuf *m); +int mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet); + void mac_init_devfsdirent(struct devfs_dirent *); -void mac_init_ifnet(struct ifnet *); -int mac_init_inpcb(struct inpcb *, int flag); -void mac_init_sysv_msgmsg(struct msg *); -void mac_init_sysv_msgqueue(struct msqid_kernel*); -void mac_init_sysv_sem(struct semid_kernel*); -void mac_init_sysv_shm(struct shmid_kernel*); -int mac_init_ipq(struct ipq *, int flag); -int mac_init_socket(struct socket *, int flag); -void mac_init_pipe(struct pipepair *); -void mac_init_posix_sem(struct ksem *); -int mac_init_mbuf(struct mbuf *mbuf, int flag); -int mac_init_mbuf_tag(struct m_tag *, int flag); -void mac_init_mount(struct mount *); -void mac_init_proc(struct proc *); -void mac_init_vnode(struct vnode *); -void mac_copy_mbuf(struct mbuf *m_from, struct mbuf *m_to); -void mac_copy_mbuf_tag(struct m_tag *, struct m_tag *); -void mac_copy_vnode_label(struct label *, struct label *label); -void mac_destroy_bpfdesc(struct bpf_d *); -void mac_destroy_cred(struct ucred *); void mac_destroy_devfsdirent(struct devfs_dirent *); -void mac_destroy_ifnet(struct ifnet *); -void mac_destroy_inpcb(struct inpcb *); -void mac_destroy_sysv_msgmsg(struct msg *); -void mac_destroy_sysv_msgqueue(struct msqid_kernel *); -void mac_destroy_sysv_sem(struct semid_kernel *); -void mac_destroy_sysv_shm(struct shmid_kernel *); -void mac_destroy_ipq(struct ipq *); -void mac_destroy_socket(struct socket *); -void mac_destroy_pipe(struct pipepair *); -void mac_destroy_posix_sem(struct ksem *); -void mac_destroy_proc(struct proc *); -void mac_destroy_mbuf_tag(struct m_tag *); -void mac_destroy_mount(struct mount *); -void mac_destroy_vnode(struct vnode *); - -struct label *mac_cred_label_alloc(void); -void mac_cred_label_free(struct label *label); -struct label *mac_vnode_label_alloc(void); -void mac_vnode_label_free(struct label *label); - -/* - * Labeling event operations: file system objects, and things that - * look a lot like file system objects. - */ void mac_associate_vnode_devfs(struct mount *mp, struct devfs_dirent *de, struct vnode *vp); -int mac_associate_vnode_extattr(struct mount *mp, struct vnode *vp); -void mac_associate_vnode_singlelabel(struct mount *mp, struct vnode *vp); void mac_create_devfs_device(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *de); void mac_create_devfs_directory(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *de); void mac_create_devfs_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct devfs_dirent *de); -int mac_create_vnode_extattr(struct ucred *cred, struct mount *mp, - struct vnode *dvp, struct vnode *vp, struct componentname *cnp); -void mac_create_mount(struct ucred *cred, struct mount *mp); -void mac_relabel_vnode(struct ucred *cred, struct vnode *vp, - struct label *newlabel); void mac_update_devfsdirent(struct mount *mp, struct devfs_dirent *de, struct vnode *vp); -/* - * Labeling event operations: IPC objects. - */ -void mac_create_mbuf_from_socket(struct socket *so, struct mbuf *m); -void mac_create_socket(struct ucred *cred, struct socket *socket); -void mac_create_socket_from_socket(struct socket *oldsocket, - struct socket *newsocket); -void mac_set_socket_peer_from_mbuf(struct mbuf *mbuf, - struct socket *socket); -void mac_set_socket_peer_from_socket(struct socket *oldsocket, - struct socket *newsocket); -void mac_create_pipe(struct ucred *cred, struct pipepair *pp); +void mac_init_cred(struct ucred *); +void mac_destroy_cred(struct ucred *); +void mac_copy_cred(struct ucred *cr1, struct ucred *cr2); +struct label *mac_cred_label_alloc(void); +void mac_cred_label_free(struct label *label); +int mac_check_cred_visible(struct ucred *u1, struct ucred *u2); -/* - * Labeling event operations: System V IPC primitives - */ -void mac_create_sysv_msgmsg(struct ucred *cred, - struct msqid_kernel *msqkptr, struct msg *msgptr); -void mac_create_sysv_msgqueue(struct ucred *cred, - struct msqid_kernel *msqkptr); -void mac_create_sysv_sem(struct ucred *cred, - struct semid_kernel *semakptr); -void mac_create_sysv_shm(struct ucred *cred, - struct shmid_kernel *shmsegptr); - -/* - * Labeling event operations: POSIX (global/inter-process) semaphores. - */ -void mac_create_posix_sem(struct ucred *cred, struct ksem *ksemptr); - - -/* - * Labeling event operations: network objects. - */ -void mac_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d); +void mac_init_ifnet(struct ifnet *); +void mac_destroy_ifnet(struct ifnet *); void mac_create_ifnet(struct ifnet *ifp); -void mac_create_inpcb_from_socket(struct socket *so, struct inpcb *inp); -void mac_create_ipq(struct mbuf *fragment, struct ipq *ipq); -void mac_create_datagram_from_ipq(struct ipq *ipq, struct mbuf *datagram); -void mac_create_fragment(struct mbuf *datagram, struct mbuf *fragment); -void mac_create_mbuf_from_inpcb(struct inpcb *inp, struct mbuf *m); void mac_create_mbuf_linklayer(struct ifnet *ifnet, struct mbuf *m); -void mac_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct mbuf *m); void mac_create_mbuf_from_ifnet(struct ifnet *ifnet, struct mbuf *m); void mac_create_mbuf_multicast_encap(struct mbuf *oldmbuf, struct ifnet *ifnet, struct mbuf *newmbuf); -void mac_create_mbuf_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf); +int mac_check_ifnet_transmit(struct ifnet *ifnet, struct mbuf *m); +int mac_ioctl_ifnet_get(struct ucred *cred, struct ifreq *ifr, + struct ifnet *ifnet); +int mac_ioctl_ifnet_set(struct ucred *cred, struct ifreq *ifr, + struct ifnet *ifnet); + +int mac_init_inpcb(struct inpcb *, int flag); +void mac_destroy_inpcb(struct inpcb *); +void mac_create_inpcb_from_socket(struct socket *so, struct inpcb *inp); +void mac_create_mbuf_from_inpcb(struct inpcb *inp, struct mbuf *m); +void mac_inpcb_sosetlabel(struct socket *so, struct inpcb *inp); +int mac_check_inpcb_deliver(struct inpcb *inp, struct mbuf *m); + +int mac_init_ipq(struct ipq *, int flag); +void mac_destroy_ipq(struct ipq *); +void mac_create_ipq(struct mbuf *fragment, struct ipq *ipq); +void mac_create_datagram_from_ipq(struct ipq *ipq, struct mbuf *datagram); int mac_fragment_match(struct mbuf *fragment, struct ipq *ipq); -void mac_reflect_mbuf_icmp(struct mbuf *m); -void mac_reflect_mbuf_tcp(struct mbuf *m); void mac_update_ipq(struct mbuf *fragment, struct ipq *ipq); -void mac_inpcb_sosetlabel(struct socket *so, struct inpcb *inp); - -/* - * Labeling event operations: processes. - */ -void mac_copy_cred(struct ucred *cr1, struct ucred *cr2); -int mac_execve_enter(struct image_params *imgp, struct mac *mac_p); -void mac_execve_exit(struct image_params *imgp); -void mac_execve_transition(struct ucred *old, struct ucred *new, - struct vnode *vp, struct label *interpvnodelabel, - struct image_params *imgp); -int mac_execve_will_transition(struct ucred *old, struct vnode *vp, - struct label *interpvnodelabel, struct image_params *imgp); -void mac_create_proc0(struct ucred *cred); -void mac_create_proc1(struct ucred *cred); -void mac_thread_userret(struct thread *td); - -/* - * Label cleanup operation: This is the inverse complement for the - * mac_create and associate type of hooks. This hook lets the policy - * module(s) perform a cleanup/flushing operation on the label - * associated with the objects, without freeing up the space allocated. - * This hook is useful in cases where it is desirable to remove any - * labeling reference when recycling any object to a pool. This hook - * does not replace the mac_destroy hooks. - */ -void mac_cleanup_sysv_msgmsg(struct msg *msgptr); -void mac_cleanup_sysv_msgqueue(struct msqid_kernel *msqkptr); -void mac_cleanup_sysv_sem(struct semid_kernel *semakptr); -void mac_cleanup_sysv_shm(struct shmid_kernel *shmsegptr); -/* Access control checks. */ -int mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet); -int mac_check_cred_visible(struct ucred *u1, struct ucred *u2); -int mac_check_ifnet_transmit(struct ifnet *ifnet, struct mbuf *m); -int mac_check_inpcb_deliver(struct inpcb *inp, struct mbuf *m); -int mac_check_sysv_msgmsq(struct ucred *cred, struct msg *msgptr, - struct msqid_kernel *msqkptr); -int mac_check_sysv_msgrcv(struct ucred *cred, struct msg *msgptr); -int mac_check_sysv_msgrmid(struct ucred *cred, struct msg *msgptr); -int mac_check_sysv_msqget(struct ucred *cred, - struct msqid_kernel *msqkptr); -int mac_check_sysv_msqsnd(struct ucred *cred, - struct msqid_kernel *msqkptr); -int mac_check_sysv_msqrcv(struct ucred *cred, - struct msqid_kernel *msqkptr); -int mac_check_sysv_msqctl(struct ucred *cred, - struct msqid_kernel *msqkptr, int cmd); -int mac_check_sysv_semctl(struct ucred *cred, - struct semid_kernel *semakptr, int cmd); -int mac_check_sysv_semget(struct ucred *cred, - struct semid_kernel *semakptr); -int mac_check_sysv_semop(struct ucred *cred,struct semid_kernel *semakptr, - size_t accesstype); -int mac_check_sysv_shmat(struct ucred *cred, - struct shmid_kernel *shmsegptr, int shmflg); -int mac_check_sysv_shmctl(struct ucred *cred, - struct shmid_kernel *shmsegptr, int cmd); -int mac_check_sysv_shmdt(struct ucred *cred, - struct shmid_kernel *shmsegptr); -int mac_check_sysv_shmget(struct ucred *cred, - struct shmid_kernel *shmsegptr, int shmflg); int mac_check_kenv_dump(struct ucred *cred); int mac_check_kenv_get(struct ucred *cred, char *name); int mac_check_kenv_set(struct ucred *cred, char *name, char *value); int mac_check_kenv_unset(struct ucred *cred, char *name); + int mac_check_kld_load(struct ucred *cred, struct vnode *vp); int mac_check_kld_stat(struct ucred *cred); int mac_check_kld_unload(struct ucred *cred); + +void mac_init_posix_sem(struct ksem *); +void mac_destroy_posix_sem(struct ksem *); +void mac_create_posix_sem(struct ucred *cred, struct ksem *ksemptr); +int mac_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr); +int mac_check_posix_sem_getvalue(struct ucred *cred,struct ksem *ksemptr); +int mac_check_posix_sem_open(struct ucred *cred, struct ksem *ksemptr); +int mac_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr); +int mac_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr); +int mac_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr); + +int mac_init_mbuf(struct mbuf *mbuf, int flag); +int mac_init_mbuf_tag(struct m_tag *, int flag); +void mac_copy_mbuf(struct mbuf *m_from, struct mbuf *m_to); +void mac_copy_mbuf_tag(struct m_tag *, struct m_tag *); +void mac_destroy_mbuf_tag(struct m_tag *); +void mac_create_fragment(struct mbuf *datagram, struct mbuf *fragment); +void mac_create_mbuf_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf); +void mac_reflect_mbuf_icmp(struct mbuf *m); +void mac_reflect_mbuf_tcp(struct mbuf *m); + +void mac_init_mount(struct mount *); +void mac_destroy_mount(struct mount *); +void mac_create_mount(struct ucred *cred, struct mount *mp); int mac_check_mount_stat(struct ucred *cred, struct mount *mp); + +void mac_init_pipe(struct pipepair *); +void mac_destroy_pipe(struct pipepair *); +void mac_create_pipe(struct ucred *cred, struct pipepair *pp); int mac_check_pipe_ioctl(struct ucred *cred, struct pipepair *pp, unsigned long cmd, void *data); int mac_check_pipe_poll(struct ucred *cred, struct pipepair *pp); int mac_check_pipe_read(struct ucred *cred, struct pipepair *pp); int mac_check_pipe_stat(struct ucred *cred, struct pipepair *pp); int mac_check_pipe_write(struct ucred *cred, struct pipepair *pp); -int mac_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_getvalue(struct ucred *cred,struct ksem *ksemptr); -int mac_check_posix_sem_open(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr); +int mac_pipe_label_set(struct ucred *cred, struct pipepair *pp, + struct label *label); + +void mac_init_proc(struct proc *); +void mac_destroy_proc(struct proc *); +void mac_create_proc0(struct ucred *cred); +void mac_create_proc1(struct ucred *cred); +void mac_thread_userret(struct thread *td); int mac_check_proc_debug(struct ucred *cred, struct proc *proc); int mac_check_proc_sched(struct ucred *cred, struct proc *proc); int mac_check_proc_setuid(struct proc *proc, struct ucred *cred, @@ -315,6 +217,19 @@ int mac_check_proc_signal(struct ucred *cred, struct proc *proc, int signum); int mac_check_proc_wait(struct ucred *cred, struct proc *proc); +void mac_associate_nfsd_label(struct ucred *cred); +void mac_cred_mmapped_drop_perms(struct thread *td, struct ucred *cred); + +int mac_init_socket(struct socket *, int flag); +void mac_destroy_socket(struct socket *); +void mac_create_mbuf_from_socket(struct socket *so, struct mbuf *m); +void mac_create_socket(struct ucred *cred, struct socket *socket); +void mac_create_socket_from_socket(struct socket *oldsocket, + struct socket *newsocket); +void mac_set_socket_peer_from_mbuf(struct mbuf *mbuf, + struct socket *socket); +void mac_set_socket_peer_from_socket(struct socket *oldsocket, + struct socket *newsocket); int mac_check_socket_accept(struct ucred *cred, struct socket *so); int mac_check_socket_bind(struct ucred *cred, struct socket *so, struct sockaddr *sockaddr); @@ -329,6 +244,7 @@ int mac_check_socket_send(struct ucred *cred, struct socket *so); int mac_check_socket_stat(struct ucred *cred, struct socket *so); int mac_check_socket_visible(struct ucred *cred, struct socket *so); + int mac_check_sysarch_ioperm(struct ucred *cred); int mac_check_system_acct(struct ucred *cred, struct vnode *vp); int mac_check_system_nfsd(struct ucred *cred); @@ -338,8 +254,77 @@ int mac_check_system_swapoff(struct ucred *cred, struct vnode *vp); int mac_check_system_sysctl(struct ucred *cred, struct sysctl_oid *oidp, void *arg1, int arg2, struct sysctl_req *req); + int mac_check_vnode_access(struct ucred *cred, struct vnode *vp, int acc_mode); +void mac_init_sysv_msgqueue(struct msqid_kernel*); +void mac_destroy_sysv_msgqueue(struct msqid_kernel *); +void mac_cleanup_sysv_msgmsg(struct msg *msgptr); +void mac_cleanup_sysv_msgqueue(struct msqid_kernel *msqkptr); +void mac_create_sysv_msgmsg(struct ucred *cred, + struct msqid_kernel *msqkptr, struct msg *msgptr); +void mac_create_sysv_msgqueue(struct ucred *cred, + struct msqid_kernel *msqkptr); +void mac_init_sysv_msgmsg(struct msg *); +void mac_destroy_sysv_msgmsg(struct msg *); +int mac_check_sysv_msgmsq(struct ucred *cred, struct msg *msgptr, + struct msqid_kernel *msqkptr); +int mac_check_sysv_msgrcv(struct ucred *cred, struct msg *msgptr); +int mac_check_sysv_msgrmid(struct ucred *cred, struct msg *msgptr); +int mac_check_sysv_msqget(struct ucred *cred, + struct msqid_kernel *msqkptr); +int mac_check_sysv_msqsnd(struct ucred *cred, + struct msqid_kernel *msqkptr); +int mac_check_sysv_msqrcv(struct ucred *cred, + struct msqid_kernel *msqkptr); +int mac_check_sysv_msqctl(struct ucred *cred, + struct msqid_kernel *msqkptr, int cmd); + +void mac_init_sysv_sem(struct semid_kernel*); +void mac_destroy_sysv_sem(struct semid_kernel *); +void mac_create_sysv_sem(struct ucred *cred, + struct semid_kernel *semakptr); +void mac_cleanup_sysv_sem(struct semid_kernel *semakptr); +int mac_check_sysv_semctl(struct ucred *cred, + struct semid_kernel *semakptr, int cmd); +int mac_check_sysv_semget(struct ucred *cred, + struct semid_kernel *semakptr); +int mac_check_sysv_semop(struct ucred *cred,struct semid_kernel *semakptr, + size_t accesstype); + +void mac_init_sysv_shm(struct shmid_kernel*); +void mac_destroy_sysv_shm(struct shmid_kernel *); +void mac_create_sysv_shm(struct ucred *cred, + struct shmid_kernel *shmsegptr); +void mac_cleanup_sysv_shm(struct shmid_kernel *shmsegptr); +int mac_check_sysv_shmat(struct ucred *cred, + struct shmid_kernel *shmsegptr, int shmflg); +int mac_check_sysv_shmctl(struct ucred *cred, + struct shmid_kernel *shmsegptr, int cmd); +int mac_check_sysv_shmdt(struct ucred *cred, + struct shmid_kernel *shmsegptr); +int mac_check_sysv_shmget(struct ucred *cred, + struct shmid_kernel *shmsegptr, int shmflg); + +int mac_execve_enter(struct image_params *imgp, struct mac *mac_p); +void mac_execve_exit(struct image_params *imgp); +void mac_execve_transition(struct ucred *old, struct ucred *new, + struct vnode *vp, struct label *interpvnodelabel, + struct image_params *imgp); +int mac_execve_will_transition(struct ucred *old, struct vnode *vp, + struct label *interpvnodelabel, struct image_params *imgp); + +void mac_init_vnode(struct vnode *); +void mac_copy_vnode_label(struct label *, struct label *label); +void mac_destroy_vnode(struct vnode *); +struct label *mac_vnode_label_alloc(void); +void mac_vnode_label_free(struct label *label); +int mac_associate_vnode_extattr(struct mount *mp, struct vnode *vp); +void mac_associate_vnode_singlelabel(struct mount *mp, struct vnode *vp); +int mac_create_vnode_extattr(struct ucred *cred, struct mount *mp, + struct vnode *dvp, struct vnode *vp, struct componentname *cnp); +void mac_relabel_vnode(struct ucred *cred, struct vnode *vp, + struct label *newlabel); int mac_check_vnode_chdir(struct ucred *cred, struct vnode *dvp); int mac_check_vnode_chroot(struct ucred *cred, struct vnode *dvp); int mac_check_vnode_create(struct ucred *cred, struct vnode *dvp, @@ -399,16 +384,8 @@ struct mac *extmac); int mac_getsockopt_peerlabel(struct ucred *cred, struct socket *so, struct mac *extmac); -int mac_ioctl_ifnet_get(struct ucred *cred, struct ifreq *ifr, - struct ifnet *ifnet); -int mac_ioctl_ifnet_set(struct ucred *cred, struct ifreq *ifr, - struct ifnet *ifnet); int mac_setsockopt_label(struct ucred *cred, struct socket *so, struct mac *extmac); -int mac_pipe_label_set(struct ucred *cred, struct pipepair *pp, - struct label *label); -void mac_cred_mmapped_drop_perms(struct thread *td, struct ucred *cred); -void mac_associate_nfsd_label(struct ucred *cred); /* * Calls to help various file systems implement labeling functionality From owner-p4-projects@FreeBSD.ORG Thu Jul 6 10:06:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B8BBA16A4E0; Thu, 6 Jul 2006 10:06:00 +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 7BB3316A4DA for ; Thu, 6 Jul 2006 10:06:00 +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 B3BA743D49 for ; Thu, 6 Jul 2006 10:05:59 +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 k66A5xBV060999 for ; Thu, 6 Jul 2006 10:05:59 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 k66A5xfm060996 for perforce@freebsd.org; Thu, 6 Jul 2006 10:05:59 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 10:05:59 GMT Message-Id: <200607061005.k66A5xfm060996@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 100709 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 10:06:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=100709 Change 100709 by rwatson@rwatson_zoo on 2006/07/06 10:04:59 Two name shortenings/simplifications. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#11 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#11 (text+ko) ==== @@ -222,7 +222,7 @@ */ typedef int (*mpo_inpcb_init_label_t)(struct label *label, int flag); typedef void (*mpo_inpcb_destroy_label_t)(struct label *label); -typedef void (*mpo_inpcb_create_from_socket_t)(struct socket *so, +typedef void (*mpo_inpcb_create_t)(struct socket *so, struct label *solabel, struct inpcb *inp, struct label *inplabel); typedef void (*mpo_inpcb_create_mbuf_t)(struct inpcb *inp, @@ -474,7 +474,7 @@ char *element_name, char *element_data, int *claimed); typedef void (*mpo_socket_create_t)(struct ucred *cred, struct socket *so, struct label *socketlabel); -typedef void (*mpo_socket_create_from_socket_t)(struct socket *oldsocket, +typedef void (*mpo_socket_accept_t)(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketlabel); typedef void (*mpo_socket_relabel_t)(struct ucred *cred, struct socket *so, @@ -711,12 +711,9 @@ mpo_ifnet_check_relabel_t mpo_ifnet_check_relabel; mpo_ifnet_check_transmit_t mpo_ifnet_check_transmit; - /* - * XXXRW: Could s/create_from_socket/create/. - */ mpo_inpcb_init_label_t mpo_inpcb_init_label; mpo_inpcb_destroy_label_t mpo_inpcb_destroy_label; - mpo_inpcb_create_from_socket_t mpo_inpcb_create_from_socket; + mpo_inpcb_create_t mpo_inpcb_create; mpo_inpcb_create_mbuf_t mpo_inpcb_create_mbuf; mpo_inpcb_sosetlabel_t mpo_inpcb_sosetlabel; mpo_inpcb_check_deliver_t mpo_inpcb_check_deliver; @@ -865,7 +862,7 @@ mpo_socket_externalize_peer_label_t mpo_socket_externalize_peer_label; mpo_socket_internalize_label_t mpo_socket_internalize_label; mpo_socket_create_t mpo_socket_create; - mpo_socket_create_from_socket_t mpo_socket_create_from_socket; + mpo_socket_accept_t mpo_socket_accept; mpo_socket_relabel_t mpo_socket_relabel; mpo_socket_set_peer_from_socket_t mpo_socket_set_peer_from_socket; mpo_socket_create_mbuf_t mpo_socket_create_mbuf; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 10:17:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 402CD16A4E0; Thu, 6 Jul 2006 10:17:15 +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 1AA8F16A4DE for ; Thu, 6 Jul 2006 10:17:15 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C3CAE43D45 for ; Thu, 6 Jul 2006 10:17:14 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66AHEGH061484 for ; Thu, 6 Jul 2006 10:17:14 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66AHEc4061481 for perforce@freebsd.org; Thu, 6 Jul 2006 10:17:14 GMT (envelope-from imp@freebsd.org) Date: Thu, 6 Jul 2006 10:17:14 GMT Message-Id: <200607061017.k66AHEc4061481@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100710 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 10:17:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=100710 Change 100710 by imp@imp_lighthouse on 2006/07/06 10:16:21 First, crude, cut at having iic_transfer, which will do multiple transfers in one shot it. This can be used to optimize transfers, as well as exposed to iic bridges, if they so desire. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_twi.c#18 edit .. //depot/projects/arm/src/sys/arm/conf/KB920X#34 edit .. //depot/projects/arm/src/sys/dev/iicbus/iic.c#3 edit .. //depot/projects/arm/src/sys/dev/iicbus/iic.h#2 edit .. //depot/projects/arm/src/sys/dev/iicbus/iicbus.c#4 edit .. //depot/projects/arm/src/sys/dev/iicbus/iicbus.h#3 edit .. //depot/projects/arm/src/sys/dev/iicbus/iicbus_if.m#2 edit .. //depot/projects/arm/src/sys/dev/iicbus/iiconf.c#2 edit .. //depot/projects/arm/src/sys/dev/iicbus/iiconf.h#2 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_twi.c#18 (text+ko) ==== ==== //depot/projects/arm/src/sys/arm/conf/KB920X#34 (text+ko) ==== @@ -94,9 +94,9 @@ device mem # Memory and kernel memory devices device md -# device at91_twi # TWI: Two Wire Interface +device at91_twi # TWI: Two Wire Interface device at91_spi # SPI: device at91_ssc # iic -# device iic -# device iicbus +device iic +device iicbus ==== //depot/projects/arm/src/sys/dev/iicbus/iic.c#3 (text+ko) ==== @@ -240,8 +240,11 @@ struct iic_softc *sc = IIC_SOFTC(minor(dev)); device_t parent = device_get_parent(iicdev); struct iiccmd *s = (struct iiccmd *)data; - int error, count; + struct iic_rdwr_data *d = (struct iic_rdwr_data *)data; + struct iic_msg *m; + int error, count, i; char *buf = NULL; + void **usrbufs = NULL; if (!sc) return (EINVAL); @@ -297,6 +300,30 @@ error = copyout(buf, s->buf, s->count); break; + case I2CRDWR: + buf = malloc(sizeof(*d->msgs) * d->nmsgs, M_TEMP, M_WAITOK); + usrbufs = malloc(sizeof(void *) * d->nmsgs, M_TEMP, M_ZERO | M_WAITOK); + error = copyin(d->msgs, buf, sizeof(*d->msgs) * d->nmsgs); + if (error) + break; + /* Allocate kernel buffers for userland data, copyin write data */ + for (i = 0; i < d->nmsgs; i++) { + m = &((struct iic_msg *)buf)[i]; + usrbufs[i] = m->buf; + m->buf = malloc(m->len, M_TEMP, M_WAITOK); + if (!(m->flags & IIC_M_RD)) + copyin(usrbufs[i], m->buf, m->len); + } + error = iicbus_transfer(parent, (struct iic_msg *)buf, d->nmsgs); + /* Copyout all read segments, free up kernel buffers */ + for (i = 0; i < d->nmsgs; i++) { + m = &((struct iic_msg *)buf)[i]; + if (!(m->flags & IIC_M_RD)) + copyout(m->buf, usrbufs[i], m->len); + free(m->buf, M_TEMP); + } + free(usrbufs, M_TEMP); + break; default: error = ENOTTY; } ==== //depot/projects/arm/src/sys/dev/iicbus/iic.h#2 (text+ko) ==== @@ -31,6 +31,16 @@ #include +/* Designed to be compatible with linux's struct i2c_msg */ +struct iic_msg +{ + uint16_t slave; + uint16_t flags; +#define IIC_M_RD 0x0001 /* read vs write */ + uint16_t len; /* msg legnth */ + uint8_t * buf; +}; + struct iiccmd { u_char slave; int count; @@ -38,10 +48,16 @@ char *buf; }; +struct iic_rdwr_data { + struct iic_msg *msgs; + uint32_t nmsgs; +}; + #define I2CSTART _IOW('i', 1, struct iiccmd) /* start condition */ #define I2CSTOP _IO('i', 2) /* stop condition */ #define I2CRSTCARD _IOW('i', 3, struct iiccmd) /* reset the card */ #define I2CWRITE _IOW('i', 4, struct iiccmd) /* send data */ #define I2CREAD _IOW('i', 5, struct iiccmd) /* receive data */ +#define I2CRDWR _IOW('i', 6, struct iic_rdwr_data) /* General read/write interface */ #endif ==== //depot/projects/arm/src/sys/dev/iicbus/iicbus.c#4 (text+ko) ==== @@ -45,7 +45,7 @@ #define DEVTOIICBUS(dev) ((struct iicbus_device*)device_get_ivars(dev)) -static devclass_t iicbus_devclass; +devclass_t iicbus_devclass; /* See comments below for why auto-scanning is a bad idea. */ #define SCAN_IICBUS 0 @@ -72,7 +72,7 @@ { 0, 0 } }; -static driver_t iicbus_driver = { +driver_t iicbus_driver = { "iicbus", iicbus_methods, sizeof(struct iicbus_softc), @@ -188,7 +188,6 @@ return (IIC_ENOTSUPP); } -DRIVER_MODULE(iicbus, at91_twi, iicbus_driver, iicbus_devclass, 0, 0); DRIVER_MODULE(iicbus, envctrl, iicbus_driver, iicbus_devclass, 0, 0); DRIVER_MODULE(iicbus, iicbb, iicbus_driver, iicbus_devclass, 0, 0); MODULE_VERSION(iicbus, IICBUS_MODVER); ==== //depot/projects/arm/src/sys/dev/iicbus/iicbus.h#3 (text+ko) ==== @@ -38,4 +38,7 @@ extern int iicbus_generic_intr(device_t dev, int event, char *buf); +extern driver_t iicbus_driver; +extern devclass_t iicbus_devclass; + #endif ==== //depot/projects/arm/src/sys/dev/iicbus/iicbus_if.m#2 (text+ko) ==== @@ -27,6 +27,7 @@ # #include +#include INTERFACE iicbus; @@ -105,3 +106,12 @@ u_char addr; u_char *oldaddr; }; + +# +# Generalized Read/Write interface +# +METHOD int transfer { + device_t dev; + struct iic_msg *msgs; + uint32_t nmsgs; +}; ==== //depot/projects/arm/src/sys/dev/iicbus/iiconf.c#2 (text+ko) ==== @@ -331,3 +331,45 @@ return (error); } + +/* + * iicbus_trasnfer() + * + * Do an aribtrary number of transfers on the iicbus. We pass these + * raw requests to the bridge driver. If the bridge driver supports + * them directly, then it manages all the details. If not, it can use + * the helper function iicbus_transfer_gen() which will do the + * transfers at a low level. + * + * Pointers passed in as part of iic_msg must be kernel pointers. + * Callers that have user addresses to manage must do so on their own. + */ +int +iicbus_transfer(device_t bus, struct iic_msg *msgs, uint32_t nmsgs) +{ + return (IICBUS_TRANSFER(device_get_parent(bus), msgs, nmsgs)); +} + +/* + * Generic version of iicbus_transfer that calls the appropriate + * routines to accomplish this. See note above about acceptable + * buffer addresses. + */ +int +iicbus_transfer_gen(device_t bus, struct iic_msg *msgs, uint32_t nmsgs) +{ + int i, error, max, lenread, lenwrote; + + for (i = 0, max = 0; i < nmsgs; i++) + if (max < msgs[i].len) + max = msgs[i].len; + for (i = 0, error = 0; i < nmsgs && error == 0; i++) { + if (msgs[i].flags & IIC_M_RD) + error = iicbus_block_read(bus, msgs[i].slave, + msgs[i].buf, msgs[i].len, &lenread); + else + error = iicbus_block_write(bus, msgs[i].slave, + msgs[i].buf, msgs[i].len, &lenwrote); + } + return (error); +} ==== //depot/projects/arm/src/sys/dev/iicbus/iiconf.h#2 (text+ko) ==== @@ -29,6 +29,8 @@ #define __IICONF_H #include +#include + #define IICPRI (PZERO+8) /* XXX sleep/wakeup queue priority */ @@ -127,6 +129,10 @@ extern u_char iicbus_get_addr(device_t); +/* vectors of iic operations to pass to bridge */ +int iicbus_transfer(device_t bus, struct iic_msg *msgs, uint32_t nmsgs); +int iicbus_transfer_gen(device_t bus, struct iic_msg *msgs, uint32_t nmsgs); + #define IICBUS_MODVER 1 #define IICBUS_MINVER 1 #define IICBUS_MAXVER 1 From owner-p4-projects@FreeBSD.ORG Thu Jul 6 10:18:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 511B316A4E1; Thu, 6 Jul 2006 10:18:17 +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 0708016A4DA for ; Thu, 6 Jul 2006 10:18:17 +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 A939E43D49 for ; Thu, 6 Jul 2006 10:18:16 +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 k66AIGpe061527 for ; Thu, 6 Jul 2006 10:18:16 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 k66AIGiL061524 for perforce@freebsd.org; Thu, 6 Jul 2006 10:18:16 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 10:18:16 GMT Message-Id: <200607061018.k66AIGiL061524@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 100711 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 10:18:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=100711 Change 100711 by rwatson@rwatson_zoo on 2006/07/06 10:18:02 Much renaming. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#4 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#4 (text+ko) ==== @@ -90,173 +90,177 @@ * Kernel functions to manage and evaluate labels. */ -void mac_init_bpfdesc(struct bpf_d *); -void mac_destroy_bpfdesc(struct bpf_d *); -void mac_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d); -void mac_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct mbuf *m); -int mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet); +void mac_bpfdesc_init(struct bpf_d *); +void mac_bpfdesc_destroy(struct bpf_d *); +void mac_bpfdesc_create(struct ucred *cred, struct bpf_d *bpf_d); +void mac_bpfdesc_create_mbuf(struct bpf_d *bpf_d, struct mbuf *m); +int mac_bpfdesc_check_receive(struct bpf_d *bpf_d, struct ifnet *ifnet); -void mac_init_devfsdirent(struct devfs_dirent *); -void mac_destroy_devfsdirent(struct devfs_dirent *); -void mac_associate_vnode_devfs(struct mount *mp, struct devfs_dirent *de, +void mac_devfsdirent_init(struct devfs_dirent *); +void mac_devfsdirent_destroy(struct devfs_dirent *); +void mac_devfs_vnode_associate(struct mount *mp, struct devfs_dirent *de, struct vnode *vp); -void mac_create_devfs_device(struct ucred *cred, struct mount *mp, +void mac_devfs_create_device(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *de); -void mac_create_devfs_directory(struct mount *mp, char *dirname, +void mac_devfs_create_directory(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *de); -void mac_create_devfs_symlink(struct ucred *cred, struct mount *mp, +void mac_devfs_create_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct devfs_dirent *de); -void mac_update_devfsdirent(struct mount *mp, struct devfs_dirent *de, +void mac_devfsdirent_update(struct mount *mp, struct devfs_dirent *de, struct vnode *vp); -void mac_init_cred(struct ucred *); -void mac_destroy_cred(struct ucred *); -void mac_copy_cred(struct ucred *cr1, struct ucred *cr2); +void mac_cred_init(struct ucred *); +void mac_cred_destroy(struct ucred *); +void mac_cred_copy(struct ucred *cr1, struct ucred *cr2); struct label *mac_cred_label_alloc(void); void mac_cred_label_free(struct label *label); -int mac_check_cred_visible(struct ucred *u1, struct ucred *u2); +int mac_cred_check_visible(struct ucred *u1, struct ucred *u2); -void mac_init_ifnet(struct ifnet *); -void mac_destroy_ifnet(struct ifnet *); -void mac_create_ifnet(struct ifnet *ifp); +void mac_ifnet_init(struct ifnet *); +void mac_ifnet_destroy(struct ifnet *); +void mac_ifnet_create(struct ifnet *ifp); void mac_create_mbuf_linklayer(struct ifnet *ifnet, struct mbuf *m); -void mac_create_mbuf_from_ifnet(struct ifnet *ifnet, struct mbuf *m); +void mac_ifnet_create_mbuf(struct ifnet *ifnet, struct mbuf *m); void mac_create_mbuf_multicast_encap(struct mbuf *oldmbuf, struct ifnet *ifnet, struct mbuf *newmbuf); -int mac_check_ifnet_transmit(struct ifnet *ifnet, struct mbuf *m); -int mac_ioctl_ifnet_get(struct ucred *cred, struct ifreq *ifr, +int mac_ifnet_check_transmit(struct ifnet *ifnet, struct mbuf *m); +int mac_ifnet_ioctl_get(struct ucred *cred, struct ifreq *ifr, struct ifnet *ifnet); -int mac_ioctl_ifnet_set(struct ucred *cred, struct ifreq *ifr, +int mac_ifnet_ioctl_set(struct ucred *cred, struct ifreq *ifr, struct ifnet *ifnet); -int mac_init_inpcb(struct inpcb *, int flag); -void mac_destroy_inpcb(struct inpcb *); -void mac_create_inpcb_from_socket(struct socket *so, struct inpcb *inp); -void mac_create_mbuf_from_inpcb(struct inpcb *inp, struct mbuf *m); +int mac_inpcb_init(struct inpcb *, int flag); +void mac_inpcb_destroy_inpcb(struct inpcb *); +void mac_inpcb_create_from_socket(struct socket *so, struct inpcb *inp); +void mac_inpcb_create_mbuf(struct inpcb *inp, struct mbuf *m); void mac_inpcb_sosetlabel(struct socket *so, struct inpcb *inp); -int mac_check_inpcb_deliver(struct inpcb *inp, struct mbuf *m); +int mac_inpcb_check_inpcb_deliver(struct inpcb *inp, struct mbuf *m); -int mac_init_ipq(struct ipq *, int flag); -void mac_destroy_ipq(struct ipq *); -void mac_create_ipq(struct mbuf *fragment, struct ipq *ipq); -void mac_create_datagram_from_ipq(struct ipq *ipq, struct mbuf *datagram); -int mac_fragment_match(struct mbuf *fragment, struct ipq *ipq); -void mac_update_ipq(struct mbuf *fragment, struct ipq *ipq); +int mac_ipq_init(struct ipq *, int flag); +void mac_ipq_destroy(struct ipq *); +void mac_ipq_create(struct mbuf *fragment, struct ipq *ipq); +void mac_ipq_create_datagram(struct ipq *ipq, struct mbuf *datagram); +int mac_ipq_fragment_match(struct mbuf *fragment, struct ipq *ipq); +void mac_ipq_update(struct mbuf *fragment, struct ipq *ipq); -int mac_check_kenv_dump(struct ucred *cred); -int mac_check_kenv_get(struct ucred *cred, char *name); -int mac_check_kenv_set(struct ucred *cred, char *name, char *value); -int mac_check_kenv_unset(struct ucred *cred, char *name); +int mac_kenv_check_dump(struct ucred *cred); +int mac_kenv_check_get(struct ucred *cred, char *name); +int mac_kenv_check_set(struct ucred *cred, char *name, char *value); +int mac_kenv_check_unset(struct ucred *cred, char *name); -int mac_check_kld_load(struct ucred *cred, struct vnode *vp); -int mac_check_kld_stat(struct ucred *cred); -int mac_check_kld_unload(struct ucred *cred); +int mac_kld_check_load(struct ucred *cred, struct vnode *vp); +int mac_kld_check_stat(struct ucred *cred); +int mac_kld_check_unload(struct ucred *cred); -void mac_init_posix_sem(struct ksem *); -void mac_destroy_posix_sem(struct ksem *); -void mac_create_posix_sem(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_getvalue(struct ucred *cred,struct ksem *ksemptr); -int mac_check_posix_sem_open(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr); -int mac_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr); +void mac_posix_sem_init(struct ksem *); +void mac_posix_sem_destroy_posix_sem(struct ksem *); +void mac_posix_sem_create(struct ucred *cred, struct ksem *ksemptr); +int mac_posix_sem_check_destroy(struct ucred *cred, struct ksem *ksemptr); +int mac_posix_sem_check_getvalue(struct ucred *cred,struct ksem *ksemptr); +int mac_posix_sem_check_open(struct ucred *cred, struct ksem *ksemptr); +int mac_posix_sem_check_post(struct ucred *cred, struct ksem *ksemptr); +int mac_posix_sem_check_unlink(struct ucred *cred, struct ksem *ksemptr); +int mac_posix_sem_check_wait(struct ucred *cred, struct ksem *ksemptr); -int mac_init_mbuf(struct mbuf *mbuf, int flag); -int mac_init_mbuf_tag(struct m_tag *, int flag); -void mac_copy_mbuf(struct mbuf *m_from, struct mbuf *m_to); -void mac_copy_mbuf_tag(struct m_tag *, struct m_tag *); -void mac_destroy_mbuf_tag(struct m_tag *); -void mac_create_fragment(struct mbuf *datagram, struct mbuf *fragment); -void mac_create_mbuf_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf); -void mac_reflect_mbuf_icmp(struct mbuf *m); -void mac_reflect_mbuf_tcp(struct mbuf *m); +int mac_mbuf_init(struct mbuf *mbuf, int flag); +int mac_mbuf_tag_init(struct m_tag *, int flag); +void mac_mbuf_copy(struct mbuf *m_from, struct mbuf *m_to); +void mac_mbuf_tag_copy(struct m_tag *, struct m_tag *); +void mac_mbuf_tag_destroy(struct m_tag *); +void mac_mbuf_create_fragment(struct mbuf *datagram, struct mbuf *fragment); +void mac_mbuf_create_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf); +void mac_mbuf_reflect_icmp(struct mbuf *m); +void mac_mbuf_reflect_tcp(struct mbuf *m); -void mac_init_mount(struct mount *); -void mac_destroy_mount(struct mount *); -void mac_create_mount(struct ucred *cred, struct mount *mp); -int mac_check_mount_stat(struct ucred *cred, struct mount *mp); +void mac_mount_init(struct mount *); +void mac_mount_destroy(struct mount *); +void mac_mount_create(struct ucred *cred, struct mount *mp); +int mac_mount_check_stat(struct ucred *cred, struct mount *mp); -void mac_init_pipe(struct pipepair *); -void mac_destroy_pipe(struct pipepair *); -void mac_create_pipe(struct ucred *cred, struct pipepair *pp); -int mac_check_pipe_ioctl(struct ucred *cred, struct pipepair *pp, +void mac_pipe_init(struct pipepair *); +void mac_pipe_destroy(struct pipepair *); +void mac_pipe_create(struct ucred *cred, struct pipepair *pp); +int mac_pipe_check_ioctl(struct ucred *cred, struct pipepair *pp, unsigned long cmd, void *data); -int mac_check_pipe_poll(struct ucred *cred, struct pipepair *pp); -int mac_check_pipe_read(struct ucred *cred, struct pipepair *pp); -int mac_check_pipe_stat(struct ucred *cred, struct pipepair *pp); -int mac_check_pipe_write(struct ucred *cred, struct pipepair *pp); +int mac_pipe_check_poll(struct ucred *cred, struct pipepair *pp); +int mac_pipe_check_read(struct ucred *cred, struct pipepair *pp); +int mac_pipe_check_stat(struct ucred *cred, struct pipepair *pp); +int mac_pipe_check_write(struct ucred *cred, struct pipepair *pp); int mac_pipe_label_set(struct ucred *cred, struct pipepair *pp, struct label *label); -void mac_init_proc(struct proc *); -void mac_destroy_proc(struct proc *); -void mac_create_proc0(struct ucred *cred); -void mac_create_proc1(struct ucred *cred); +void mac_proc_init(struct proc *); +void mac_proc_destroy(struct proc *); +void mac_proc_create_swapper(struct ucred *cred); +void mac_proc_create_init(struct ucred *cred); void mac_thread_userret(struct thread *td); -int mac_check_proc_debug(struct ucred *cred, struct proc *proc); -int mac_check_proc_sched(struct ucred *cred, struct proc *proc); -int mac_check_proc_setuid(struct proc *proc, struct ucred *cred, +int mac_proc_check_debug(struct ucred *cred, struct proc *proc); +int mac_proc_check_sched(struct ucred *cred, struct proc *proc); +int mac_proc_check_setuid(struct proc *proc, struct ucred *cred, uid_t uid); -int mac_check_proc_seteuid(struct proc *proc, struct ucred *cred, +int mac_proc_check_seteuid(struct proc *proc, struct ucred *cred, uid_t euid); -int mac_check_proc_setgid(struct proc *proc, struct ucred *cred, +int mac_proc_check_setgid(struct proc *proc, struct ucred *cred, gid_t gid); -int mac_check_proc_setegid(struct proc *proc, struct ucred *cred, +int mac_proc_check_setegid(struct proc *proc, struct ucred *cred, gid_t egid); -int mac_check_proc_setgroups(struct proc *proc, struct ucred *cred, +int mac_proc_check_setgroups(struct proc *proc, struct ucred *cred, int ngroups, gid_t *gidset); -int mac_check_proc_setreuid(struct proc *proc, struct ucred *cred, +int mac_proc_check_setreuid(struct proc *proc, struct ucred *cred, uid_t ruid, uid_t euid); -int mac_check_proc_setregid(struct proc *proc, struct ucred *cred, +int mac_proc_check_setregid(struct proc *proc, struct ucred *cred, gid_t rgid, gid_t egid); -int mac_check_proc_setresuid(struct proc *proc, struct ucred *cred, +int mac_proc_check_setresuid(struct proc *proc, struct ucred *cred, uid_t ruid, uid_t euid, uid_t suid); -int mac_check_proc_setresgid(struct proc *proc, struct ucred *cred, +int mac_proc_check_setresgid(struct proc *proc, struct ucred *cred, gid_t rgid, gid_t egid, gid_t sgid); -int mac_check_proc_signal(struct ucred *cred, struct proc *proc, +int mac_proc_check_signal(struct ucred *cred, struct proc *proc, int signum); -int mac_check_proc_wait(struct ucred *cred, struct proc *proc); +int mac_proc_check_wait(struct ucred *cred, struct proc *proc); void mac_associate_nfsd_label(struct ucred *cred); void mac_cred_mmapped_drop_perms(struct thread *td, struct ucred *cred); -int mac_init_socket(struct socket *, int flag); -void mac_destroy_socket(struct socket *); -void mac_create_mbuf_from_socket(struct socket *so, struct mbuf *m); -void mac_create_socket(struct ucred *cred, struct socket *socket); -void mac_create_socket_from_socket(struct socket *oldsocket, +int mac_socket_init(struct socket *, int flag); +void mac_socket_destroy(struct socket *); +void mac_socket_create_mbuf(struct socket *so, struct mbuf *m); +void mac_socket_create(struct ucred *cred, struct socket *socket); +void mac_socket_accept(struct socket *oldsocket, struct socket *newsocket); -void mac_set_socket_peer_from_mbuf(struct mbuf *mbuf, +void mac_socket_set_peer_from_mbuf(struct mbuf *mbuf, struct socket *socket); -void mac_set_socket_peer_from_socket(struct socket *oldsocket, +void mac_socket_set_peer_from_socket(struct socket *oldsocket, struct socket *newsocket); -int mac_check_socket_accept(struct ucred *cred, struct socket *so); -int mac_check_socket_bind(struct ucred *cred, struct socket *so, +int mac_socket_check_accept(struct ucred *cred, struct socket *so); +int mac_socket_check_bind(struct ucred *cred, struct socket *so, struct sockaddr *sockaddr); -int mac_check_socket_connect(struct ucred *cred, struct socket *so, +int mac_socket_check_connect(struct ucred *cred, struct socket *so, struct sockaddr *sockaddr); -int mac_check_socket_create(struct ucred *cred, int domain, int type, +int mac_socket_check_create(struct ucred *cred, int domain, int type, int protocol); -int mac_check_socket_deliver(struct socket *so, struct mbuf *m); -int mac_check_socket_listen(struct ucred *cred, struct socket *so); -int mac_check_socket_poll(struct ucred *cred, struct socket *so); -int mac_check_socket_receive(struct ucred *cred, struct socket *so); -int mac_check_socket_send(struct ucred *cred, struct socket *so); -int mac_check_socket_stat(struct ucred *cred, struct socket *so); -int mac_check_socket_visible(struct ucred *cred, struct socket *so); +int mac_socket_check_deliver(struct socket *so, struct mbuf *m); +int mac_socket_check_listen(struct ucred *cred, struct socket *so); +int mac_socket_check_poll(struct ucred *cred, struct socket *so); +int mac_socket_check_receive(struct ucred *cred, struct socket *so); +int mac_socket_check_send(struct ucred *cred, struct socket *so); +int mac_socket_check_stat(struct ucred *cred, struct socket *so); +int mac_socket_check_visible(struct ucred *cred, struct socket *so); -int mac_check_sysarch_ioperm(struct ucred *cred); -int mac_check_system_acct(struct ucred *cred, struct vnode *vp); -int mac_check_system_nfsd(struct ucred *cred); -int mac_check_system_reboot(struct ucred *cred, int howto); -int mac_check_system_settime(struct ucred *cred); -int mac_check_system_swapon(struct ucred *cred, struct vnode *vp); -int mac_check_system_swapoff(struct ucred *cred, struct vnode *vp); -int mac_check_system_sysctl(struct ucred *cred, struct sysctl_oid *oidp, +int mac_system_check_sysarch_ioperm(struct ucred *cred); +int mac_system_check_acct(struct ucred *cred, struct vnode *vp); +int mac_system_check_nfsd(struct ucred *cred); +int mac_system_check_reboot(struct ucred *cred, int howto); +int mac_system_check_settime(struct ucred *cred); +int mac_system_check_swapon(struct ucred *cred, struct vnode *vp); +int mac_system_check_swapoff(struct ucred *cred, struct vnode *vp); +int mac_system_check_sysctl(struct ucred *cred, struct sysctl_oid *oidp, void *arg1, int arg2, struct sysctl_req *req); +int mac_socket_getsockopt_label(struct ucred *cred, struct socket *so, + struct mac *extmac); +int mac_socket_getsockopt_peerlabel(struct ucred *cred, struct socket *so, + struct mac *extmac); +int mac_socket_setsockopt_label(struct ucred *cred, struct socket *so, + struct mac *extmac); -int mac_check_vnode_access(struct ucred *cred, struct vnode *vp, - int acc_mode); void mac_init_sysv_msgqueue(struct msqid_kernel*); void mac_destroy_sysv_msgqueue(struct msqid_kernel *); void mac_cleanup_sysv_msgmsg(struct msg *msgptr); @@ -292,18 +296,18 @@ int mac_check_sysv_semop(struct ucred *cred,struct semid_kernel *semakptr, size_t accesstype); -void mac_init_sysv_shm(struct shmid_kernel*); -void mac_destroy_sysv_shm(struct shmid_kernel *); -void mac_create_sysv_shm(struct ucred *cred, +void mac_sysv_shm_init(struct shmid_kernel*); +void mac_sysv_shm_destroy(struct shmid_kernel *); +void mac_sysv_shm_create(struct ucred *cred, struct shmid_kernel *shmsegptr); -void mac_cleanup_sysv_shm(struct shmid_kernel *shmsegptr); -int mac_check_sysv_shmat(struct ucred *cred, +void mac_sysv_shm_cleanup(struct shmid_kernel *shmsegptr); +int mac_sysv_shm_check_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, int shmflg); -int mac_check_sysv_shmctl(struct ucred *cred, +int mac_sysv_shm_check_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, int cmd); -int mac_check_sysv_shmdt(struct ucred *cred, +int mac_sysv_shm_check_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr); -int mac_check_sysv_shmget(struct ucred *cred, +int mac_sysv_shm_check_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, int shmflg); int mac_execve_enter(struct image_params *imgp, struct mac *mac_p); @@ -314,78 +318,74 @@ int mac_execve_will_transition(struct ucred *old, struct vnode *vp, struct label *interpvnodelabel, struct image_params *imgp); -void mac_init_vnode(struct vnode *); -void mac_copy_vnode_label(struct label *, struct label *label); -void mac_destroy_vnode(struct vnode *); +void mac_vnode_init(struct vnode *); +void mac_vnode_copy_label(struct label *, struct label *label); +void mac_vnode_destroy(struct vnode *); struct label *mac_vnode_label_alloc(void); void mac_vnode_label_free(struct label *label); -int mac_associate_vnode_extattr(struct mount *mp, struct vnode *vp); -void mac_associate_vnode_singlelabel(struct mount *mp, struct vnode *vp); -int mac_create_vnode_extattr(struct ucred *cred, struct mount *mp, +int mac_vnode_associate_extattr(struct mount *mp, struct vnode *vp); +void mac_vnode_associate_singlelabel(struct mount *mp, struct vnode *vp); +int mac_vnode_create_extattr(struct ucred *cred, struct mount *mp, struct vnode *dvp, struct vnode *vp, struct componentname *cnp); -void mac_relabel_vnode(struct ucred *cred, struct vnode *vp, +void mac_vnode_relabel(struct ucred *cred, struct vnode *vp, struct label *newlabel); -int mac_check_vnode_chdir(struct ucred *cred, struct vnode *dvp); -int mac_check_vnode_chroot(struct ucred *cred, struct vnode *dvp); -int mac_check_vnode_create(struct ucred *cred, struct vnode *dvp, +int mac_vnode_check_access(struct ucred *cred, struct vnode *vp, + int acc_mode); +int mac_vnode_check_chdir(struct ucred *cred, struct vnode *dvp); +int mac_vnode_check_chroot(struct ucred *cred, struct vnode *dvp); +int mac_vnode_check_create(struct ucred *cred, struct vnode *dvp, struct componentname *cnp, struct vattr *vap); -int mac_check_vnode_delete(struct ucred *cred, struct vnode *dvp, +int mac_vnode_check_delete(struct ucred *cred, struct vnode *dvp, struct vnode *vp, struct componentname *cnp); -int mac_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_deleteacl(struct ucred *cred, struct vnode *vp, acl_type_t type); -int mac_check_vnode_deleteextattr(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_deleteextattr(struct ucred *cred, struct vnode *vp, int attrnamespace, const char *name); -int mac_check_vnode_exec(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_exec(struct ucred *cred, struct vnode *vp, struct image_params *imgp); -int mac_check_vnode_getacl(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_getacl(struct ucred *cred, struct vnode *vp, acl_type_t type); -int mac_check_vnode_getextattr(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_getextattr(struct ucred *cred, struct vnode *vp, int attrnamespace, const char *name, struct uio *uio); -int mac_check_vnode_link(struct ucred *cred, struct vnode *dvp, +int mac_vnode_check_link(struct ucred *cred, struct vnode *dvp, struct vnode *vp, struct componentname *cnp); -int mac_check_vnode_listextattr(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_listextattr(struct ucred *cred, struct vnode *vp, int attrnamespace); -int mac_check_vnode_lookup(struct ucred *cred, struct vnode *dvp, +int mac_vnode_check_lookup(struct ucred *cred, struct vnode *dvp, struct componentname *cnp); -int mac_check_vnode_mmap(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_mmap(struct ucred *cred, struct vnode *vp, int prot, int flags); -int mac_check_vnode_mprotect(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_mprotect(struct ucred *cred, struct vnode *vp, int prot); -int mac_check_vnode_open(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_open(struct ucred *cred, struct vnode *vp, int acc_mode); -int mac_check_vnode_poll(struct ucred *active_cred, +int mac_vnode_check_poll(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp); -int mac_check_vnode_read(struct ucred *active_cred, +int mac_vnode_check_read(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp); -int mac_check_vnode_readdir(struct ucred *cred, struct vnode *vp); -int mac_check_vnode_readlink(struct ucred *cred, struct vnode *vp); -int mac_check_vnode_rename_from(struct ucred *cred, struct vnode *dvp, +int mac_vnode_check_readdir(struct ucred *cred, struct vnode *vp); +int mac_vnode_check_readlink(struct ucred *cred, struct vnode *vp); +int mac_vnode_check_rename_from(struct ucred *cred, struct vnode *dvp, struct vnode *vp, struct componentname *cnp); -int mac_check_vnode_rename_to(struct ucred *cred, struct vnode *dvp, +int mac_vnode_check_rename_to(struct ucred *cred, struct vnode *dvp, struct vnode *vp, int samedir, struct componentname *cnp); -int mac_check_vnode_revoke(struct ucred *cred, struct vnode *vp); -int mac_check_vnode_setacl(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_revoke(struct ucred *cred, struct vnode *vp); +int mac_vnode_check_setacl(struct ucred *cred, struct vnode *vp, acl_type_t type, struct acl *acl); -int mac_check_vnode_setextattr(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_setextattr(struct ucred *cred, struct vnode *vp, int attrnamespace, const char *name, struct uio *uio); -int mac_check_vnode_setflags(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_setflags(struct ucred *cred, struct vnode *vp, u_long flags); -int mac_check_vnode_setmode(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_setmode(struct ucred *cred, struct vnode *vp, mode_t mode); -int mac_check_vnode_setowner(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_setowner(struct ucred *cred, struct vnode *vp, uid_t uid, gid_t gid); -int mac_check_vnode_setutimes(struct ucred *cred, struct vnode *vp, +int mac_vnode_check_setutimes(struct ucred *cred, struct vnode *vp, struct timespec atime, struct timespec mtime); -int mac_check_vnode_stat(struct ucred *active_cred, +int mac_vnode_check_stat(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp); -int mac_check_vnode_write(struct ucred *active_cred, +int mac_vnode_check_write(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp); -int mac_getsockopt_label(struct ucred *cred, struct socket *so, - struct mac *extmac); -int mac_getsockopt_peerlabel(struct ucred *cred, struct socket *so, - struct mac *extmac); -int mac_setsockopt_label(struct ucred *cred, struct socket *so, - struct mac *extmac); /* * Calls to help various file systems implement labeling functionality From owner-p4-projects@FreeBSD.ORG Thu Jul 6 10:20:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C5D916A4E2; Thu, 6 Jul 2006 10:20:20 +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 1E41716A4DE for ; Thu, 6 Jul 2006 10:20:20 +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 AB7C643D46 for ; Thu, 6 Jul 2006 10:20:19 +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 k66AKJv3061691 for ; Thu, 6 Jul 2006 10:20:19 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 k66AKJFS061688 for perforce@freebsd.org; Thu, 6 Jul 2006 10:20:19 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 10:20:19 GMT Message-Id: <200607061020.k66AKJFS061688@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 100712 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 10:20:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=100712 Change 100712 by rwatson@rwatson_zoo on 2006/07/06 10:20:03 Simplify entry point naming for devfs. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#5 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#12 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#5 (text+ko) ==== @@ -96,8 +96,8 @@ void mac_bpfdesc_create_mbuf(struct bpf_d *bpf_d, struct mbuf *m); int mac_bpfdesc_check_receive(struct bpf_d *bpf_d, struct ifnet *ifnet); -void mac_devfsdirent_init(struct devfs_dirent *); -void mac_devfsdirent_destroy(struct devfs_dirent *); +void mac_devfs_init(struct devfs_dirent *); +void mac_devfs_destroy(struct devfs_dirent *); void mac_devfs_vnode_associate(struct mount *mp, struct devfs_dirent *de, struct vnode *vp); void mac_devfs_create_device(struct ucred *cred, struct mount *mp, @@ -106,7 +106,7 @@ int dirnamelen, struct devfs_dirent *de); void mac_devfs_create_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct devfs_dirent *de); -void mac_devfsdirent_update(struct mount *mp, struct devfs_dirent *de, +void mac_devfs_update(struct mount *mp, struct devfs_dirent *de, struct vnode *vp); void mac_cred_init(struct ucred *); ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#12 (text+ko) ==== @@ -145,8 +145,8 @@ /* * Object: struct devfsdirent (Devfs directory entry) */ -typedef void (*mpo_devfsdirent_init_label_t)(struct label *label); -typedef void (*mpo_devfsdirent_destroy_label_t)(struct label *label); +typedef void (*mpo_devfs_init_label_t)(struct label *label); +typedef void (*mpo_devfs_destroy_label_t)(struct label *label); typedef void (*mpo_devfs_vnode_associate_t)(struct mount *mp, struct label *fslabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, @@ -161,7 +161,7 @@ struct mount *mp, struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, struct label *delabel); -typedef void (*mpo_devfsdirent_update_t)(struct mount *mp, +typedef void (*mpo_devfs_update_t)(struct mount *mp, struct devfs_dirent *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel); @@ -675,13 +675,13 @@ * XXXRW: Naming consistency here -- perhaps should just be * mpo_devfs_*. */ - mpo_devfsdirent_init_label_t mpo_devfsdirent_init_label; - mpo_devfsdirent_destroy_label_t mpo_devfsdirent_destroy_label; + mpo_devfs_init_label_t mpo_devfs_init_label; + mpo_devfs_destroy_label_t mpo_devfs_destroy_label; mpo_devfs_vnode_associate_t mpo_devfs_vnode_associate; mpo_devfs_create_device_t mpo_devfs_create_device; mpo_devfs_create_directory_t mpo_devfs_create_directory; mpo_devfs_create_symlink_t mpo_devfs_create_symlink; - mpo_devfsdirent_update_t mpo_devfsdirent_update_t; + mpo_devfs_update_t mpo_devfs_update_t; /* * XXXRW: Perhaps should be mpo_ucred_*. From owner-p4-projects@FreeBSD.ORG Thu Jul 6 10:30:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 538E916A4DF; Thu, 6 Jul 2006 10:30:33 +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 104CF16A4DD for ; Thu, 6 Jul 2006 10:30:33 +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 B552443D46 for ; Thu, 6 Jul 2006 10:30:32 +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 k66AUWwv062282 for ; Thu, 6 Jul 2006 10:30:32 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 k66AUWU6062277 for perforce@freebsd.org; Thu, 6 Jul 2006 10:30:32 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 10:30:32 GMT Message-Id: <200607061030.k66AUWU6062277@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 100713 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 10:30:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=100713 Change 100713 by rwatson@rwatson_zoo on 2006/07/06 10:29:53 More renaming and cleanup: - inpcb's are always created from sockets, so decomplicate name. - Move some mbuf operations to being netinet operations; rename. - Simplify ipq names. - Simplify sysv* names. - Remove mount_fs label since it's unused in practice. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#6 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#13 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#6 (text+ko) ==== @@ -131,7 +131,7 @@ int mac_inpcb_init(struct inpcb *, int flag); void mac_inpcb_destroy_inpcb(struct inpcb *); -void mac_inpcb_create_from_socket(struct socket *so, struct inpcb *inp); +void mac_inpcb_create(struct socket *so, struct inpcb *inp); void mac_inpcb_create_mbuf(struct inpcb *inp, struct mbuf *m); void mac_inpcb_sosetlabel(struct socket *so, struct inpcb *inp); int mac_inpcb_check_inpcb_deliver(struct inpcb *inp, struct mbuf *m); @@ -139,8 +139,8 @@ int mac_ipq_init(struct ipq *, int flag); void mac_ipq_destroy(struct ipq *); void mac_ipq_create(struct mbuf *fragment, struct ipq *ipq); -void mac_ipq_create_datagram(struct ipq *ipq, struct mbuf *datagram); -int mac_ipq_fragment_match(struct mbuf *fragment, struct ipq *ipq); +void mac_ipq_reassemble(struct ipq *ipq, struct mbuf *datagram); +int mac_ipq_match(struct mbuf *fragment, struct ipq *ipq); void mac_ipq_update(struct mbuf *fragment, struct ipq *ipq); int mac_kenv_check_dump(struct ucred *cred); @@ -167,16 +167,17 @@ void mac_mbuf_copy(struct mbuf *m_from, struct mbuf *m_to); void mac_mbuf_tag_copy(struct m_tag *, struct m_tag *); void mac_mbuf_tag_destroy(struct m_tag *); -void mac_mbuf_create_fragment(struct mbuf *datagram, struct mbuf *fragment); void mac_mbuf_create_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf); -void mac_mbuf_reflect_icmp(struct mbuf *m); -void mac_mbuf_reflect_tcp(struct mbuf *m); void mac_mount_init(struct mount *); void mac_mount_destroy(struct mount *); void mac_mount_create(struct ucred *cred, struct mount *mp); int mac_mount_check_stat(struct ucred *cred, struct mount *mp); +void mac_netinet_fragment(struct mbuf *datagram, struct mbuf *fragment); +void mac_netinet_icmp_reply(struct mbuf *m); +void mac_netinet_tcp_reply(struct mbuf *m); + void mac_pipe_init(struct pipepair *); void mac_pipe_destroy(struct pipepair *); void mac_pipe_create(struct ucred *cred, struct pipepair *pp); @@ -261,40 +262,41 @@ int mac_socket_setsockopt_label(struct ucred *cred, struct socket *so, struct mac *extmac); -void mac_init_sysv_msgqueue(struct msqid_kernel*); -void mac_destroy_sysv_msgqueue(struct msqid_kernel *); -void mac_cleanup_sysv_msgmsg(struct msg *msgptr); -void mac_cleanup_sysv_msgqueue(struct msqid_kernel *msqkptr); -void mac_create_sysv_msgmsg(struct ucred *cred, +void mac_sysv_msq_init(struct msqid_kernel*); +void mac_sysv_msq_destroy(struct msqid_kernel *); +void mac_sysv_msq_cleanup(struct msqid_kernel *msqkptr); +void mac_sysv_msq_create_msg(struct ucred *cred, struct msqid_kernel *msqkptr, struct msg *msgptr); -void mac_create_sysv_msgqueue(struct ucred *cred, +void mac_sysv_msq_create(struct ucred *cred, struct msqid_kernel *msqkptr); -void mac_init_sysv_msgmsg(struct msg *); -void mac_destroy_sysv_msgmsg(struct msg *); -int mac_check_sysv_msgmsq(struct ucred *cred, struct msg *msgptr, +int mac_sysv_msq_check_msgmsq(struct ucred *cred, struct msg *msgptr, struct msqid_kernel *msqkptr); -int mac_check_sysv_msgrcv(struct ucred *cred, struct msg *msgptr); -int mac_check_sysv_msgrmid(struct ucred *cred, struct msg *msgptr); -int mac_check_sysv_msqget(struct ucred *cred, +int mac_sysv_msq_check_msgrcv(struct ucred *cred, struct msg *msgptr); +int mac_sysv_msq_check_msgrmid(struct ucred *cred, struct msg *msgptr); +int mac_sysv_msq_check_msqget(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_check_sysv_msqsnd(struct ucred *cred, +int mac_sysv_msq_check_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_check_sysv_msqrcv(struct ucred *cred, +int mac_sysv_msq_check_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_check_sysv_msqctl(struct ucred *cred, +int mac_sysv_msq_check_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, int cmd); -void mac_init_sysv_sem(struct semid_kernel*); -void mac_destroy_sysv_sem(struct semid_kernel *); -void mac_create_sysv_sem(struct ucred *cred, +void mac_sysv_msg_init(struct msg *); +void mac_sysv_msg_destroy(struct msg *); +void mac_sysv_msg_cleanup(struct msg *msgptr); + +void mac_sysv_sem_init(struct semid_kernel*); +void mac_sysv_sem_destroy(struct semid_kernel *); +void mac_sysv_sem_create(struct ucred *cred, struct semid_kernel *semakptr); -void mac_cleanup_sysv_sem(struct semid_kernel *semakptr); -int mac_check_sysv_semctl(struct ucred *cred, +void mac_sysv_sem_cleanup_sysv_sem(struct semid_kernel *semakptr); +int mac_sysv_sem_check_semctl(struct ucred *cred, struct semid_kernel *semakptr, int cmd); -int mac_check_sysv_semget(struct ucred *cred, +int mac_sysv_sem_check_semget(struct ucred *cred, struct semid_kernel *semakptr); -int mac_check_sysv_semop(struct ucred *cred,struct semid_kernel *semakptr, - size_t accesstype); +int mac_sysv_sem_check_semop(struct ucred *cred, + struct semid_kernel *semakptr, size_t accesstype); void mac_sysv_shm_init(struct shmid_kernel*); void mac_sysv_shm_destroy(struct shmid_kernel *); ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#13 (text+ko) ==== @@ -671,10 +671,6 @@ mpo_bpfdesc_create_mbuf_t mpo_bpfdesc_create_mbuf; mpo_bpfdesc_check_receive_t mpo_bpfdesc_check_receive; - /* - * XXXRW: Naming consistency here -- perhaps should just be - * mpo_devfs_*. - */ mpo_devfs_init_label_t mpo_devfs_init_label; mpo_devfs_destroy_label_t mpo_devfs_destroy_label; mpo_devfs_vnode_associate_t mpo_devfs_vnode_associate; @@ -718,15 +714,11 @@ mpo_inpcb_sosetlabel_t mpo_inpcb_sosetlabel; mpo_inpcb_check_deliver_t mpo_inpcb_check_deliver; - /* - * XXXRW: Maybe s/create_datagram/reassemble/, - * s/fragment_match/match/. - */ mpo_ipq_init_label_t mpo_ipq_init_label; mpo_ipq_destroy_label_t mpo_ipq_destroy_label; mpo_ipq_create_t mpo_ipq_create; - mpo_ipq_create_datagram_t mpo_ipq_create_datagram; - mpo_ipq_fragment_match_t mpo_ipq_fragment_match; + mpo_ipq_reassemble_t mpo_ipq_reassemble; + mpo_ipq_match_t mpo_ipq_match; mpo_ipq_update_t mpo_ipq_update; mpo_kenv_check_dump_t mpo_kenv_check_dump; @@ -754,30 +746,22 @@ mpo_posix_sem_check_wait_t mpo_posix_sem_check_wait; /* - * XXXRW: Perhaps fragment, netlayer, icmp, tcp, etc, should be - * netinet calls rather than mbuf calls? + * XXXRW: netlayer call is too generic. */ mpo_mbuf_init_label_t mpo_mbuf_init_label; mpo_mbuf_destroy_label_t mpo_mbuf_destroy_label; mpo_mbuf_copy_label_t mpo_mbuf_copy_label; - mpo_mbuf_create_fragment_t mpo_mbuf_create_fragment; mpo_mbuf_create_netlayer_t mpo_mbuf_create_netlayer; - mpo_mbuf_reflect_icmp_t mpo_mbuf_reflect_icmp; - mpo_mbuf_reflect_tcp_t mpo_mbuf_reflect_tcp; - /* - * XXXRW: Time to toast mount_fs label since it basically is unused? - */ mpo_mount_init_label_t mpo_mount_init_label; - mpo_mount_fs_init_label_t mpo_mount_fs_init_label; mpo_mount_destroy_label_t mpo_mount_destroy_label; - mpo_mount_fs_destroy_label_t mpo_mount_fs_destroy_label; mpo_mount_check_stat_t mpo_mount_check_stat; mpo_mount_create_t mpo_mount_create; - /* - * XXXRW: Technically, structure name here is pipepair, not pipe. - */ + mpo_netinet_fragment_t mpo_netinet_fragment; + mpo_netinet_icmp_reply_t mpo_netinet_icmp_reply; + mpo_netinet_tcp_reply_t mpo_netinet_tcp_reply; + mpo_pipe_init_label_t mpo_pipe_init_label; mpo_pipe_destroy_label_t mpo_pipe_destroy_label; mpo_pipe_copy_label_t mpo_pipe_copy_label; @@ -815,18 +799,18 @@ * XXXRW: These names are a bit awkard. Perhaps sysv_msq to match * conventional usage? */ - mpo_sysv_msgqueue_init_label_t mpo_sysv_msgqueue_init_label; - mpo_sysv_msgqueue_destroy_t mpo_sysv_msgqueue_destroy; - mpo_sysv_msgqueue_cleanup_t mpo_sysv_msgqueue_cleanup; - mpo_sysv_msgqueue_create_msg_t mpo_sysv_msgqueue_create_msg; - mpo_sysv_msgqueue_create_t mpo_sysv_msgqueue_create; - mpo_sysv_msgqueue_check_msgmsq_t mpo_sysv_msgqueue_check_msgmsq; - mpo_sysv_msgqueue_check_msgrcv_t mpo_sysv_msgqueue_check_msgrcv; - mpo_sysv_msgqueue_check_msgrmid_t mpo_sysv_msgqueue_check_msgrmid; - mpo_sysv_msgqueue_check_msqget_t mpo_sysv_msgqueue_check_msqget; - mpo_sysv_msgqueue_check_msqsnd_t mpo_sysv_msgqueue_check_msqsnd; - mpo_sysv_msgqueue_check_msqrcv_t mpo_sysv_msgqueue_check_msqrcv; - mpo_sysv_msgqueue_check_msqctl_t mpo_sysv_msgqueue_check_msqctl; + mpo_sysv_msq_init_label_t mpo_sysv_msq_init_label; + mpo_sysv_msq_destroy_t mpo_sysv_msq_destroy; + mpo_sysv_msq_cleanup_t mpo_sysv_msq_cleanup; + mpo_sysv_msq_create_msg_t mpo_sysv_msq_create_msg; + mpo_sysv_msq_create_t mpo_sysv_msq_create; + mpo_sysv_msq_check_msgmsq_t mpo_sysv_msq_check_msgmsq; + mpo_sysv_msq_check_msgrcv_t mpo_sysv_msq_check_msgrcv; + mpo_sysv_msq_check_msgrmid_t mpo_sysv_msq_check_msgrmid; + mpo_sysv_msq_check_msqget_t mpo_sysv_msq_check_msqget; + mpo_sysv_msq_check_msqsnd_t mpo_sysv_msq_check_msqsnd; + mpo_sysv_msq_check_msqrcv_t mpo_sysv_msq_check_msqrcv; + mpo_sysv_msq_check_msqctl_t mpo_sysv_msq_check_msqctl; mpo_sysv_msg_init_label_t mpo_sysv_msg_init_label; mpo_sysv_msg_destroy_label_t mpo_sysv_msg_destroy_label; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 10:33:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B0B1516A4E1; Thu, 6 Jul 2006 10:33:37 +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 8B53D16A4DA for ; Thu, 6 Jul 2006 10:33:37 +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 4899443D45 for ; Thu, 6 Jul 2006 10:33:37 +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 k66AXb3f062537 for ; Thu, 6 Jul 2006 10:33:37 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 k66AXart062534 for perforce@freebsd.org; Thu, 6 Jul 2006 10:33:36 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 10:33:36 GMT Message-Id: <200607061033.k66AXart062534@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 100714 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 10:33:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=100714 Change 100714 by rwatson@rwatson_zoo on 2006/07/06 10:33:28 Update to reflect name changes. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#14 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#14 (text+ko) ==== @@ -243,10 +243,10 @@ typedef void (*mpo_ipq_create_t)(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel); -typedef void (*mpo_ipq_create_datagram_t) +typedef void (*mpo_ipq_reassemble_t) (struct ipq *ipq, struct label *ipqlabel, struct mbuf *datagram, struct label *datagramlabel); -typedef int (*mpo_ipq_fragment_match_t)(struct mbuf *fragment, +typedef int (*mpo_ipq_match_t)(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel); typedef void (*mpo_ipq_update_t)(struct mbuf *fragment, @@ -297,16 +297,9 @@ typedef void (*mpo_mbuf_destroy_label_t)(struct label *label); typedef void (*mpo_mbuf_copy_label_t)(struct label *src, struct label *dest); -typedef void (*mpo_mbuf_create_fragment_t)(struct mbuf *datagram, - struct label *datagramlabel, struct mbuf *fragment, - struct label *fragmentlabel); typedef void (*mpo_mbuf_create_netlayer_t)(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct mbuf *newmbuf, struct label *newmbuflabel); -typedef void (*mpo_mbuf_reflect_icmp_t)(struct mbuf *m, - struct label *mlabel); -typedef void (*mpo_mbuf_reflect_tcp_t)(struct mbuf *m, - struct label *mlabel); /* * Object: struct mount (File system mountpoint) @@ -322,6 +315,17 @@ struct label *fslabel); /* + * IPv4 networking. + */ +typedef void (*mpo_netinet_fragment_t)(struct mbuf *datagram, + struct label *datagramlabel, struct mbuf *fragment, + struct label *fragmentlabel); +typedef void (*mpo_netinet_icmp_reply_t)(struct mbuf *m, + struct label *mlabel); +typedef void (*mpo_netinet_tcp_reply_t)(struct mbuf *m, + struct label *mlabel); + +/* * Object: struct pipepair (Pipe) */ typedef void (*mpo_pipe_init_label_t)(struct label *label); @@ -386,29 +390,28 @@ /* * Object: struct msqid_kernel (System V message queue) */ -typedef void (*mpo_sysv_msgqueue_init_label_t)(struct label *label); -typedef void (*mpo_sysv_msgqueue_destroy_t)(struct label *label); -typedef void (*mpo_sysv_msgqueue_cleanup_t)(struct label *msqlabel); -typedef void (*mpo_sysv_msgqueue_create_msg_t)(struct ucred *cred, +typedef void (*mpo_sysv_msq_init_label_t)(struct label *label); +typedef void (*mpo_sysv_msq_destroy_t)(struct label *label); +typedef void (*mpo_sysv_msq_cleanup_t)(struct label *msqlabel); +typedef void (*mpo_sysv_msq_create_msg_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel, struct msg *msgptr, struct label *msglabel); -typedef void (*mpo_sysv_msgqueue_create_t)(struct ucred *cred, +typedef void (*mpo_sysv_msq_create_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel); - -typedef int (*mpo_sysv_msgqueue_check_msgmsq_t)(struct ucred *cred, +typedef int (*mpo_sysv_msq_check_msgmsq_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msgqueue_check_msgrcv_t)(struct ucred *cred, +typedef int (*mpo_sysv_msq_check_msgrcv_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel); -typedef int (*mpo_sysv_msgqueue_check_msgrmid_t)(struct ucred *cred, +typedef int (*mpo_sysv_msq_check_msgrmid_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel); -typedef int (*mpo_sysv_msgqueue_check_msqget_t)(struct ucred *cred, +typedef int (*mpo_sysv_msq_check_msqget_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msgqueue_check_msqsnd_t)(struct ucred *cred, +typedef int (*mpo_sysv_msq_check_msqsnd_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msgqueue_check_msqrcv_t)(struct ucred *cred, +typedef int (*mpo_sysv_msq_check_msqrcv_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msgqueue_check_msqctl_t)(struct ucred *cred, +typedef int (*mpo_sysv_msq_check_msqctl_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel, int cmd); /* From owner-p4-projects@FreeBSD.ORG Thu Jul 6 10:45:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 973D316A4E0; Thu, 6 Jul 2006 10:45:54 +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 3FFFF16A4DE for ; Thu, 6 Jul 2006 10:45:54 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 00CEC43D45 for ; Thu, 6 Jul 2006 10:45:54 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66AjrEh063126 for ; Thu, 6 Jul 2006 10:45:53 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66AjrQv063123 for perforce@freebsd.org; Thu, 6 Jul 2006 10:45:53 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 10:45:53 GMT Message-Id: <200607061045.k66AjrQv063123@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100716 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 10:45:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=100716 Change 100716 by piso@piso_newluxor on 2006/07/06 10:45:40 Queue(3)-ify handler_chain: now it's just a matter of style(9)-ify the rest and cleanup. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#12 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#12 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#12 (text+ko) ==== @@ -60,11 +60,10 @@ #include /* protocol and userland module handlers chains */ -struct chain handler_chain; +LIST_HEAD(handler_chain, proto_handler) handler_chain = LIST_HEAD_INITIALIZER(foo); #ifdef _KERNEL struct rwlock handler_rw; #endif - SLIST_HEAD(dll_chain, dll) dll_chain = SLIST_HEAD_INITIALIZER(foo); #ifdef _KERNEL @@ -166,37 +165,36 @@ } static int -_attach_handler(struct chain *c, struct proto_handler *p) { - struct proto_handler **b; - int i = 0; +_attach_handler(struct proto_handler *p) { + struct proto_handler *b; LIBALIAS_WLOCK_ASSERT(); - b = (struct proto_handler **)&c->chain; - p->next = NULL; /* i'm paranoid... */ - for(; *b != NULL; b = &((*b)->next), i++) { - if (((*b)->pri == p->pri) && ((*b)->dir == p->dir) && - ((*b)->proto == p->proto)) + LIST_FOREACH(b, &handler_chain, entries) { + if ((b->pri == p->pri) && (b->dir == p->dir) && + (b->proto == p->proto)) return (EHDCON); /* priority conflict */ - if ((*b)->pri > p->pri) { - p->next = *b; break; + if (b->pri > p->pri) { + LIST_INSERT_BEFORE(b, p, entries); + return (OK); } } /* end of list or got right position, insert here */ - *b = p; + LIST_INSERT_AFTER(b, p, entries); return (OK); } static int -_detach_handler(struct chain *c, struct proto_handler *p) { - struct proto_handler **b; +_detach_handler(struct proto_handler *p) { + struct proto_handler *b, *b_tmp;; LIBALIAS_WLOCK_ASSERT(); - b = (struct proto_handler **)&c->chain; - for(; (*b != NULL) && (*b != p); b = &((*b)->next)) - ; - if (*b == p) *b = p->next; - else return (EHDNOF); /* handler not found */ - return (OK); + LIST_FOREACH_SAFE(b, &handler_chain, entries, b_tmp) { + if (b == p) { + LIST_REMOVE(b, entries); + return (OK); + } + } + return (EHDNOF); /* handler not found */ } int @@ -206,7 +204,7 @@ LIBALIAS_WLOCK(); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; - res = _attach_handler(&handler_chain, &_p[i]); + res = _attach_handler(&_p[i]); if (res != OK) break; } LIBALIAS_WUNLOCK(); @@ -220,7 +218,7 @@ LIBALIAS_WLOCK(); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; - res = _detach_handler(&handler_chain, &_p[i]); + res = _detach_handler(&_p[i]); if (res != OK) break; } LIBALIAS_WUNLOCK(); @@ -232,7 +230,7 @@ int res = NOK; LIBALIAS_WLOCK(); - res = _detach_handler(&handler_chain, _p); + res = _detach_handler(_p); LIBALIAS_WUNLOCK(); return (res); } @@ -240,15 +238,17 @@ int find_handler(int8_t dir, int8_t proto, struct libalias *la, struct ip *pip, struct alias_data *ad) { struct proto_handler *p; - int err; + int err = EHDNOF; LIBALIAS_RLOCK(); - for (p = handler_chain.chain, err = EHDNOF; p != NULL; p = p->next) + + LIST_FOREACH(p, &handler_chain, entries) { if ((p->dir & dir) && (p->proto & proto)) if (p->fingerprint(la, pip, ad) == OK) { err = p->protohandler(la, pip, ad); break; } + } LIBALIAS_RUNLOCK(); return (err); } @@ -256,7 +256,7 @@ struct proto_handler * first_handler(void) { - return (handler_chain.chain); + return (LIST_FIRST(&handler_chain)); } /* dll manipulation code - this code is not thread safe... */ ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#12 (text+ko) ==== @@ -72,15 +72,10 @@ struct ip *pip, struct alias_data *ah); int (*protohandler)(struct libalias *la, /* Aliasing * function. */ struct ip *pip, struct alias_data *ah); - struct proto_handler *next; + LIST_ENTRY(proto_handler) entries; }; -// XXX - convert it to use queue(3) -struct chain { - void *chain; -}; - /* * Used only in userland when libalias needs to keep track of all * module loaded. In kernel land (kld mode) we don't need to care From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:02:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 70C5916A4E0; Thu, 6 Jul 2006 11:02:15 +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 4223016A4DE for ; Thu, 6 Jul 2006 11:02:15 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E664843D45 for ; Thu, 6 Jul 2006 11:02:14 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66B2EaF063884 for ; Thu, 6 Jul 2006 11:02:14 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66B2EfU063881 for perforce@freebsd.org; Thu, 6 Jul 2006 11:02:14 GMT (envelope-from rdivacky@FreeBSD.org) Date: Thu, 6 Jul 2006 11:02:14 GMT Message-Id: <200607061102.k66B2EfU063881@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100717 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:02:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=100717 Change 100717 by rdivacky@rdivacky_witten on 2006/07/06 11:01:59 BSDL version of the segment translation macros. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#5 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#5 (text+ko) ==== @@ -718,4 +718,55 @@ l_uint useable:1; }; +#define LINUX_LOWERWORD 0x0000ffff + +/* macros which does the same thing as those in linux include/asm-um/ldt-i386.h + * these convert linux user-space descriptor to machine one + */ +#define LDT_entry_a(info) \ + ((((info)->base_addr & LINUX_LOWERWORD) << 16) | ((info)->limit & LINUX_LOWERWORD)) + +#define ENTRY_B_READ_EXEC_ONLY 9 +#define ENTRY_B_CONTENTS 10 +#define ENTRY_B_SEG_NOT_PRESENT 15 +#define ENTRY_B_BASE_ADDR 16 +#define ENTRY_B_USEABLE 20 +#define ENTRY_B_SEG32BIT 22 +#define ENTRY_B_LIMIT 23 + +#define LDT_entry_b(info) \ + (((info)->base_addr & 0xff000000) | \ + ((info)->limit & 0xf0000) | \ + ((info)->contents << ENTRY_B_CONTENTS) | \ + (((info)->seg_not_present == 0) << ENTRY_B_SEG_NOT_PRESENT) | \ + (((info)->base_addr & 0x00ff0000) >> ENTRY_B_BASE_ADDR) | \ + (((info)->read_exec_only == 0) << ENTRY_B_READ_EXEC_ONLY) | \ + ((info)->seg_32bit << ENTRY_B_SEG32BIT) | \ + ((info)->useable << ENTRY_B_USEABLE) | \ + ((info)->limit_in_pages << ENTRY_B_LIMIT) | 0x7000) + +#define LDT_empty(info) (\ + (info)->base_addr == 0 && \ + (info)->limit == 0 && \ + (info)->contents == 0 && \ + (info)->seg_not_present == 1 && \ + (info)->read_exec_only == 1 && \ + (info)->seg_32bit == 0 && \ + (info)->limit_in_pages == 0 && \ + (info)->useable == 0 ) + +/* modeled after similar structure in NetBSD + * this will be extended as we need more functionality + */ +struct linux_emuldata { + pid_t pid; + + int *child_set_tid; /* in clone(): Child's TID to set on clone */ + int *child_clear_tid; /* in clone(): Child's TID to clear on exit */ + int *set_tid; /* in clone(): Own TID to set on clone */ + int *clear_tid; /* Own TID to clear on exit */ + + SLIST_ENTRY(linux_emuldata) emuldatas; +}; + #endif /* !_I386_LINUX_LINUX_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:03:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 29BC716A4DF; Thu, 6 Jul 2006 11:03:17 +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 0293B16A4DA for ; Thu, 6 Jul 2006 11:03:17 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AD13843D46 for ; Thu, 6 Jul 2006 11:03:16 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66B3G5U065167 for ; Thu, 6 Jul 2006 11:03:16 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66B3Gj5065164 for perforce@freebsd.org; Thu, 6 Jul 2006 11:03:16 GMT (envelope-from rdivacky@FreeBSD.org) Date: Thu, 6 Jul 2006 11:03:16 GMT Message-Id: <200607061103.k66B3Gj5065164@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100718 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:03:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=100718 Change 100718 by rdivacky@rdivacky_witten on 2006/07/06 11:03:01 Forced commit. The last commit included also linux_emuldata struct definition. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#6 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#6 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:05:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7883916A4E1; Thu, 6 Jul 2006 11:05:20 +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 5267916A4DA for ; Thu, 6 Jul 2006 11:05:20 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EE01043D4C for ; Thu, 6 Jul 2006 11:05:19 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66B5JiJ065289 for ; Thu, 6 Jul 2006 11:05:19 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66B5JKG065286 for perforce@freebsd.org; Thu, 6 Jul 2006 11:05:19 GMT (envelope-from rdivacky@FreeBSD.org) Date: Thu, 6 Jul 2006 11:05:19 GMT Message-Id: <200607061105.k66B5JKG065286@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100719 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:05:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=100719 Change 100719 by rdivacky@rdivacky_witten on 2006/07/06 11:04:26 TID handling o introduction of P_LINUX proc flag o introduction of linux hooks into exit1() and userret() o TID handling in i386 version of linuxolator this has not been tested much. More testing will come once the futexes are finished. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_dummy.c#5 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#7 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#8 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#8 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#8 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#5 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#8 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exit.c#3 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_trap.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/sys/proc.h#2 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_dummy.c#5 (text+ko) ==== @@ -73,7 +73,6 @@ DUMMY(epoll_ctl); DUMMY(epoll_wait); DUMMY(remap_file_pages); -DUMMY(set_tid_address); DUMMY(timer_create); DUMMY(timer_settime); DUMMY(timer_gettime); ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#7 (text+ko) ==== @@ -37,6 +37,7 @@ #include #include #include +#include #include #include #include @@ -61,6 +62,14 @@ #include /* needed for pcb definition in linux_set_thread_area */ +SLIST_HEAD(emuldata_head, linux_emuldata) emuldata_head = + SLIST_HEAD_INITIALIZER(emuldata_head); +struct linux_emuldata *emuldata_headp; /* where we store the emulation data */ + +static int linux_proc_init(struct thread *, pid_t); +int linux_proc_exit(struct thread *); +int linux_userret(struct thread *); + struct l_descriptor { l_uint entry_number; l_ulong base_addr; @@ -124,6 +133,8 @@ free(newpath, M_TEMP); if (error == 0) error = kern_execve(td, &eargs, NULL); + if (error == 0) + error = linux_proc_init(td, 0); return (error); } @@ -278,6 +289,9 @@ linux_fork(struct thread *td, struct linux_fork_args *args) { int error; +#if 0 + struct linux_emuldata *em; +#endif #ifdef DEBUG if (ldebug(fork)) @@ -289,6 +303,16 @@ if (td->td_retval[1] == 1) td->td_retval[0] = 0; + error = linux_proc_init(td, td->td_retval[0]); + if (error) + return (error); + +#if 0 + /* impossible to not find it */ + SLIST_FOREACH(em, &emuldata_head, emuldatas) + if (em->pid == td->td_retval[0]) + break; +#endif return (0); } @@ -307,6 +331,9 @@ /* Are we the child? */ if (td->td_retval[1] == 1) td->td_retval[0] = 0; + error = linux_proc_init(td, td->td_retval[0]); + if (error) + return (error); return (0); } @@ -316,6 +343,9 @@ #define CLONE_SIGHAND 0x800 #define CLONE_PID 0x1000 #define CLONE_THREAD 0x10000 +#define CLONE_CHILD_CLEARTID 0x00200000 +#define CLONE_CHILD_SETTID 0x01000000 +#define CLONE_PARENT_SETTID 0x00100000 #define THREADING_FLAGS (CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND) @@ -326,11 +356,14 @@ struct proc *p2; struct thread *td2; int exit_signal; + struct linux_emuldata *em; #ifdef DEBUG if (ldebug(clone)) { - printf(ARGS(clone, "flags %x, stack %x"), - (unsigned int)args->flags, (unsigned int)args->stack); + printf(ARGS(clone, "flags %x, stack %x, parent tid: %x, + child tid: %x"), + (unsigned int)args->flags, (unsigned int)args->stack, + (unsigned int) args->parent_tidptr, (unsigned int)args->child_tidptr); if (args->flags & CLONE_PID) printf(LMSG("CLONE_PID not yet supported")); } @@ -350,6 +383,7 @@ if (!(args->flags & CLONE_FILES)) ff |= RFFDG; + /* * Attempt to detect when linux_clone(2) is used for creating * kernel threads. Unfortunately despite the existence of the @@ -370,6 +404,29 @@ if (error) return (error); + /* create the emuldata */ + linux_proc_init(td, td->td_retval[0]); + SLIST_FOREACH(em, &emuldata_head, emuldatas) + if (em->pid == td->td_retval[0]) + break; + /* and adjust it */ + if (args->flags & CLONE_PARENT_SETTID) { + if (args->parent_tidptr == NULL) + return (EINVAL); + error = copyout(&td->td_proc->p_pid, args->parent_tidptr, sizeof(td->td_proc->p_pid)); + if (error) + return (error); + } + + if (args->flags & CLONE_CHILD_CLEARTID) + em->child_clear_tid = args->child_tidptr; + else + em->child_clear_tid = NULL; + + if (args->flags & CLONE_CHILD_SETTID) + em->child_set_tid = args->child_tidptr; + else + em->child_set_tid = NULL; PROC_LOCK(p2); p2->p_sigparent = exit_signal; @@ -961,3 +1018,110 @@ return (linux_kill(td, (struct linux_kill_args *) args)); } +static int +linux_proc_init(struct thread *td, pid_t child) +{ + struct linux_emuldata *em, *p_em; + int found = 0; + + /* XXX: locking? */ + MALLOC(em, struct linux_emuldata *, sizeof *em, M_LINUX, M_WAITOK | M_ZERO); + + /* exec call */ + if (child != 0) + em->pid = child; + em->child_clear_tid = NULL; + em->child_set_tid = NULL; + + /* SLIST is inefficient - use hash instead */ + /* find the emuldata for the parent process */ + SLIST_FOREACH(p_em, &emuldata_head, emuldatas) + if (p_em->pid == td->td_proc->p_pid) { + found = 1; + break; + } + + if (found) { + em->clear_tid = p_em->clear_tid; + em->set_tid = p_em->set_tid; + } + + /* we have to free the old emuldata */ + if (child == 0) { + found = 0; + /* lookup the old one */ + SLIST_FOREACH(p_em, &emuldata_head, emuldatas) + if (em->pid == td->td_proc->p_pid) { + found = 1; + break; + } + if (found) + FREE(em, M_LINUX); + } + + SLIST_INSERT_HEAD(&emuldata_head, em, emuldatas); + + /* XXX: sched_lock locking? */ + + return (0); +} + +int +linux_proc_exit(struct thread *td) +{ + struct linux_emuldata *em; + int error; + + /* find the emuldata */ + SLIST_FOREACH(em, &emuldata_head, emuldatas) + if (em->pid == td->td_proc->p_pid) + break; + + if (em->clear_tid != NULL) { + int null = 0; + + error = copyout(&null, em->clear_tid, sizeof(null)); + if (error) + return (error); + + /* TODO: futexes stuff */ + } + + /* clean the stuff up */ + FREE(em, M_LINUX); + + return (0); +} + +int +linux_userret(struct thread *td) +{ + struct linux_emuldata *em; + int error = 0; + + /* find the emuldata */ + SLIST_FOREACH(em, &emuldata_head, emuldatas) + if (em->pid == td->td_proc->p_pid) + break; + + if (em->set_tid != NULL) + error = copyout(&td->td_proc->p_pid, em->set_tid, sizeof(td->td_proc->p_pid)); + + return (error); +} + +int +linux_set_tid_address(struct thread *td, struct linux_set_tid_address_args *args) +{ + struct linux_emuldata *em; + + /* find the emuldata */ + SLIST_FOREACH(em, &emuldata_head, emuldatas) + if (em->pid == td->td_proc->p_pid) + break; + + em->clear_tid = args->tidptr; + td->td_retval[0] = td->td_proc->p_pid; + + return 0; +} ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#8 (text+ko) ==== @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_proto.h,v 1.72 2006/06/26 18:37:36 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.69 2006/06/26 18:36:16 jhb Exp */ @@ -374,6 +374,8 @@ struct linux_clone_args { char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)]; char stack_l_[PADL_(void *)]; void * stack; char stack_r_[PADR_(void *)]; + char parent_tidptr_l_[PADL_(void *)]; void * parent_tidptr; char parent_tidptr_r_[PADR_(void *)]; + char child_tidptr_l_[PADL_(void *)]; void * child_tidptr; char child_tidptr_r_[PADR_(void *)]; }; struct linux_newuname_args { char buf_l_[PADL_(struct l_new_utsname *)]; struct l_new_utsname * buf; char buf_r_[PADR_(struct l_new_utsname *)]; @@ -724,7 +726,7 @@ register_t dummy; }; struct linux_set_tid_address_args { - register_t dummy; + char tidptr_l_[PADL_(int *)]; int * tidptr; char tidptr_r_[PADR_(int *)]; }; struct linux_timer_create_args { register_t dummy; ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#8 (text+ko) ==== @@ -2,7 +2,7 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_syscall.h,v 1.66 2006/06/26 18:37:36 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.69 2006/06/26 18:36:16 jhb Exp */ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#8 (text+ko) ==== @@ -2,7 +2,7 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_sysent.c,v 1.73 2006/06/26 18:37:36 jhb Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.69 2006/06/26 18:36:16 jhb Exp */ @@ -277,7 +277,7 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_ctl, AUE_NULL }, /* 255 = linux_epoll_ctl */ { SYF_MPSAFE | 0, (sy_call_t *)linux_epoll_wait, AUE_NULL }, /* 256 = linux_epoll_wait */ { SYF_MPSAFE | 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL }, /* 257 = linux_remap_file_pages */ - { SYF_MPSAFE | 0, (sy_call_t *)linux_set_tid_address, AUE_NULL }, /* 258 = linux_set_tid_address */ + { SYF_MPSAFE | AS(linux_set_tid_address_args), (sy_call_t *)linux_set_tid_address, AUE_NULL }, /* 258 = linux_set_tid_address */ { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_create, AUE_NULL }, /* 259 = linux_timer_create */ { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_settime, AUE_NULL }, /* 260 = linux_timer_settime */ { SYF_MPSAFE | 0, (sy_call_t *)linux_timer_gettime, AUE_NULL }, /* 261 = linux_timer_gettime */ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#5 (text+ko) ==== @@ -91,6 +91,7 @@ extern int linux_szsigcode; extern struct sysent linux_sysent[LINUX_SYS_MAXSYSCALL]; +extern SLIST_HEAD(emuldata_head, linux_emuldata) emuldata_head; SET_DECLARE(linux_ioctl_handler_set, struct linux_ioctl_handler); SET_DECLARE(linux_device_handler_set, struct linux_device_handler); @@ -105,6 +106,12 @@ static void exec_linux_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings); +extern int (*linux_proc_exit_p)(struct thread *); +extern int (*linux_userret_p)(struct thread *); + +extern int linux_userret(struct thread *); +extern int linux_proc_exit(struct thread *); + /* * Linux syscalls return negative errno's, we do positive and map them */ @@ -907,6 +914,9 @@ printf("Linux ELF exec handler installed\n"); } else printf("cannot insert Linux ELF brand handler\n"); + SLIST_INIT(&emuldata_head); + linux_proc_exit_p = linux_proc_exit; + linux_userret_p = linux_userret; break; case MOD_UNLOAD: for (brandinfo = &linux_brandlist[0]; *brandinfo != NULL; @@ -928,6 +938,8 @@ printf("Linux ELF exec handler removed\n"); } else printf("Could not deinstall ELF interpreter entry\n"); + linux_proc_exit_p = NULL; + linux_userret_p = NULL; break; default: return EOPNOTSUPP; ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#8 (text+ko) ==== @@ -219,7 +219,8 @@ 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } 119 AUE_SIGRETURN MSTD { int linux_sigreturn( \ struct l_sigframe *sfp); } -120 AUE_RFORK MSTD { int linux_clone(l_int flags, void *stack); } +120 AUE_RFORK MSTD { int linux_clone(l_int flags, void *stack, \ + void *parent_tidptr, void * child_tidptr); } 121 AUE_SYSCTL MNOPROTO { int setdomainname(char *name, \ int len); } 122 AUE_NULL MSTD { int linux_newuname( \ @@ -424,7 +425,7 @@ 255 AUE_NULL MSTD { int linux_epoll_ctl(void); } 256 AUE_NULL MSTD { int linux_epoll_wait(void); } 257 AUE_NULL MSTD { int linux_remap_file_pages(void); } -258 AUE_NULL MSTD { int linux_set_tid_address(void); } +258 AUE_NULL MSTD { int linux_set_tid_address(int *tidptr); } 259 AUE_NULL MSTD { int linux_timer_create(void); } 260 AUE_NULL MSTD { int linux_timer_settime(void); } 261 AUE_NULL MSTD { int linux_timer_gettime(void); } ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exit.c#3 (text+ko) ==== @@ -87,6 +87,7 @@ /* Hook for NFS teardown procedure. */ void (*nlminfo_release_p)(struct proc *p); +int (*linux_proc_exit_p)(struct thread *) = NULL; /* necessary for linuxolator */ /* * exit -- @@ -236,6 +237,9 @@ */ EVENTHANDLER_INVOKE(process_exit, p); + /* we have to call linux exit hook */ + if (p->p_flag & P_LINUX && linux_proc_exit_p != NULL) + (linux_proc_exit_p)(td); MALLOC(p->p_ru, struct rusage *, sizeof(struct rusage), M_ZOMBIE, M_WAITOK); /* ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_trap.c#2 (text+ko) ==== @@ -67,6 +67,8 @@ #include #include +int (*linux_userret_p)(struct thread *) = NULL; /* for linuxolator */ + /* * Define the code needed before returning to user mode, for * trap and syscall. @@ -128,6 +130,10 @@ addupc_task(td, TRAPF_PC(frame), td->td_pticks * psratio); } + /* linux userret */ + if (p->p_flag & P_LINUX && linux_userret_p != NULL) + (linux_userret_p)(td); + /* * Let the scheduler adjust our priority etc. */ ==== //depot/projects/soc2006/rdivacky_linuxolator/sys/proc.h#2 (text+ko) ==== @@ -655,6 +655,7 @@ #define P_HWPMC 0x800000 /* Process is using HWPMCs */ #define P_JAILED 0x1000000 /* Process is in jail. */ +#define P_LINUX 0x2000000 /* linux binary */ #define P_INEXEC 0x4000000 /* Process is in execve(). */ #define P_STATCHILD 0x8000000 /* Child process stopped or exited. */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:06:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3F45316A4E0; Thu, 6 Jul 2006 11:06:23 +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 F205316A4DF for ; Thu, 6 Jul 2006 11:06:22 +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 8B70B43D45 for ; Thu, 6 Jul 2006 11:06:22 +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 k66B6Mwt065342 for ; Thu, 6 Jul 2006 11:06:22 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 k66B6M88065339 for perforce@freebsd.org; Thu, 6 Jul 2006 11:06:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 11:06:22 GMT Message-Id: <200607061106.k66B6M88065339@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 100720 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:06:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=100720 Change 100720 by rwatson@rwatson_zoo on 2006/07/06 11:06:15 Update include files; in most cases, mac.h -> mac_framework.h, except in kern_mac.c. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_file.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_getcwd.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_misc.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_stats.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_fcntl.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_misc.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_stream.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_devs.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_vfsops.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_vnops.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/fs/unionfs/union_vnops.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/i386/i386/sys_machdep.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/i386/ibcs2/ibcs2_misc.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/init_main.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_acct.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_acl.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_alq.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_environment.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_exec.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_exit.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_fork.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_jail.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_ktrace.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_linker.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_mac.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_mbuf.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_prot.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_shutdown.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_sysctl.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_time.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/link_elf.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/link_elf_obj.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/subr_trap.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sys_pipe.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sys_socket.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sysv_msg.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sysv_sem.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sysv_shm.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_mbuf.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_mbuf2.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_sem.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket2.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_syscalls.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_usrreq.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_lookup.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_mount.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_subr.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_syscalls.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_vnops.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/bpf.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/bsd_comp.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_atmsubr.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_ethersubr.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_fddisubr.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_fwsubr.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_gif.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_iso88025subr.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_ppp.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_stf.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_tun.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_file.c#2 (text+ko) ==== @@ -40,7 +40,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_getcwd.c#2 (text+ko) ==== @@ -54,7 +54,7 @@ #include #include #include -#include +#include #include #include #include /* XXX only for DIRBLKSIZ */ ==== //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_misc.c#2 (text+ko) ==== @@ -43,7 +43,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_stats.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_fcntl.c#2 (text+ko) ==== @@ -40,7 +40,7 @@ #include /*#include */ #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_misc.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include /* Must come after sys/malloc.h */ #include ==== //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_stream.c#2 (text+ko) ==== @@ -50,7 +50,7 @@ #include #include #include /* Must come after sys/malloc.h */ -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_devs.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_vfsops.c#2 (text+ko) ==== @@ -41,7 +41,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_vnops.c#2 (text+ko) ==== @@ -40,8 +40,8 @@ * mkdir: want it ? */ -#include -#include +#include "opt_devfs.h" +#include "opt_mac.h" #include #include @@ -53,7 +53,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/fs/unionfs/union_vnops.c#2 (text+ko) ==== @@ -51,7 +51,7 @@ #include #include #include -#include +#include /* XXXRW: Why is this needed? */ #include #include ==== //depot/projects/trustedbsd/mac2/sys/i386/i386/sys_machdep.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/i386/ibcs2/ibcs2_misc.c#2 (text+ko) ==== @@ -65,7 +65,7 @@ #include #include #include -#include +#include #include #include /* Must come after sys/malloc.h */ #include ==== //depot/projects/trustedbsd/mac2/sys/kern/init_main.c#2 (text+ko) ==== @@ -55,7 +55,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_acct.c#2 (text+ko) ==== @@ -53,7 +53,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_acl.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_alq.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_environment.c#2 (text+ko) ==== @@ -44,7 +44,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_exec.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_exit.c#2 (text+ko) ==== @@ -65,7 +65,7 @@ #include #include /* for acct_process() function prototype */ #include -#include +#include #include #include #ifdef KTRACE ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_fork.c#2 (text+ko) ==== @@ -59,7 +59,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_jail.c#2 (text+ko) ==== @@ -18,7 +18,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_ktrace.c#2 (text+ko) ==== @@ -44,7 +44,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_linker.c#2 (text+ko) ==== @@ -41,7 +41,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_mac.c#2 (text+ko) ==== @@ -61,6 +61,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_mbuf.c#2 (text+ko) ==== @@ -32,7 +32,7 @@ #include "opt_param.h" #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_prot.c#2 (text+ko) ==== @@ -51,7 +51,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_shutdown.c#2 (text+ko) ==== @@ -53,7 +53,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_sysctl.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_time.c#2 (text+ko) ==== @@ -43,7 +43,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/link_elf.c#2 (text+ko) ==== @@ -37,7 +37,7 @@ #endif #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/link_elf_obj.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/subr_trap.c#2 (text+ko) ==== @@ -50,7 +50,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/sys_pipe.c#2 (text+ko) ==== @@ -101,7 +101,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/sys_socket.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/sysv_msg.c#2 (text+ko) ==== @@ -59,7 +59,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/sysv_sem.c#2 (text+ko) ==== @@ -59,7 +59,7 @@ #include #include #include -#include +#include static MALLOC_DEFINE(M_SEM, "sem", "SVID compatible semaphores"); ==== //depot/projects/trustedbsd/mac2/sys/kern/sysv_shm.c#2 (text+ko) ==== @@ -84,7 +84,7 @@ #include #include #include -#include +#include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_mbuf.c#2 (text+ko) ==== @@ -41,7 +41,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_mbuf2.c#2 (text+ko) ==== @@ -71,7 +71,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_sem.c#2 (text+ko) ==== @@ -54,7 +54,7 @@ #include #include #include -#include +#include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket.c#2 (text+ko) ==== @@ -101,7 +101,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket2.c#2 (text+ko) ==== @@ -43,7 +43,7 @@ #include /* for maxfiles */ #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_syscalls.c#2 (text+ko) ==== @@ -43,7 +43,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_usrreq.c#2 (text+ko) ==== @@ -46,7 +46,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_lookup.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_mount.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_subr.c#2 (text+ko) ==== @@ -58,7 +58,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_syscalls.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_vnops.c#2 (text+ko) ==== @@ -48,7 +48,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/bpf.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/bsd_comp.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_atmsubr.c#2 (text+ko) ==== @@ -46,7 +46,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_ethersubr.c#2 (text+ko) ==== @@ -41,7 +41,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_fddisubr.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_fwsubr.c#2 (text+ko) ==== @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_gif.c#2 (text+ko) ==== @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_iso88025subr.c#2 (text+ko) ==== @@ -48,7 +48,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_ppp.c#2 (text+ko) ==== @@ -88,7 +88,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_stf.c#2 (text+ko) ==== @@ -82,7 +82,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/net/if_tun.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:13:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AEB8916A4E0; Thu, 6 Jul 2006 11:13: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 6FF9A16A4DE for ; Thu, 6 Jul 2006 11:13:41 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73D8B43D46 for ; Thu, 6 Jul 2006 11:13:31 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66BDVOD066007 for ; Thu, 6 Jul 2006 11:13:31 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66BDVIH066004 for perforce@freebsd.org; Thu, 6 Jul 2006 11:13:31 GMT (envelope-from rdivacky@FreeBSD.org) Date: Thu, 6 Jul 2006 11:13:31 GMT Message-Id: <200607061113.k66BDVIH066004@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100721 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:13:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=100721 Change 100721 by rdivacky@rdivacky_witten on 2006/07/06 11:12:55 Forgot to set the P_LINUX flag in linux_proc_init. Now we set it. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#8 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#8 (text+ko) ==== @@ -1023,6 +1023,7 @@ { struct linux_emuldata *em, *p_em; int found = 0; + struct proc *p; /* XXX: locking? */ MALLOC(em, struct linux_emuldata *, sizeof *em, M_LINUX, M_WAITOK | M_ZERO); @@ -1063,6 +1064,13 @@ /* XXX: sched_lock locking? */ + /* find the newly created thread and set the P_LINUX flag */ + if (child != 0) { + p = pfind(child); + p->p_flag |= P_LINUX; + PROC_UNLOCK(p); + } + return (0); } From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:23:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5B26916A4E0; Thu, 6 Jul 2006 11:23:46 +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 121C316A4DE for ; Thu, 6 Jul 2006 11:23:46 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AE7A443D46 for ; Thu, 6 Jul 2006 11:23:45 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66BNjga066539 for ; Thu, 6 Jul 2006 11:23:45 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66BNjRV066536 for perforce@freebsd.org; Thu, 6 Jul 2006 11:23:45 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 11:23:45 GMT Message-Id: <200607061123.k66BNjRV066536@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100722 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:23:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=100722 Change 100722 by piso@piso_newluxor on 2006/07/06 11:23:15 Convert return code to use errno: OK => 0 NOK => -1 EHDNOF => ENOENT EHDCON => EEXIST Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#5 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_cuseeme.c#3 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_dummy.c#2 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#3 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#3 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#13 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#13 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#3 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_pptp.c#3 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_skinny.c#3 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#3 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#5 (text+ko) ==== @@ -1240,7 +1240,7 @@ /* Walk out chain. */ error = find_handler(IN, IP, la, pip, &ad); - if (error == OK) + if (error == 0) iresult = PKT_ALIAS_OK; else iresult = ProtoAliasIn(la, pip); @@ -1365,7 +1365,7 @@ }; /* Walk out chain. */ error = find_handler(OUT, IP, la, pip, &ad); - if (error == OK) + if (error == 0) iresult = PKT_ALIAS_OK; else iresult = ProtoAliasOut(la, pip, create); @@ -1512,7 +1512,7 @@ LibAliasLoadModule(buf); } } - return (OK); + return (0); } int @@ -1528,13 +1528,13 @@ handle = dlopen (path, RTLD_LAZY); if (!handle) { fputs (dlerror(), stderr); - return (NOK); + return (-1); } p = dlsym(handle, "alias_mod"); if ((error = dlerror()) != NULL) { fputs(error, stderr); - return (NOK); + return (-1); } t = malloc(sizeof(struct dll)); @@ -1542,20 +1542,20 @@ return (ENOMEM); strncpy(t->name, p->name, DLL_LEN); t->handle = handle; - if (attach_dll(t) == EHDCON) { + if (attach_dll(t) == EEXIST) { free(t); fputs("dll conflict", stderr); - return (NOK); + return (-1); } m = dlsym(t->handle, "handlers"); if ((error = dlerror()) != NULL) { fputs(error, stderr); - return (NOK); + return (-1); } attach_handlers(m); - return (OK); + return (0); } int ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_cuseeme.c#3 (text+ko) ==== @@ -76,10 +76,10 @@ fingerprint(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (ah->dport == NULL || ah->original_address == NULL) - return (NOK); + return (-1); if (ntohs(*ah->dport) == CUSEEME_PORT_NUMBER) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -89,7 +89,7 @@ protohandlerin(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleCUSeeMeIn(la, pip, *ah->original_address); - return (OK); + return (0); } #ifdef _KERNEL @@ -99,7 +99,7 @@ protohandlerout(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleCUSeeMeOut(la, pip, ah->lnk); - return (OK); + return (0); } /* Kernel module definition. */ ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_dummy.c#2 (text+ko) ==== @@ -76,19 +76,19 @@ /* * check here all the data that will be used later, if any field - * is empy/NULL, return a NOK value + * is empy/NULL, return a -1 value */ if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || ah->maxpacketsize == 0) - return (NOK); + return (-1); /* * fingerprint the incoming packet, if it matches any conditions * return an OK value */ if (ntohs(*ah->dport) == 123 || ntohs(*ah->sport) == 456) - return (OK); /* i know how to handle it... */ - return (NOK); /* i don't know this packet... */ + return (0); /* i know how to handle it... */ + return (-1); /* i don't know this packet... */ } /* @@ -103,7 +103,7 @@ protohandler(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleDummy(la, pip, ah); - return (OK); + return (0); } /* ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#3 (text+ko) ==== @@ -115,11 +115,11 @@ if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || ah->maxpacketsize == 0) - return (NOK); + return (-1); if (ntohs(*ah->dport) == FTP_CONTROL_PORT_NUMBER || ntohs(*ah->sport) == FTP_CONTROL_PORT_NUMBER) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -129,7 +129,7 @@ protohandler(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleFtpOut(la, pip, ah->lnk, ah->maxpacketsize); - return (OK); + return (0); } struct proto_handler handlers[] = {{80, OUT, TCP, &fingerprint, @@ -188,9 +188,7 @@ static int ParseFtp229Reply(struct libalias *la, char *, int); static void NewFtpMessage(struct libalias *la, struct ip *, struct alias_link *, int, int); -#ifdef _KERNEL static -#endif void AliasHandleFtpOut( struct libalias *la, ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#3 (text+ko) ==== @@ -104,11 +104,11 @@ if (ah->dport == NULL || ah->dport == NULL || ah->lnk == NULL || ah->maxpacketsize == 0) - return (NOK); + return (-1); if (ntohs(*ah->dport) == IRC_CONTROL_PORT_NUMBER_1 || ntohs(*ah->dport) == IRC_CONTROL_PORT_NUMBER_2) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -118,7 +118,7 @@ protohandler(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleIrcOut(la, pip, ah->lnk, ah->maxpacketsize); - return (OK); + return (0); } struct proto_handler handlers[] = {{90, OUT, TCP, &fingerprint, ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#13 (text+ko) ==== @@ -31,10 +31,12 @@ #include #include #include +#include #else #include #include #include +#include #endif #include @@ -172,15 +174,15 @@ LIST_FOREACH(b, &handler_chain, entries) { if ((b->pri == p->pri) && (b->dir == p->dir) && (b->proto == p->proto)) - return (EHDCON); /* priority conflict */ + return (EEXIST); /* priority conflict */ if (b->pri > p->pri) { LIST_INSERT_BEFORE(b, p, entries); - return (OK); + return (0); } } /* end of list or got right position, insert here */ LIST_INSERT_AFTER(b, p, entries); - return (OK); + return (0); } static int @@ -191,21 +193,21 @@ LIST_FOREACH_SAFE(b, &handler_chain, entries, b_tmp) { if (b == p) { LIST_REMOVE(b, entries); - return (OK); + return (0); } } - return (EHDNOF); /* handler not found */ + return (ENOENT); /* handler not found */ } int attach_handlers(struct proto_handler *_p) { - int i, res = NOK; + int i, res = -1; LIBALIAS_WLOCK(); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; res = _attach_handler(&_p[i]); - if (res != OK) break; + if (res != 0) break; } LIBALIAS_WUNLOCK(); return (res); @@ -213,13 +215,13 @@ int detach_handlers(struct proto_handler *_p) { - int i, res = NOK; + int i, res = -1; LIBALIAS_WLOCK(); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; res = _detach_handler(&_p[i]); - if (res != OK) break; + if (res != 0) break; } LIBALIAS_WUNLOCK(); return (res); @@ -227,7 +229,7 @@ int detach_handler(struct proto_handler *_p) { - int res = NOK; + int res = -1; LIBALIAS_WLOCK(); res = _detach_handler(_p); @@ -238,13 +240,13 @@ int find_handler(int8_t dir, int8_t proto, struct libalias *la, struct ip *pip, struct alias_data *ad) { struct proto_handler *p; - int err = EHDNOF; + int err = ENOENT; LIBALIAS_RLOCK(); LIST_FOREACH(p, &handler_chain, entries) { if ((p->dir & dir) && (p->proto & proto)) - if (p->fingerprint(la, pip, ad) == OK) { + if (p->fingerprint(la, pip, ad) == 0) { err = p->protohandler(la, pip, ad); break; } @@ -267,11 +269,11 @@ SLIST_FOREACH(b, &dll_chain, next) { if (!strncmp(b->name, p->name, DLL_LEN)) - return (EHDCON); /* dll name conflict */ + return (EEXIST); /* dll name conflict */ } /* end of list, insert here */ SLIST_INSERT_HEAD(&dll_chain, p, next); - return (OK); + return (0); } void * ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#13 (text+ko) ==== @@ -113,29 +113,10 @@ void *detach_dll(char *); struct dll *walk_dll_chain(void); -/* General condition of success & failure. */ -#define OK 1 -#define NOK -1 - /* End of handlers. */ #define EOH -1 /* - * Handler/dll conflict - tried to attach a protocol handleror a dll, - * but found another one with same priority, direction and working - * protocol(proto handler) or name (dll) already in chain. - */ - -#define EHDCON 2 - -/* - * Handler/dll not found - tried to detach/search a protocol module - * handler or a dll not present in chain. - */ - -#define EHDNOF 3 - -/* * Some defines borrowed from sys/module.h used to compile a kld * in userland as a shared lib. */ ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#3 (text+ko) ==== @@ -92,11 +92,11 @@ if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || ah->alias_address == NULL || ah->alias_port == NULL) - return (NOK); + return (-1); if (ntohs(*ah->dport) == NETBIOS_DGM_PORT_NUMBER || ntohs(*ah->sport) == NETBIOS_DGM_PORT_NUMBER) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -106,7 +106,7 @@ protohandler1(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleUdpNbt(la, pip, ah->lnk, ah->alias_address, *ah->alias_port); - return (OK); + return (0); } #ifdef _KERNEL @@ -117,11 +117,11 @@ if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || ah->alias_address == NULL || ah->alias_port == NULL) - return (NOK); + return (-1); if (ntohs(*ah->dport) == NETBIOS_NS_PORT_NUMBER || ntohs(*ah->sport) == NETBIOS_NS_PORT_NUMBER) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -132,7 +132,7 @@ AliasHandleUdpNbtNS(la, pip, ah->lnk, &pip->ip_src, ah->sport, ah->alias_address, ah->alias_port); - return (OK); + return (0); } /* Kernel module definition. */ ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_pptp.c#3 (text+ko) ==== @@ -99,11 +99,11 @@ fingerprint(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL) - return (NOK); + return (-1); if (ntohs(*ah->dport) == PPTP_CONTROL_PORT_NUMBER || ntohs(*ah->sport) == PPTP_CONTROL_PORT_NUMBER) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -112,7 +112,7 @@ int fingerprintgre(struct libalias *la, struct ip *pip, struct alias_data *ah) { - return (OK); + return (0); } #ifdef _KERNEL @@ -122,7 +122,7 @@ protohandlerin(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandlePptpIn(la, pip, ah->lnk); - return (OK); + return (0); } #ifdef _KERNEL @@ -132,7 +132,7 @@ protohandlerout(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandlePptpOut(la, pip, ah->lnk); - return (OK); + return (0); } #ifdef _KERNEL @@ -143,8 +143,8 @@ if (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY || AliasHandlePptpGreIn(la, pip) == 0) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -154,8 +154,8 @@ protohandlergreout(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (AliasHandlePptpGreOut(la, pip) == 0) - return (OK); - return (NOK); + return (0); + return (-1); } /* Kernel module definition. */ ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_skinny.c#3 (text+ko) ==== @@ -74,11 +74,11 @@ fingerprint(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL) - return (NOK); + return (-1); if (la->skinnyPort != 0 && (ntohs(*ah->sport) == la->skinnyPort || ntohs(*ah->dport) == la->skinnyPort)) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -88,7 +88,7 @@ protohandler(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleSkinny(la, pip, ah->lnk); - return (OK); + return (0); } struct proto_handler handlers[] = {{110, IN|OUT, TCP, &fingerprint, ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#3 (text+ko) ==== @@ -144,14 +144,14 @@ if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || ah->maxpacketsize == 0) - return (NOK); + return (-1); if (ntohs(*ah->dport) == RTSP_CONTROL_PORT_NUMBER_1 || ntohs(*ah->sport) == RTSP_CONTROL_PORT_NUMBER_1 || ntohs(*ah->dport) == RTSP_CONTROL_PORT_NUMBER_2 || ntohs(*ah->sport) == RTSP_CONTROL_PORT_NUMBER_2 || ntohs(*ah->dport) == TFTP_PORT_NUMBER) - return (OK); - return (NOK); + return (0); + return (-1); } #ifdef _KERNEL @@ -164,7 +164,7 @@ FindRtspOut(la, pip->ip_src, pip->ip_dst, *ah->sport, *ah->alias_port, IPPROTO_UDP); else AliasHandleRtspOut(la, pip, ah->lnk, ah->maxpacketsize); - return (OK); + return (0); } struct proto_handler handlers[] = {{100, OUT, TCP|UDP, &fingerprint, From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:26:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 58A6316A4E1; Thu, 6 Jul 2006 11:26:50 +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 34BA216A4DF for ; Thu, 6 Jul 2006 11:26:50 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F25D943D45 for ; Thu, 6 Jul 2006 11:26:49 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66BQnWA066675 for ; Thu, 6 Jul 2006 11:26:49 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66BQnBv066672 for perforce@freebsd.org; Thu, 6 Jul 2006 11:26:49 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 11:26:49 GMT Message-Id: <200607061126.k66BQnBv066672@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100723 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:26:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=100723 Change 100723 by wkoszek@wkoszek_laptop on 2006/07/06 11:25:52 Instead of using amd64 way of calculating KERNBASE, define it as 0xc0000000. Make VM_MAXUSER_ADDRESS equal to KERNBASE. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/vmparam.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/vmparam.h#2 (text+ko) ==== @@ -87,25 +87,21 @@ */ #define UMA_MD_SMALL_ALLOC -/* - * Virtual addresses of things. Derived from the page directory and - * page table indexes from pmap.h for precision. - * Because of the page that is both a PD and PT, it looks a little - * messy at times, but hey, we'll do anything to save a page :-) - */ - #define VM_MAX_KERNEL_ADDRESS KVADDR(KPML4I, NPDPEPG-1, NKPDE-1, NPTEPG-1) #define VM_MIN_KERNEL_ADDRESS KVADDR(KPML4I, KPDPI, 0, 0) #define DMAP_MIN_ADDRESS KVADDR(DMPML4I, 0, 0, 0) #define DMAP_MAX_ADDRESS KVADDR(DMPML4I+1, 0, 0, 0) -#define KERNBASE KVADDR(KPML4I, KPDPI, 0, 0) +/* + * XXXMIPS: Fix this! + */ +#define KERNBASE 0xc0000000 #define UPT_MAX_ADDRESS KVADDR(PML4PML4I, PML4PML4I, PML4PML4I, PML4PML4I) #define UPT_MIN_ADDRESS KVADDR(PML4PML4I, 0, 0, 0) -#define VM_MAXUSER_ADDRESS UVADDR(NUPML4E, 0, 0, 0) +#define VM_MAXUSER_ADDRESS KERNBASE #define USRSTACK VM_MAXUSER_ADDRESS From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:28:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7194116A4E1; Thu, 6 Jul 2006 11:28:53 +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 4CFC016A4DF for ; Thu, 6 Jul 2006 11:28:53 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 13A1A43D49 for ; Thu, 6 Jul 2006 11:28:53 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66BSqsU066761 for ; Thu, 6 Jul 2006 11:28:52 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66BSqLl066758 for perforce@freebsd.org; Thu, 6 Jul 2006 11:28:52 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 11:28:52 GMT Message-Id: <200607061128.k66BSqLl066758@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100724 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:28:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=100724 Change 100724 by wkoszek@wkoszek_laptop on 2006/07/06 11:28:17 Use more ARM-like style of sf_buf.h. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/sf_buf.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/sf_buf.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2003, 2005 Alan L. Cox + * Copyright (c) [year] [your name] * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,36 +23,35 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/sf_buf.h,v 1.3 2005/02/28 23:38:15 peter Exp $ + * $Id$ */ - #ifndef _MACHINE_SF_BUF_H_ #define _MACHINE_SF_BUF_H_ -#include -#include -#include +#include + +struct vm_page; -/* - * On this machine, the only purpose for which sf_buf is used is to implement - * an opaque pointer required by the machine-independent parts of the kernel. - * That pointer references the vm_page that is "mapped" by the sf_buf. The - * actual mapping is provided by the direct virtual-to-physical mapping. - */ -struct sf_buf; +struct sf_buf { + LIST_ENTRY(sf_buf) list_entry; /* list of buffers */ + TAILQ_ENTRY(sf_buf) free_entry; /* list of buffers */ + struct vm_page *m; /* currently mapped page */ + vm_offset_t kva; /* va of mapping */ + int ref_count; /* usage of this mapping */ +}; static __inline vm_offset_t sf_buf_kva(struct sf_buf *sf) { - return (PHYS_TO_DMAP(VM_PAGE_TO_PHYS((vm_page_t)sf))); + return (sf->kva); } -static __inline vm_page_t +static __inline struct vm_page * sf_buf_page(struct sf_buf *sf) { - return ((vm_page_t)sf); + return (sf->m); } #endif /* !_MACHINE_SF_BUF_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:40:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7779916A4DD; Thu, 6 Jul 2006 11:40:09 +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 32F9116A4DA for ; Thu, 6 Jul 2006 11:40:09 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C679C43D49 for ; Thu, 6 Jul 2006 11:40:08 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Be8Yi067297 for ; Thu, 6 Jul 2006 11:40:08 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66Be8Wc067294 for perforce@freebsd.org; Thu, 6 Jul 2006 11:40:08 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 11:40:08 GMT Message-Id: <200607061140.k66Be8Wc067294@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100726 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:40:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=100726 Change 100726 by wkoszek@wkoszek_laptop on 2006/07/06 11:39:40 Disable stuff, which won't work on MIPS for sure. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/bus.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/bus.h#2 (text+ko) ==== @@ -167,7 +167,6 @@ bus_size_t offset, bus_size_t size __unused, bus_space_handle_t *nbshp) { - *nbshp = bsh + offset; return (0); } @@ -215,30 +214,36 @@ bus_space_read_1(bus_space_tag_t tag, bus_space_handle_t handle, bus_size_t offset) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) return (inb(handle + offset)); return (*(volatile u_int8_t *)(handle + offset)); +#endif + return (0); } static __inline u_int16_t bus_space_read_2(bus_space_tag_t tag, bus_space_handle_t handle, bus_size_t offset) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) return (inw(handle + offset)); return (*(volatile u_int16_t *)(handle + offset)); +#endif + return (0); } static __inline u_int32_t bus_space_read_4(bus_space_tag_t tag, bus_space_handle_t handle, bus_size_t offset) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) return (inl(handle + offset)); return (*(volatile u_int32_t *)(handle + offset)); +#endif + return (0); } #if 0 /* Cause a link error for bus_space_read_8 */ @@ -268,7 +273,7 @@ bus_space_read_multi_1(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int8_t *addr, size_t count) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) insb(bsh + offset, addr, count); else { @@ -283,13 +288,14 @@ "%eax", "memory"); #endif } +#endif } static __inline void bus_space_read_multi_2(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int16_t *addr, size_t count) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) insw(bsh + offset, addr, count); else { @@ -304,13 +310,14 @@ "%eax", "memory"); #endif } +#endif } static __inline void bus_space_read_multi_4(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int32_t *addr, size_t count) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) insl(bsh + offset, addr, count); else { @@ -325,6 +332,7 @@ "%eax", "memory"); #endif } +#endif } #if 0 /* Cause a link error for bus_space_read_multi_8 */ @@ -356,7 +364,7 @@ bus_space_read_region_1(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int8_t *addr, size_t count) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) { int _port_ = bsh + offset; #ifdef __GNUCLIKE_ASM @@ -382,13 +390,14 @@ "memory", "cc"); #endif } +#endif } static __inline void bus_space_read_region_2(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int16_t *addr, size_t count) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) { int _port_ = bsh + offset; #ifdef __GNUCLIKE_ASM @@ -414,13 +423,14 @@ "memory", "cc"); #endif } +#endif } static __inline void bus_space_read_region_4(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int32_t *addr, size_t count) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) { int _port_ = bsh + offset; #ifdef __GNUCLIKE_ASM @@ -446,6 +456,7 @@ "memory", "cc"); #endif } +#endif } #if 0 /* Cause a link error for bus_space_read_region_8 */ @@ -473,33 +484,36 @@ bus_space_write_1(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int8_t value) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) outb(bsh + offset, value); else *(volatile u_int8_t *)(bsh + offset) = value; +#endif } static __inline void bus_space_write_2(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int16_t value) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) outw(bsh + offset, value); else *(volatile u_int16_t *)(bsh + offset) = value; +#endif } static __inline void bus_space_write_4(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int32_t value) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) outl(bsh + offset, value); else *(volatile u_int32_t *)(bsh + offset) = value; +#endif } #if 0 /* Cause a link error for bus_space_write_8 */ @@ -532,7 +546,7 @@ bus_space_write_multi_1(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, const u_int8_t *addr, size_t count) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) outsb(bsh + offset, addr, count); else { @@ -547,13 +561,14 @@ "%eax", "memory", "cc"); #endif } +#endif } static __inline void bus_space_write_multi_2(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, const u_int16_t *addr, size_t count) { - +#if 0 if (tag == AMD64_BUS_SPACE_IO) outsw(bsh + offset, addr, count); else { @@ -568,12 +583,14 @@ "%eax", "memory", "cc"); #endif } +#endif } static __inline void bus_space_write_multi_4(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, const u_int32_t *addr, size_t count) { +#if 0 if (tag == AMD64_BUS_SPACE_IO) outsl(bsh + offset, addr, count); @@ -589,6 +606,7 @@ "%eax", "memory", "cc"); #endif } +#endif } #if 0 /* Cause a link error for bus_space_write_multi_8 */ @@ -621,6 +639,7 @@ bus_space_write_region_1(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, const u_int8_t *addr, size_t count) { +#if 0 if (tag == AMD64_BUS_SPACE_IO) { int _port_ = bsh + offset; @@ -647,12 +666,14 @@ "memory", "cc"); #endif } +#endif } static __inline void bus_space_write_region_2(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, const u_int16_t *addr, size_t count) { +#if 0 if (tag == AMD64_BUS_SPACE_IO) { int _port_ = bsh + offset; @@ -679,12 +700,14 @@ "memory", "cc"); #endif } +#endif } static __inline void bus_space_write_region_4(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, const u_int32_t *addr, size_t count) { +#if 0 if (tag == AMD64_BUS_SPACE_IO) { int _port_ = bsh + offset; @@ -711,6 +734,7 @@ "memory", "cc"); #endif } +#endif } #if 0 /* Cause a link error for bus_space_write_region_8 */ @@ -740,6 +764,7 @@ bus_space_set_multi_1(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int8_t value, size_t count) { +#if 0 bus_space_handle_t addr = bsh + offset; if (tag == AMD64_BUS_SPACE_IO) @@ -748,12 +773,14 @@ else while (count--) *(volatile u_int8_t *)(addr) = value; +#endif } static __inline void bus_space_set_multi_2(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int16_t value, size_t count) { +#if 0 bus_space_handle_t addr = bsh + offset; if (tag == AMD64_BUS_SPACE_IO) @@ -762,12 +789,14 @@ else while (count--) *(volatile u_int16_t *)(addr) = value; +#endif } static __inline void bus_space_set_multi_4(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int32_t value, size_t count) { +#if 0 bus_space_handle_t addr = bsh + offset; if (tag == AMD64_BUS_SPACE_IO) @@ -776,6 +805,7 @@ else while (count--) *(volatile u_int32_t *)(addr) = value; +#endif } #if 0 /* Cause a link error for bus_space_set_multi_8 */ @@ -804,6 +834,7 @@ bus_space_set_region_1(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int8_t value, size_t count) { +#if 0 bus_space_handle_t addr = bsh + offset; if (tag == AMD64_BUS_SPACE_IO) @@ -812,12 +843,14 @@ else for (; count != 0; count--, addr++) *(volatile u_int8_t *)(addr) = value; +#endif } static __inline void bus_space_set_region_2(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int16_t value, size_t count) { +#if 0 bus_space_handle_t addr = bsh + offset; if (tag == AMD64_BUS_SPACE_IO) @@ -826,12 +859,14 @@ else for (; count != 0; count--, addr += 2) *(volatile u_int16_t *)(addr) = value; +#endif } static __inline void bus_space_set_region_4(bus_space_tag_t tag, bus_space_handle_t bsh, bus_size_t offset, u_int32_t value, size_t count) { +#if 0 bus_space_handle_t addr = bsh + offset; if (tag == AMD64_BUS_SPACE_IO) @@ -840,6 +875,7 @@ else for (; count != 0; count--, addr += 4) *(volatile u_int32_t *)(addr) = value; +#endif } #if 0 /* Cause a link error for bus_space_set_region_8 */ @@ -874,6 +910,7 @@ bus_size_t off1, bus_space_handle_t bsh2, bus_size_t off2, size_t count) { +#if 0 bus_space_handle_t addr1 = bsh1 + off1; bus_space_handle_t addr2 = bsh2 + off2; @@ -902,6 +939,7 @@ *(volatile u_int8_t *)(addr1); } } +#endif } static __inline void @@ -909,6 +947,7 @@ bus_size_t off1, bus_space_handle_t bsh2, bus_size_t off2, size_t count) { +#if 0 bus_space_handle_t addr1 = bsh1 + off1; bus_space_handle_t addr2 = bsh2 + off2; @@ -937,6 +976,7 @@ *(volatile u_int16_t *)(addr1); } } +#endif } static __inline void @@ -944,6 +984,7 @@ bus_size_t off1, bus_space_handle_t bsh2, bus_size_t off2, size_t count) { +#if 0 bus_space_handle_t addr1 = bsh1 + off1; bus_space_handle_t addr2 = bsh2 + off2; @@ -972,6 +1013,7 @@ *(volatile u_int32_t *)(addr1); } } +#endif } #if 0 /* Cause a link error for bus_space_copy_8 */ @@ -996,12 +1038,14 @@ bus_space_barrier(bus_space_tag_t tag __unused, bus_space_handle_t bsh __unused, bus_size_t offset __unused, bus_size_t len __unused, int flags) { +#if 0 #ifdef __GNUCLIKE_ASM if (flags & BUS_SPACE_BARRIER_READ) __asm __volatile("lock; addl $0,0(%%rsp)" : : : "memory"); else __asm __volatile("" : : : "memory"); #endif +#endif } #ifdef BUS_SPACE_NO_LEGACY From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:45:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ED6F116A4E1; Thu, 6 Jul 2006 11:45:15 +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 C963516A4DA for ; Thu, 6 Jul 2006 11:45:15 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 93B5643D45 for ; Thu, 6 Jul 2006 11:45:15 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66BjFf5067595 for ; Thu, 6 Jul 2006 11:45:15 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66BjFiu067592 for perforce@freebsd.org; Thu, 6 Jul 2006 11:45:15 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 11:45:15 GMT Message-Id: <200607061145.k66BjFiu067592@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100727 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:45:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=100727 Change 100727 by wkoszek@wkoszek_laptop on 2006/07/06 11:45:11 Steal some of the ARM bits to make this file compile on MIPS. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpu.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpu.h#2 (text+ko) ==== @@ -37,13 +37,6 @@ #define _MACHINE_CPU_H_ /* - * Definitions unique to i386 cpu support. - */ -#include -#include -#include - -/* * definitions of cpu-dependent requirements * referenced in generic code */ @@ -53,7 +46,7 @@ #define cpu_swapin(p) /* nothing */ #define cpu_getstack(td) ((td)->td_frame->tf_rsp) #define cpu_setstack(td, ap) ((td)->td_frame->tf_rsp = (ap)) -#define cpu_spinwait() ia32_pause() +#define cpu_spinwait() /* ia32_pause() */ #define TRAPF_USERMODE(framep) \ (ISPL((framep)->tf_cs) == SEL_UPL) @@ -78,14 +71,15 @@ void swi_vm(void *); /* - * Return contents of in-cpu fast counter as a sort of "bogo-time" - * for random-harvesting purposes. + * XXXMIPS: Taken from src/sys/arm/include/cpu.h. */ static __inline u_int64_t get_cyclecount(void) { + struct bintime bt; - return (rdtsc()); + binuptime(&bt); + return (bt.frac ^ bt.sec); } #endif From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:47:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 925A016A4E5; Thu, 6 Jul 2006 11:47:39 +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 3E86716A4E0; Thu, 6 Jul 2006 11:47:39 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6DB6743D4C; Thu, 6 Jul 2006 11:47:38 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k66BlZ8q008534; Thu, 6 Jul 2006 07:47:37 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Olivier Houchard Date: Thu, 6 Jul 2006 07:32:54 -0400 User-Agent: KMail/1.9.1 References: <200607060014.k660EUJ5086324@repoman.freebsd.org> In-Reply-To: <200607060014.k660EUJ5086324@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607060732.54895.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [192.168.0.1]); Thu, 06 Jul 2006 07:47:37 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1586/Wed Jul 5 15:22:07 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 100679 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:47:39 -0000 On Wednesday 05 July 2006 20:14, Olivier Houchard wrote: > http://perforce.freebsd.org/chv.cgi?CH=100679 > > Change 100679 by cognet@cognet on 2006/07/06 00:13:48 > > Bring in a bunch of empty files (except in_cksum.c, which actually > is the ppc version). > > Affected files ... > > .. //depot/projects/mips2/src/sys/mips/mips/busdma_machdep.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/db_disasm.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/db_interface.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/db_trace.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/dump_machdep.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/elf_machdep.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/in_cksum.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/intr.c#1 add Can we call it 'intr_machdep.c' instead please? > .. //depot/projects/mips2/src/sys/mips/mips/locore.S#1 add > .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/mem.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/pmap.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/sys_machdep.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/trap.c#1 add > .. //depot/projects/mips2/src/sys/mips/mips/uio_machdep.c#1 add > > Differences ... > -- John Baldwin From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:47:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4F47516A576; Thu, 6 Jul 2006 11:47:40 +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 2BAA516A572; Thu, 6 Jul 2006 11:47:40 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2E9DB43D53; Thu, 6 Jul 2006 11:47:38 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k66BlZ8r008534; Thu, 6 Jul 2006 07:47:38 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Scott Long Date: Thu, 6 Jul 2006 07:37:00 -0400 User-Agent: KMail/1.9.1 References: <200607060348.k663mTHW007992@repoman.freebsd.org> In-Reply-To: <200607060348.k663mTHW007992@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607060737.01194.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [192.168.0.1]); Thu, 06 Jul 2006 07:47:38 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1586/Wed Jul 5 15:22:07 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 100686 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:47:40 -0000 On Wednesday 05 July 2006 23:48, Scott Long wrote: > http://perforce.freebsd.org/chv.cgi?CH=100686 > > Change 100686 by scottl@scottl-wv1u on 2006/07/06 03:47:59 > > Use a sleep mutex to protect kernel environment handling instead of > an sx lock. The sx lock seemed to only be used to get around the > copyout case in kenv(KENV_DUMP) path. Fix that path to safely use a > sleep lock instead. > > Affected files ... > > .. //depot/projects/scottl-camlock/src/sys/kern/kern_environment.c#7 edit > .. //depot/projects/scottl-camlock/src/sys/kern/subr_hints.c#3 edit > .. //depot/projects/scottl-camlock/src/sys/sys/systm.h#7 edit > > Differences ... > > ==== //depot/projects/scottl-camlock/src/sys/kern/kern_environment.c#7 (text+ko) ==== > > @@ -100,7 +99,8 @@ > return (error); > #endif > done = needed = 0; > - sx_slock(&kenv_lock); > + buffer = malloc(uap->len, M_TEMP, M_WAITOK|M_ZERO); > + mtx_lock(&kenv_lock); > for (i = 0; kenvp[i] != NULL; i++) { > len = strlen(kenvp[i]) + 1; > needed += len; > @@ -110,14 +110,15 @@ > * buffer, just keep computing the required size. > */ > if (uap->value != NULL && len > 0) { > - error = copyout(kenvp[i], uap->value + done, > - len); > - if (error) > + if (done + len > uap->len) > break; > + bcopy(kenvp[i], buffer + done, len); > done += len; > } > } > - sx_sunlock(&kenv_lock); > + mtx_unlock(&kenv_lock); > + error = copyout(buffer, uap->value, done); > + free(buffer, M_TEMP); > td->td_retval[0] = ((done == needed) ? 0 : needed); > return (error); > } Minor nit here is that you probably can avoid the malloc() and skip the copyout() and free() if uap->value == NULL. In that case the caller is just asking for the length to know how big of a buffer to malloc. -- John Baldwin From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:47:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 16A2B16A5EB; Thu, 6 Jul 2006 11:47: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 B625316A5E7; Thu, 6 Jul 2006 11:47:40 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0A12443D55; Thu, 6 Jul 2006 11:47:39 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k66BlZ8s008534; Thu, 6 Jul 2006 07:47:38 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Roman Divacky Date: Thu, 6 Jul 2006 07:44:54 -0400 User-Agent: KMail/1.9.1 References: <200607061105.k66B5JKG065286@repoman.freebsd.org> In-Reply-To: <200607061105.k66B5JKG065286@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607060744.55037.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [192.168.0.1]); Thu, 06 Jul 2006 07:47:38 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1586/Wed Jul 5 15:22:07 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 100719 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:47:41 -0000 On Thursday 06 July 2006 07:05, Roman Divacky wrote: > http://perforce.freebsd.org/chv.cgi?CH=100719 > > Change 100719 by rdivacky@rdivacky_witten on 2006/07/06 11:04:26 > > TID handling > o introduction of P_LINUX proc flag > o introduction of linux hooks into exit1() and userret() > o TID handling in i386 version of linuxolator > > this has not been tested much. More testing will come once the futexes are finished. > > Affected files ... > > .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_dummy.c#5 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#7 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#8 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#8 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#8 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#5 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#8 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exit.c#3 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_trap.c#2 edit > .. //depot/projects/soc2006/rdivacky_linuxolator/sys/proc.h#2 edit > > Differences ... > > ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exit.c#3 (text+ko) ==== > > @@ -87,6 +87,7 @@ > > /* Hook for NFS teardown procedure. */ > void (*nlminfo_release_p)(struct proc *p); > +int (*linux_proc_exit_p)(struct thread *) = NULL; /* necessary for linuxolator */ > > /* > * exit -- > @@ -236,6 +237,9 @@ > */ > EVENTHANDLER_INVOKE(process_exit, p); > > + /* we have to call linux exit hook */ > + if (p->p_flag & P_LINUX && linux_proc_exit_p != NULL) > + (linux_proc_exit_p)(td); > MALLOC(p->p_ru, struct rusage *, sizeof(struct rusage), > M_ZOMBIE, M_WAITOK); > /* > Please use a 'process_exit' eventhandler instead. You can test P_LINUX in your handler and return right away for non-Linux procs. > ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_trap.c#2 (text+ko) ==== > > @@ -67,6 +67,8 @@ > #include > #include > > +int (*linux_userret_p)(struct thread *) = NULL; /* for linuxolator */ > + > /* > * Define the code needed before returning to user mode, for > * trap and syscall. > @@ -128,6 +130,10 @@ > addupc_task(td, TRAPF_PC(frame), td->td_pticks * psratio); > } > > + /* linux userret */ > + if (p->p_flag & P_LINUX && linux_userret_p != NULL) > + (linux_userret_p)(td); > + > /* > * Let the scheduler adjust our priority etc. > */ > If it is needed we can add a new 'thread_userret' eventhandler rather than putting Linux-specific hooks into the code. > ==== //depot/projects/soc2006/rdivacky_linuxolator/sys/proc.h#2 (text+ko) ==== > > @@ -655,6 +655,7 @@ > #define P_HWPMC 0x800000 /* Process is using HWPMCs */ > > #define P_JAILED 0x1000000 /* Process is in jail. */ > +#define P_LINUX 0x2000000 /* linux binary */ > #define P_INEXEC 0x4000000 /* Process is in execve(). */ > #define P_STATCHILD 0x8000000 /* Child process stopped or exited. */ If you do the two above, then you might be able to come up with another test (compare p_sysvec?) instead of needing this flag since the only tests of it would be in the emulator code itself. -- John Baldwin From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:47:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A5B4716A66C; Thu, 6 Jul 2006 11:47: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 6A3FB16A669; Thu, 6 Jul 2006 11:47:41 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF44B43D46; Thu, 6 Jul 2006 11:47:40 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k66BlZ8t008534; Thu, 6 Jul 2006 07:47:39 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: "Wojciech A. Koszek" Date: Thu, 6 Jul 2006 07:46:39 -0400 User-Agent: KMail/1.9.1 References: <200607061128.k66BSqLl066758@repoman.freebsd.org> In-Reply-To: <200607061128.k66BSqLl066758@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607060746.40047.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [192.168.0.1]); Thu, 06 Jul 2006 07:47:39 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1586/Wed Jul 5 15:22:07 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 100724 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:47:41 -0000 On Thursday 06 July 2006 07:28, Wojciech A. Koszek wrote: > http://perforce.freebsd.org/chv.cgi?CH=100724 > > Change 100724 by wkoszek@wkoszek_laptop on 2006/07/06 11:28:17 > > Use more ARM-like style of sf_buf.h. But mips has a direct-map (either k0seg or k1seg). We should be using that for sfbuf's which is much more like the alpha or amd64 style. > Affected files ... > > .. //depot/projects/mips2/src/sys/mips/include/sf_buf.h#2 edit > > Differences ... > > ==== //depot/projects/mips2/src/sys/mips/include/sf_buf.h#2 (text+ko) ==== > > @@ -1,5 +1,5 @@ > /*- > - * Copyright (c) 2003, 2005 Alan L. Cox > + * Copyright (c) [year] [your name] > * All rights reserved. > * > * Redistribution and use in source and binary forms, with or without > @@ -23,36 +23,35 @@ > * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * > - * $FreeBSD: src/sys/amd64/include/sf_buf.h,v 1.3 2005/02/28 23:38:15 peter Exp $ > + * $Id$ > */ > - > #ifndef _MACHINE_SF_BUF_H_ > #define _MACHINE_SF_BUF_H_ > > -#include > -#include > -#include > +#include > + > +struct vm_page; > > -/* > - * On this machine, the only purpose for which sf_buf is used is to implement > - * an opaque pointer required by the machine-independent parts of the kernel. > - * That pointer references the vm_page that is "mapped" by the sf_buf. The > - * actual mapping is provided by the direct virtual-to-physical mapping. > - */ > -struct sf_buf; > +struct sf_buf { > + LIST_ENTRY(sf_buf) list_entry; /* list of buffers */ > + TAILQ_ENTRY(sf_buf) free_entry; /* list of buffers */ > + struct vm_page *m; /* currently mapped page */ > + vm_offset_t kva; /* va of mapping */ > + int ref_count; /* usage of this mapping */ > +}; > > static __inline vm_offset_t > sf_buf_kva(struct sf_buf *sf) > { > > - return (PHYS_TO_DMAP(VM_PAGE_TO_PHYS((vm_page_t)sf))); > + return (sf->kva); > } > > -static __inline vm_page_t > +static __inline struct vm_page * > sf_buf_page(struct sf_buf *sf) > { > > - return ((vm_page_t)sf); > + return (sf->m); > } > > #endif /* !_MACHINE_SF_BUF_H_ */ > -- John Baldwin From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:49:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 68DFB16A4E1; Thu, 6 Jul 2006 11:49:22 +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 2C38D16A4DE for ; Thu, 6 Jul 2006 11:49:22 +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 594E743D45 for ; Thu, 6 Jul 2006 11:49:21 +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 k66BnLL4067770 for ; Thu, 6 Jul 2006 11:49:21 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 k66BnKuV067767 for perforce@freebsd.org; Thu, 6 Jul 2006 11:49:20 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 11:49:20 GMT Message-Id: <200607061149.k66BnKuV067767@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 100728 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:49:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=100728 Change 100728 by rwatson@rwatson_zoo on 2006/07/06 11:48:45 Include file update. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/netinet/if_ether.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/igmp.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/in_pcb.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_divert.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_icmp.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_input.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_ipsec.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_mroute.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_options.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_output.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/raw_ip.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_input.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_output.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_subr.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_syncache.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/udp_usrreq.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/netinet/if_ether.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/igmp.c#2 (text+ko) ==== @@ -49,7 +49,7 @@ #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/in_pcb.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_divert.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_icmp.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_input.c#2 (text+ko) ==== @@ -40,7 +40,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_ipsec.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ #include #include #include -#include +#include /* XXXRW: Why is this needed? */ #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_mroute.c#2 (text+ko) ==== @@ -65,7 +65,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_options.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ #include #include -#include +#include #include /* #include */ #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_output.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/raw_ip.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_input.c#2 (text+ko) ==== @@ -41,7 +41,7 @@ #include #include -#include +#include #include #include #include /* for proc0 declaration */ ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_output.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_subr.c#2 (text+ko) ==== @@ -43,7 +43,7 @@ #include #include #include -#include +#include #include #include #ifdef INET6 ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_syncache.c#2 (text+ko) ==== @@ -46,7 +46,7 @@ #include #include #include -#include +#include #include #include #include /* for proc0 declaration */ ==== //depot/projects/trustedbsd/mac2/sys/netinet/udp_usrreq.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #include #include #include -#include +#include #include #include #include From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:53:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1883A16A4E0; Thu, 6 Jul 2006 11:53:28 +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 B2C4D16A4DE for ; Thu, 6 Jul 2006 11:53:27 +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 6C10C43D55 for ; Thu, 6 Jul 2006 11:53:27 +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 k66BrRPl068048 for ; Thu, 6 Jul 2006 11:53:27 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 k66BrRvV068044 for perforce@freebsd.org; Thu, 6 Jul 2006 11:53:27 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 11:53:27 GMT Message-Id: <200607061153.k66BrRvV068044@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 100729 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:53:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=100729 Change 100729 by rwatson@rwatson_zoo on 2006/07/06 11:52:52 Include file updates. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/netatalk/aarp.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netatalk/ddp_input.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netatalk/ddp_output.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/netinet6/nd6.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/nfsserver/nfs_srvsock.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/nfsserver/nfs_syscalls.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/ufs/ffs/ffs_vfsops.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/ufs/ufs/ufs_vnops.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/vm/vm_mmap.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/netatalk/aarp.c#2 (text+ko) ==== @@ -56,7 +56,7 @@ #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netatalk/ddp_input.c#2 (text+ko) ==== @@ -55,7 +55,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netatalk/ddp_output.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/netinet6/nd6.c#2 (text+ko) ==== @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/nfsserver/nfs_srvsock.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/nfsserver/nfs_syscalls.c#2 (text+ko) ==== @@ -46,7 +46,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/ufs/ffs/ffs_vfsops.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/ufs/ufs/ufs_vnops.c#2 (text+ko) ==== @@ -60,7 +60,7 @@ #include #include #include -#include +#include #include #include ==== //depot/projects/trustedbsd/mac2/sys/vm/vm_mmap.c#2 (text+ko) ==== @@ -60,7 +60,7 @@ #include #include #include -#include +#include #include #include #include From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:55:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2A8BF16A4DF; Thu, 6 Jul 2006 11:55:31 +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 E113A16A4DD for ; Thu, 6 Jul 2006 11:55:30 +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 9AF3343D45 for ; Thu, 6 Jul 2006 11:55:30 +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 k66BtU6l068325 for ; Thu, 6 Jul 2006 11:55:30 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 k66BtUCY068322 for perforce@freebsd.org; Thu, 6 Jul 2006 11:55:30 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 11:55:30 GMT Message-Id: <200607061155.k66BtUCY068322@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 100730 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:55:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=100730 Change 100730 by rwatson@rwatson_zoo on 2006/07/06 11:55:09 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket2.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_syscalls.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket.c#3 (text+ko) ==== @@ -251,7 +251,7 @@ if (so == NULL) return (NULL); #ifdef MAC - if (mac_init_socket(so, mflags) != 0) { + if (mac_socket_init(so, mflags) != 0) { uma_zfree(socket_zone, so); return (NULL); } @@ -288,7 +288,7 @@ do_setopt_accept_filter(so, NULL); #endif #ifdef MAC - mac_destroy_socket(so); + mac_socket_destroy(so); #endif crfree(so->so_cred); SOCKBUF_LOCK_DESTROY(&so->so_snd); @@ -344,7 +344,7 @@ so->so_cred = crhold(cred); so->so_proto = prp; #ifdef MAC - mac_create_socket(cred, so); + mac_socket_create(cred, so); #endif knlist_init(&so->so_rcv.sb_sel.si_note, SOCKBUF_MTX(&so->so_rcv), NULL, NULL, NULL); @@ -411,7 +411,7 @@ so->so_cred = crhold(head->so_cred); #ifdef MAC SOCK_LOCK(head); - mac_create_socket_from_socket(head, so); + mac_socket_accept(head, so); SOCK_UNLOCK(head); #endif knlist_init(&so->so_rcv.sb_sel.si_note, SOCKBUF_MTX(&so->so_rcv), @@ -2074,8 +2074,8 @@ sizeof extmac); if (error) goto bad; - error = mac_setsockopt_label(sopt->sopt_td->td_ucred, - so, &extmac); + error = mac_socket_setsockopt_label( + sopt->sopt_td->td_ucred, so, &extmac); #else error = EOPNOTSUPP; #endif @@ -2227,8 +2227,8 @@ sizeof(extmac)); if (error) return (error); - error = mac_getsockopt_label(sopt->sopt_td->td_ucred, - so, &extmac); + error = mac_socket_getsockopt_label( + sopt->sopt_td->td_ucred, so, &extmac); if (error) return (error); error = sooptcopyout(sopt, &extmac, sizeof extmac); @@ -2243,7 +2243,7 @@ sizeof(extmac)); if (error) return (error); - error = mac_getsockopt_peerlabel( + error = mac_socket_getsockopt_peerlabel( sopt->sopt_td->td_ucred, so, &extmac); if (error) return (error); ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket2.c#3 (text+ko) ==== @@ -43,7 +43,7 @@ #include /* for maxfiles */ #include #include -#include +#include /* XXXRW: Why is this needed? */ #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_syscalls.c#3 (text+ko) ==== @@ -161,7 +161,7 @@ int fd, error; #ifdef MAC - error = mac_check_socket_create(td->td_ucred, uap->domain, uap->type, + error = mac_socket_check_create(td->td_ucred, uap->domain, uap->type, uap->protocol); if (error) return (error); @@ -229,7 +229,7 @@ so = fp->f_data; #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_bind(td->td_ucred, so, sa); + error = mac_socket_check_bind(td->td_ucred, so, sa); SOCK_UNLOCK(so); if (error) goto done1; @@ -267,7 +267,7 @@ so = fp->f_data; #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_listen(td->td_ucred, so); + error = mac_socket_check_listen(td->td_ucred, so); SOCK_UNLOCK(so); if (error) goto done; @@ -326,7 +326,7 @@ } #ifdef MAC SOCK_LOCK(head); - error = mac_check_socket_accept(td->td_ucred, head); + error = mac_socket_check_accept(td->td_ucred, head); SOCK_UNLOCK(head); if (error != 0) goto done; @@ -531,7 +531,7 @@ } #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_connect(td->td_ucred, so, sa); + error = mac_socket_check_connect(td->td_ucred, so, sa); SOCK_UNLOCK(so); if (error) goto bad; @@ -591,7 +591,7 @@ #ifdef MAC /* We might want to have a separate check for socket pairs. */ - error = mac_check_socket_create(td->td_ucred, uap->domain, uap->type, + error = mac_socket_check_create(td->td_ucred, uap->domain, uap->type, uap->protocol); if (error) return (error); @@ -747,7 +747,7 @@ #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_send(td->td_ucred, so); + error = mac_socket_check_send(td->td_ucred, so); SOCK_UNLOCK(so); if (error) goto bad; @@ -961,7 +961,7 @@ #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_receive(td->td_ucred, so); + error = mac_socket_check_receive(td->td_ucred, so); SOCK_UNLOCK(so); if (error) { fdrop(fp, td); @@ -1863,7 +1863,7 @@ #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_send(td->td_ucred, so); + error = mac_socket_check_send(td->td_ucred, so); SOCK_UNLOCK(so); if (error) goto done; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:57:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 40A7C16A4DF; Thu, 6 Jul 2006 11:57:34 +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 1915F16A4DE for ; Thu, 6 Jul 2006 11:57:34 +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 B879943D45 for ; Thu, 6 Jul 2006 11:57:33 +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 k66BvXA6068451 for ; Thu, 6 Jul 2006 11:57:33 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 k66BvXvn068448 for perforce@freebsd.org; Thu, 6 Jul 2006 11:57:33 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 11:57:33 GMT Message-Id: <200607061157.k66BvXvn068448@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 100731 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:57:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100731 Change 100731 by rwatson@rwatson_zoo on 2006/07/06 11:56:41 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_devs.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_vfsops.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_vnops.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_devs.c#3 (text+ko) ==== @@ -181,7 +181,7 @@ de->de_mtime = de->de_atime = de->de_ctime; de->de_links = 1; #ifdef MAC - mac_init_devfsdirent(de); + mac_devfs_init(de); #endif return (de); } @@ -225,7 +225,7 @@ } #ifdef MAC - mac_create_devfs_directory(dmp->dm_mount, name, namelen, dd); + mac_devfs_create_directory(dmp->dm_mount, name, namelen, dd); #endif return (dd); } @@ -246,7 +246,7 @@ de->de_vnode = NULL; } #ifdef MAC - mac_destroy_devfsdirent(de); + mac_devfs_destroy(de); #endif if (de->de_inode > DEVFS_ROOTINO) { free_unr(devfs_inos, de->de_inode); @@ -417,7 +417,7 @@ de->de_inode = cdp->cdp_inode; de->de_cdp = cdp; #ifdef MAC - mac_create_devfs_device(cdp->cdp_c.si_cred, dm->dm_mount, + mac_devfs_create_device(cdp->cdp_c.si_cred, dm->dm_mount, &cdp->cdp_c, de); #endif de->de_dir = dd; ==== //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_vfsops.c#3 (text+ko) ==== @@ -41,7 +41,7 @@ #include #include #include -#include +#include /* XXXRW: Is this needed? */ #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/fs/devfs/devfs_vnops.c#3 (text+ko) ==== @@ -175,7 +175,7 @@ de->de_vnode = vp; vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); #ifdef MAC - mac_associate_vnode_devfs(mp, de, vp); + mac_devfs_vnode_associate(mp, de, vp); #endif *vpp = vp; return (0); @@ -1076,8 +1076,8 @@ vp = ap->a_vp; de = vp->v_data; - mac_relabel_vnode(ap->a_cred, vp, ap->a_label); - mac_update_devfsdirent(vp->v_mount, de, vp); + mac_vnode_relabel(ap->a_cred, vp, ap->a_label); + mac_devfs_update(vp->v_mount, de, vp); return (0); } @@ -1117,7 +1117,7 @@ bcopy(ap->a_target, de->de_symlink, i); sx_xlock(&dmp->dm_lock); #ifdef MAC - mac_create_devfs_symlink(ap->a_cnp->cn_cred, dmp->dm_mount, dd, de); + mac_devfs_create_symlink(ap->a_cnp->cn_cred, dmp->dm_mount, dd, de); #endif TAILQ_INSERT_TAIL(&dd->de_dlist, de, de_list); devfs_allocv(de, ap->a_dvp->v_mount, ap->a_vpp, td); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 11:58:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0C9CE16A4DF; Thu, 6 Jul 2006 11:58:36 +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 C73F316A4DD for ; Thu, 6 Jul 2006 11:58:35 +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 8F2C243D45 for ; Thu, 6 Jul 2006 11:58:35 +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 k66BwZA6068578 for ; Thu, 6 Jul 2006 11:58:35 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 k66BwZL3068575 for perforce@freebsd.org; Thu, 6 Jul 2006 11:58:35 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 11:58:35 GMT Message-Id: <200607061158.k66BwZL3068575@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 100732 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 11:58:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=100732 Change 100732 by rwatson@rwatson_zoo on 2006/07/06 11:57:44 Remove premature removal of ifndef on system calls, as mac.h needs to be included in kernel, and user space prototypes aren't desirbale. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac.h#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac.h#3 (text+ko) ==== @@ -68,6 +68,7 @@ typedef struct mac *mac_t; +#ifndef _KERNEL /* * Location of the userland MAC framework configuration file. mac.conf * binds policy names to shared libraries that understand those policies, @@ -102,5 +103,6 @@ int mac_syscall(const char *_policyname, int _call, void *_arg); int mac_to_text(mac_t mac, char **_text); __END_DECLS +#endif #endif /* !_SYS_MAC_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:00:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7520C16A51F; Thu, 6 Jul 2006 12:00:39 +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 0F91216A540 for ; Thu, 6 Jul 2006 12:00:39 +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 C383643D46 for ; Thu, 6 Jul 2006 12:00:38 +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 k66C0cgw068758 for ; Thu, 6 Jul 2006 12:00:38 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 k66C0caI068754 for perforce@freebsd.org; Thu, 6 Jul 2006 12:00:38 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 12:00:38 GMT Message-Id: <200607061200.k66C0caI068754@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 100733 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:00:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=100733 Change 100733 by rwatson@rwatson_zoo on 2006/07/06 11:59:55 Rename delete to unlink for vnodes, since that is what is being authorized. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#7 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#15 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#7 (text+ko) ==== @@ -337,8 +337,6 @@ int mac_vnode_check_chroot(struct ucred *cred, struct vnode *dvp); int mac_vnode_check_create(struct ucred *cred, struct vnode *dvp, struct componentname *cnp, struct vattr *vap); -int mac_vnode_check_delete(struct ucred *cred, struct vnode *dvp, - struct vnode *vp, struct componentname *cnp); int mac_vnode_check_deleteacl(struct ucred *cred, struct vnode *vp, acl_type_t type); int mac_vnode_check_deleteextattr(struct ucred *cred, struct vnode *vp, @@ -386,6 +384,8 @@ struct timespec atime, struct timespec mtime); int mac_vnode_check_stat(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp); +int mac_vnode_check_unlink(struct ucred *cred, struct vnode *dvp, + struct vnode *vp, struct componentname *cnp); int mac_vnode_check_write(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp); ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#15 (text+ko) ==== @@ -581,9 +581,6 @@ typedef int (*mpo_vnode_check_create_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp, struct vattr *vap); -typedef int (*mpo_vnode_check_delete_t)(struct ucred *cred, - struct vnode *dvp, struct label *dlabel, - struct vnode *vp, struct label *label, struct componentname *cnp); typedef int (*mpo_vnode_check_deleteacl_t)(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type); @@ -658,6 +655,9 @@ typedef int (*mpo_vnode_check_stat_t)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); +typedef int (*mpo_vnode_check_unlink_t)(struct ucred *cred, + struct vnode *dvp, struct label *dlabel, + struct vnode *vp, struct label *label, typedef int (*mpo_vnode_check_write_t)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); @@ -896,7 +896,6 @@ mpo_check_vnode_chdir_t mpo_check_vnode_chdir; mpo_check_vnode_chroot_t mpo_check_vnode_chroot; mpo_vnode_check_create_t mpo_vnode_check_create; - mpo_vnode_check_delete_t mpo_vnode_check_delete; mpo_vnode_check_deleteacl_t mpo_vnode_check_deleteacl; mpo_vnode_check_deleteextattr_t mpo_vnode_check_deleteextattr; mpo_vnode_check_exec_t mpo_vnode_check_exec; @@ -924,6 +923,7 @@ mpo_vnode_check_setowner_t mpo_vnode_check_setowner; mpo_vnode_check_setutimes_t mpo_vnode_check_setutimes; mpo_vnode_check_stat_t mpo_vnode_check_stat; + mpo_vnode_check_unlink_t mpo_vnode_check_unlink; mpo_vnode_check_write_t mpo_vnode_check_write; }; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:02:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 45DEE16A4E2; Thu, 6 Jul 2006 12:02:08 +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 F30F716A4DA; Thu, 6 Jul 2006 12:02:07 +0000 (UTC) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (eva.fit.vutbr.cz [147.229.10.14]) by mx1.FreeBSD.org (Postfix) with ESMTP id D954343D49; Thu, 6 Jul 2006 12:01:57 +0000 (GMT) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (localhost [127.0.0.1]) by eva.fit.vutbr.cz (envelope-from xdivac02@eva.fit.vutbr.cz) (8.13.7/8.13.7) with ESMTP id k66C1qoi028651 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Thu, 6 Jul 2006 14:01:52 +0200 (CEST) Received: (from xdivac02@localhost) by eva.fit.vutbr.cz (8.13.7/8.13.3/Submit) id k66C1qaO028650; Thu, 6 Jul 2006 14:01:52 +0200 (CEST) Date: Thu, 6 Jul 2006 14:01:52 +0200 From: Divacky Roman To: John Baldwin Message-ID: <20060706120152.GA28505@stud.fit.vutbr.cz> References: <200607061105.k66B5JKG065286@repoman.freebsd.org> <200607060744.55037.jhb@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200607060744.55037.jhb@freebsd.org> User-Agent: Mutt/1.4.2i X-Scanned-By: MIMEDefang 2.54 on 147.229.10.14 Cc: Perforce Change Reviews Subject: Re: PERFORCE change 100719 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:02:08 -0000 > > + /* we have to call linux exit hook */ > > + if (p->p_flag & P_LINUX && linux_proc_exit_p != NULL) > > + (linux_proc_exit_p)(td); > > MALLOC(p->p_ru, struct rusage *, sizeof(struct rusage), > > M_ZOMBIE, M_WAITOK); > > /* > > > > Please use a 'process_exit' eventhandler instead. You can test P_LINUX in > your handler and return right away for non-Linux procs. oh.. didnt notice.. thnx for telling me > > + /* linux userret */ > > + if (p->p_flag & P_LINUX && linux_userret_p != NULL) > > + (linux_userret_p)(td); > > + > > /* > > * Let the scheduler adjust our priority etc. > > */ > > > > If it is needed we can add a new 'thread_userret' eventhandler rather than > putting Linux-specific hooks into the code. sounds ok > > ==== //depot/projects/soc2006/rdivacky_linuxolator/sys/proc.h#2 (text+ko) ==== > > > > @@ -655,6 +655,7 @@ > > #define P_HWPMC 0x800000 /* Process is using HWPMCs */ > > > > #define P_JAILED 0x1000000 /* Process is in jail. */ > > +#define P_LINUX 0x2000000 /* linux binary */ > > #define P_INEXEC 0x4000000 /* Process is in execve(). */ > > #define P_STATCHILD 0x8000000 /* Child process stopped or exited. */ > > If you do the two above, then you might be able to come up with another test > (compare p_sysvec?) instead of needing this flag since the only tests of it > would be in the emulator code itself. yes.. it does not seem necessary now. what is p_sysvec? anyway - the code I commited has many issues I hope to fix soon (in hours) take this as WIP. From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:04:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B2C016A4E1; Thu, 6 Jul 2006 12:04:57 +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 4BAFC16A4DE for ; Thu, 6 Jul 2006 12:04:57 +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 B888B43D53 for ; Thu, 6 Jul 2006 12:04:50 +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 k66C4itp070168 for ; Thu, 6 Jul 2006 12:04:44 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 k66C4i0f070165 for perforce@freebsd.org; Thu, 6 Jul 2006 12:04:44 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 12:04:44 GMT Message-Id: <200607061204.k66C4i0f070165@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 100734 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:04:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=100734 Change 100734 by rwatson@rwatson_zoo on 2006/07/06 12:04:13 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/kern/init_main.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_acct.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_acl.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_environment.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_exec.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_exit.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_fork.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_jail.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_ktrace.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_linker.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/kern/init_main.c#3 (text+ko) ==== @@ -445,7 +445,7 @@ audit_proc_kproc0(p); #endif #ifdef MAC - mac_create_proc0(p->p_ucred); + mac_proc_create_swapper(p->p_ucred); #endif td->td_ucred = crhold(p->p_ucred); @@ -704,7 +704,7 @@ oldcred = initproc->p_ucred; crcopy(newcred, oldcred); #ifdef MAC - mac_create_proc1(newcred); + mac_proc_create_init(newcred); #endif #ifdef AUDIT audit_proc_init(initproc); ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_acct.c#3 (text+ko) ==== @@ -180,7 +180,7 @@ vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); #ifdef MAC - error = mac_check_system_acct(td->td_ucred, nd.ni_vp); + error = mac_system_check_acct(td->td_ucred, nd.ni_vp); if (error) { VOP_UNLOCK(nd.ni_vp, 0, td); vn_close(nd.ni_vp, flags, td->td_ucred, td); @@ -197,7 +197,7 @@ VFS_UNLOCK_GIANT(vfslocked); #ifdef MAC } else { - error = mac_check_system_acct(td->td_ucred, NULL); + error = mac_system_check_acct(td->td_ucred, NULL); if (error) return (error); #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_acl.c#3 (text+ko) ==== @@ -673,7 +673,7 @@ VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); #ifdef MAC - error = mac_check_vnode_setacl(td->td_ucred, vp, type, &inkernacl); + error = mac_vnode_check_setacl(td->td_ucred, vp, type, &inkernacl); if (error != 0) goto out; #endif @@ -699,7 +699,7 @@ VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); #ifdef MAC - error = mac_check_vnode_getacl(td->td_ucred, vp, type); + error = mac_vnode_check_getacl(td->td_ucred, vp, type); if (error != 0) goto out; #endif @@ -728,7 +728,7 @@ VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); #ifdef MAC - error = mac_check_vnode_deleteacl(td->td_ucred, vp, type); + error = mac_vnode_check_deleteacl(td->td_ucred, vp, type); if (error) goto out; #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_environment.c#3 (text+ko) ==== @@ -95,7 +95,7 @@ error = 0; if (uap->what == KENV_DUMP) { #ifdef MAC - error = mac_check_kenv_dump(td->td_ucred); + error = mac_kenv_check_dump(td->td_ucred); if (error) return (error); #endif @@ -138,7 +138,7 @@ switch (uap->what) { case KENV_GET: #ifdef MAC - error = mac_check_kenv_get(td->td_ucred, name); + error = mac_kenv_check_get(td->td_ucred, name); if (error) goto done; #endif @@ -171,7 +171,7 @@ goto done; } #ifdef MAC - error = mac_check_kenv_set(td->td_ucred, name, value); + error = mac_kenv_check_set(td->td_ucred, name, value); if (error == 0) #endif setenv(name, value); @@ -179,7 +179,7 @@ break; case KENV_UNSET: #ifdef MAC - error = mac_check_kenv_unset(td->td_ucred, name); + error = mac_kenv_check_unset(td->td_ucred, name); if (error) goto done; #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_exec.c#3 (text+ko) ==== @@ -437,7 +437,7 @@ NDFREE(ndp, NDF_ONLY_PNBUF); #ifdef MAC interplabel = mac_vnode_label_alloc(); - mac_copy_vnode_label(ndp->ni_vp->v_label, interplabel); + mac_vnode_copy_label(ndp->ni_vp->v_label, interplabel); #endif vput(ndp->ni_vp); vm_object_deallocate(imgp->object); @@ -1187,7 +1187,7 @@ return (error); #ifdef MAC - error = mac_check_vnode_exec(td->td_ucred, imgp->vp, imgp); + error = mac_vnode_check_exec(td->td_ucred, imgp->vp, imgp); if (error) return (error); #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_exit.c#3 (text+ko) ==== @@ -813,7 +813,7 @@ */ vm_waitproc(p); #ifdef MAC - mac_destroy_proc(p); + mac_proc_destroy(p); #endif #ifdef AUDIT audit_proc_free(p); ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_fork.c#3 (text+ko) ==== @@ -288,7 +288,7 @@ /* Allocate new proc. */ newproc = uma_zalloc(proc_zone, M_WAITOK); #ifdef MAC - mac_init_proc(newproc); + mac_proc_init(newproc); #endif #ifdef AUDIT audit_proc_alloc(newproc); @@ -758,7 +758,7 @@ td->td_ucred->cr_ruid); sx_xunlock(&allproc_lock); #ifdef MAC - mac_destroy_proc(newproc); + mac_proc_destroy(newproc); #endif #ifdef AUDIT audit_proc_free(newproc); ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_jail.c#3 (text+ko) ==== @@ -225,7 +225,7 @@ if ((error = change_dir(pr->pr_root, td)) != 0) goto e_unlock; #ifdef MAC - if ((error = mac_check_vnode_chroot(td->td_ucred, pr->pr_root))) + if ((error = mac_vnode_check_chroot(td->td_ucred, pr->pr_root))) goto e_unlock; #endif VOP_UNLOCK(pr->pr_root, 0, td); ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_ktrace.c#3 (text+ko) ==== @@ -949,7 +949,7 @@ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); (void)VOP_LEASE(vp, td, cred, LEASE_WRITE); #ifdef MAC - error = mac_check_vnode_write(cred, NOCRED, vp); + error = mac_vnode_check_write(cred, NOCRED, vp); if (error == 0) #endif error = VOP_WRITE(vp, &auio, IO_UNIT | IO_APPEND, cred); ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_linker.c#3 (text+ko) ==== @@ -552,7 +552,7 @@ if (securelevel > 0) return (EPERM); #ifdef MAC - error = mac_check_kld_unload(curthread->td_ucred); + error = mac_kld_check_unload(curthread->td_ucred); if (error) return (error); #endif @@ -985,7 +985,7 @@ int error; #ifdef MAC - error = mac_check_kld_stat(td->td_ucred); + error = mac_kld_check_stat(td->td_ucred); if (error) return (error); #endif @@ -1019,7 +1019,7 @@ int error = 0; #ifdef MAC - error = mac_check_kld_stat(td->td_ucred); + error = mac_kld_check_stat(td->td_ucred); if (error) return (error); #endif @@ -1065,7 +1065,7 @@ return (EINVAL); #ifdef MAC - error = mac_check_kld_stat(td->td_ucred); + error = mac_kld_check_stat(td->td_ucred); if (error) return (error); #endif @@ -1103,7 +1103,7 @@ int error = 0; #ifdef MAC - error = mac_check_kld_stat(td->td_ucred); + error = mac_kld_check_stat(td->td_ucred); if (error) return (error); #endif @@ -1138,7 +1138,7 @@ int error = 0; #ifdef MAC - error = mac_check_kld_stat(td->td_ucred); + error = mac_kld_check_stat(td->td_ucred); if (error) return (error); #endif @@ -1983,7 +1983,7 @@ int error; #ifdef MAC - error = mac_check_kld_stat(req->td->td_ucred); + error = mac_kld_check_stat(req->td->td_ucred); if (error) return (error); #endif From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:05:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D738F16A4E5; Thu, 6 Jul 2006 12:05:46 +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 B57C516A4E0 for ; Thu, 6 Jul 2006 12:05:46 +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 29AD043D5A for ; Thu, 6 Jul 2006 12:05:46 +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 k66C5ke1070258 for ; Thu, 6 Jul 2006 12:05:46 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 k66C5jhu070255 for perforce@freebsd.org; Thu, 6 Jul 2006 12:05:45 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 12:05:45 GMT Message-Id: <200607061205.k66C5jhu070255@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 100735 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:05:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=100735 Change 100735 by rwatson@rwatson_zoo on 2006/07/06 12:05:06 Correct error made when renaming _unlink. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#16 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#16 (text+ko) ==== @@ -581,7 +581,6 @@ typedef int (*mpo_vnode_check_create_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp, struct vattr *vap); - struct componentname *cnp); typedef int (*mpo_vnode_check_deleteacl_t)(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type); typedef int (*mpo_vnode_check_deleteextattr_t)(struct ucred *cred, @@ -658,6 +657,7 @@ typedef int (*mpo_vnode_check_unlink_t)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, + struct componentname *cnp); typedef int (*mpo_vnode_check_write_t)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:08:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C9D2016A4E1; Thu, 6 Jul 2006 12:08:50 +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 8DA5716A4DE for ; Thu, 6 Jul 2006 12:08:50 +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 4D0C343D46 for ; Thu, 6 Jul 2006 12:08:50 +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 k66C8oBD070438 for ; Thu, 6 Jul 2006 12:08:50 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 k66C8nJt070435 for perforce@freebsd.org; Thu, 6 Jul 2006 12:08:49 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 12:08:49 GMT Message-Id: <200607061208.k66C8nJt070435@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 100736 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:08:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100736 Change 100736 by rwatson@rwatson_zoo on 2006/07/06 12:08:24 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_internal.h#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_internal.h#2 (text+ko) ==== @@ -2,6 +2,7 @@ * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001 Ilmar S. Habibulin * Copyright (c) 2001-2004 Networks Associates Technology, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson and Ilmar Habibulin for the @@ -113,30 +114,30 @@ struct label *mac_socket_label_alloc(int flag); void mac_socket_label_free(struct label *label); -int mac_check_cred_relabel(struct ucred *cred, struct label *newlabel); -int mac_externalize_cred_label(struct label *label, char *elements, +int mac_cred_check_relabel(struct ucred *cred, struct label *newlabel); +int mac_cred_externalize_label(struct label *label, char *elements, char *outbuf, size_t outbuflen); -int mac_internalize_cred_label(struct label *label, char *string); -void mac_relabel_cred(struct ucred *cred, struct label *newlabel); +int mac_cred_internalize_label(struct label *label, char *string); +void mac_cred_relabel(struct ucred *cred, struct label *newlabel); struct label *mac_mbuf_to_label(struct mbuf *m); -void mac_copy_pipe_label(struct label *src, struct label *dest); -int mac_externalize_pipe_label(struct label *label, char *elements, +void mac_pipe_copy_label(struct label *src, struct label *dest); +int mac_pipe_externalize_label(struct label *label, char *elements, char *outbuf, size_t outbuflen); -int mac_internalize_pipe_label(struct label *label, char *string); +int mac_pipe_internalize_label(struct label *label, char *string); int mac_socket_label_set(struct ucred *cred, struct socket *so, struct label *label); -void mac_copy_socket_label(struct label *src, struct label *dest); -int mac_externalize_socket_label(struct label *label, char *elements, +void mac_socket_copy_label(struct label *src, struct label *dest); +int mac_socket_externalize_label(struct label *label, char *elements, char *outbuf, size_t outbuflen); -int mac_internalize_socket_label(struct label *label, char *string); +int mac_socket_internalize_label(struct label *label, char *string); -int mac_externalize_vnode_label(struct label *label, char *elements, +int mac_vnode_externalize_label(struct label *label, char *elements, char *outbuf, size_t outbuflen); -int mac_internalize_vnode_label(struct label *label, char *string); -void mac_check_vnode_mmap_downgrade(struct ucred *cred, struct vnode *vp, +int mac_vnode_internalize_label(struct label *label, char *string); +void mac_vnode_check_mmap_downgrade(struct ucred *cred, struct vnode *vp, int *prot); int vn_setlabel(struct vnode *vp, struct label *intlabel, struct ucred *cred); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:11:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 20BEB16A4E1; Thu, 6 Jul 2006 12:11:55 +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 EFA4516A4DF for ; Thu, 6 Jul 2006 12:11:54 +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 A332D43D46 for ; Thu, 6 Jul 2006 12:11:54 +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 k66CBsxW070658 for ; Thu, 6 Jul 2006 12:11:54 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 k66CBsK2070655 for perforce@freebsd.org; Thu, 6 Jul 2006 12:11:54 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 12:11:54 GMT Message-Id: <200607061211.k66CBsK2070655@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 100737 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:11:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=100737 Change 100737 by rwatson@rwatson_zoo on 2006/07/06 12:11:04 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/kern/kern_mac.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_mac.c#3 (text+ko) ==== @@ -2,7 +2,7 @@ * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001 Ilmar S. Habibulin * Copyright (c) 2001-2005 Networks Associates Technology, Inc. - * Copyright (c) 2005 SPARTA, Inc. + * Copyright (c) 2005-2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson and Ilmar Habibulin for the @@ -456,8 +456,8 @@ LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); /* Per-policy initialization. */ - if (mpc->mpc_ops->mpo_init != NULL) - (*(mpc->mpc_ops->mpo_init))(mpc); + if (mpc->mpc_ops->mpo_policy_init != NULL) + (*(mpc->mpc_ops->mpo_policy_init))(mpc); mac_policy_updateflags(); printf("Security policy loaded: %s (%s)\n", mpc->mpc_fullname, @@ -499,8 +499,8 @@ mac_policy_release_exclusive(); return (EBUSY); } - if (mpc->mpc_ops->mpo_destroy != NULL) - (*(mpc->mpc_ops->mpo_destroy))(mpc); + if (mpc->mpc_ops->mpo_policy_destroy != NULL) + (*(mpc->mpc_ops->mpo_policy_destroy))(mpc); LIST_REMOVE(mpc, mpc_list); mpc->mpc_runtime_flags &= ~MPC_RUNTIME_FLAG_REGISTERED; @@ -622,7 +622,7 @@ } buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_cred_label(tcred->cr_label, elements, + error = mac_cred_externalize_label(tcred->cr_label, elements, buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -659,7 +659,7 @@ } buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_cred_label(td->td_ucred->cr_label, + error = mac_cred_externalize_label(td->td_ucred->cr_label, elements, buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -698,7 +698,7 @@ } intlabel = mac_cred_label_alloc(); - error = mac_internalize_cred_label(intlabel, buffer); + error = mac_cred_internalize_label(intlabel, buffer); free(buffer, M_MACTEMP); if (error) goto out; @@ -709,7 +709,7 @@ PROC_LOCK(p); oldcred = p->p_ucred; - error = mac_check_cred_relabel(oldcred, intlabel); + error = mac_cred_check_relabel(oldcred, intlabel); if (error) { PROC_UNLOCK(p); crfree(newcred); @@ -718,7 +718,7 @@ setsugid(p); crcopy(newcred, oldcred); - mac_relabel_cred(newcred, intlabel); + mac_cred_relabel(newcred, intlabel); p->p_ucred = newcred; /* @@ -784,10 +784,10 @@ intlabel = mac_vnode_label_alloc(); vfslocked = VFS_LOCK_GIANT(vp->v_mount); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - mac_copy_vnode_label(vp->v_label, intlabel); + mac_vnode_copy_label(vp->v_label, intlabel); VOP_UNLOCK(vp, 0, td); VFS_UNLOCK_GIANT(vfslocked); - error = mac_externalize_vnode_label(intlabel, elements, + error = mac_vnode_externalize_label(intlabel, elements, buffer, mac.m_buflen); mac_vnode_label_free(intlabel); break; @@ -796,9 +796,9 @@ pipe = fp->f_data; intlabel = mac_pipe_label_alloc(); PIPE_LOCK(pipe); - mac_copy_pipe_label(pipe->pipe_pair->pp_label, intlabel); + mac_pipe_copy_label(pipe->pipe_pair->pp_label, intlabel); PIPE_UNLOCK(pipe); - error = mac_externalize_pipe_label(intlabel, elements, + error = mac_pipe_externalize_label(intlabel, elements, buffer, mac.m_buflen); mac_pipe_label_free(intlabel); break; @@ -808,10 +808,10 @@ intlabel = mac_socket_label_alloc(M_WAITOK); NET_LOCK_GIANT(); SOCK_LOCK(so); - mac_copy_socket_label(so->so_label, intlabel); + mac_socket_copy_label(so->so_label, intlabel); SOCK_UNLOCK(so); NET_UNLOCK_GIANT(); - error = mac_externalize_socket_label(intlabel, elements, + error = mac_socket_externalize_label(intlabel, elements, buffer, mac.m_buflen); mac_socket_label_free(intlabel); break; @@ -865,8 +865,8 @@ intlabel = mac_vnode_label_alloc(); vfslocked = NDHASGIANT(&nd); - mac_copy_vnode_label(nd.ni_vp->v_label, intlabel); - error = mac_externalize_vnode_label(intlabel, elements, buffer, + mac_vnode_copy_label(nd.ni_vp->v_label, intlabel); + error = mac_vnode_externalize_label(intlabel, elements, buffer, mac.m_buflen); NDFREE(&nd, 0); @@ -918,8 +918,8 @@ intlabel = mac_vnode_label_alloc(); vfslocked = NDHASGIANT(&nd); - mac_copy_vnode_label(nd.ni_vp->v_label, intlabel); - error = mac_externalize_vnode_label(intlabel, elements, buffer, + mac_vnode_copy_label(nd.ni_vp->v_label, intlabel); + error = mac_vnode_externalize_label(intlabel, elements, buffer, mac.m_buflen); NDFREE(&nd, 0); VFS_UNLOCK_GIANT(vfslocked); @@ -974,7 +974,7 @@ case DTYPE_FIFO: case DTYPE_VNODE: intlabel = mac_vnode_label_alloc(); - error = mac_internalize_vnode_label(intlabel, buffer); + error = mac_vnode_internalize_label(intlabel, buffer); if (error) { mac_vnode_label_free(intlabel); break; @@ -997,7 +997,7 @@ case DTYPE_PIPE: intlabel = mac_pipe_label_alloc(); - error = mac_internalize_pipe_label(intlabel, buffer); + error = mac_pipe_internalize_label(intlabel, buffer); if (error == 0) { pipe = fp->f_data; PIPE_LOCK(pipe); @@ -1010,7 +1010,7 @@ case DTYPE_SOCKET: intlabel = mac_socket_label_alloc(M_WAITOK); - error = mac_internalize_socket_label(intlabel, buffer); + error = mac_socket_internalize_label(intlabel, buffer); if (error == 0) { so = fp->f_data; NET_LOCK_GIANT(); @@ -1059,7 +1059,7 @@ } intlabel = mac_vnode_label_alloc(); - error = mac_internalize_vnode_label(intlabel, buffer); + error = mac_vnode_internalize_label(intlabel, buffer); free(buffer, M_MACTEMP); if (error) goto out; @@ -1113,7 +1113,7 @@ } intlabel = mac_vnode_label_alloc(); - error = mac_internalize_vnode_label(intlabel, buffer); + error = mac_vnode_internalize_label(intlabel, buffer); free(buffer, M_MACTEMP); if (error) goto out; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:43:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1944D16A54B; Thu, 6 Jul 2006 12:43: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 B550016A548 for ; Thu, 6 Jul 2006 12:43:40 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E6EAF43D6B for ; Thu, 6 Jul 2006 12:43:34 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66ChYEF072587 for ; Thu, 6 Jul 2006 12:43:34 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66ChY2D072584 for perforce@freebsd.org; Thu, 6 Jul 2006 12:43:34 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 12:43:34 GMT Message-Id: <200607061243.k66ChY2D072584@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100739 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:43:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=100739 Change 100739 by wkoszek@wkoszek_laptop on 2006/07/06 12:43:01 Remove COMPAT_43 from QEMU configuration file, as we can live without it for now, just like amd64. Affected files ... .. //depot/projects/mips2/src/sys/mips/conf/QEMU#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/conf/QEMU#2 (text+ko) ==== @@ -48,7 +48,6 @@ options CD9660 #ISO 9660 Filesystem #options PROCFS #Process filesystem (requires PSEUDOFS) options PSEUDOFS #Pseudo-filesystem framework -options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI #options KTRACE #ktrace(1) support options SYSVSHM #SYSV-style shared memory From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:51:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2721416A4E0; Thu, 6 Jul 2006 12:51:46 +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 F36F016A4DA for ; Thu, 6 Jul 2006 12:51:45 +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 9988643D45 for ; Thu, 6 Jul 2006 12:51:45 +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 k66Cpjap080720 for ; Thu, 6 Jul 2006 12:51:45 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 k66CpjhU080717 for perforce@freebsd.org; Thu, 6 Jul 2006 12:51:45 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 12:51:45 GMT Message-Id: <200607061251.k66CpjhU080717@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 100740 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:51:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=100740 Change 100740 by rwatson@rwatson_zoo on 2006/07/06 12:51:34 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/kern/kern_mbuf.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_prot.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_shutdown.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_sysctl.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_time.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/link_elf.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sys_pipe.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sys_socket.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_mbuf.c#3 (text+ko) ==== @@ -328,7 +328,7 @@ SLIST_INIT(&m->m_pkthdr.tags); #ifdef MAC /* If the label init fails, fail the alloc */ - error = mac_init_mbuf(m, how); + error = mac_mbuf_init(m, how); if (error) return (error); #endif @@ -526,7 +526,7 @@ SLIST_INIT(&m->m_pkthdr.tags); #ifdef MAC /* If the label init fails, fail the alloc */ - error = mac_init_mbuf(m, how); + error = mac_mbuf_init(m, how); if (error) return (error); #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_prot.c#3 (text+ko) ==== @@ -505,7 +505,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_setuid(p, oldcred, uid); + error = mac_proc_check_setuid(p, oldcred, uid); if (error) goto fail; #endif @@ -619,7 +619,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_seteuid(p, oldcred, euid); + error = mac_proc_check_seteuid(p, oldcred, euid); if (error) goto fail; #endif @@ -675,7 +675,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_setgid(p, oldcred, gid); + error = mac_proc_check_setgid(p, oldcred, gid); if (error) goto fail; #endif @@ -776,7 +776,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_setegid(p, oldcred, egid); + error = mac_proc_check_setegid(p, oldcred, egid); if (error) goto fail; #endif @@ -835,7 +835,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_setgroups(p, oldcred, ngrp, + error = mac_proc_check_setgroups(p, oldcred, ngrp, tempcred->cr_groups); if (error) goto fail; @@ -907,7 +907,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_setreuid(p, oldcred, ruid, euid); + error = mac_proc_check_setreuid(p, oldcred, ruid, euid); if (error) goto fail; #endif @@ -975,7 +975,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_setregid(p, oldcred, rgid, egid); + error = mac_proc_check_setregid(p, oldcred, rgid, egid); if (error) goto fail; #endif @@ -1050,7 +1050,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_setresuid(p, oldcred, ruid, euid, suid); + error = mac_proc_check_setresuid(p, oldcred, ruid, euid, suid); if (error) goto fail; #endif @@ -1131,7 +1131,7 @@ oldcred = p->p_ucred; #ifdef MAC - error = mac_check_proc_setresgid(p, oldcred, rgid, egid, sgid); + error = mac_proc_check_setresgid(p, oldcred, rgid, egid, sgid); if (error) goto fail; #endif @@ -1481,7 +1481,7 @@ if ((error = prison_check(u1, u2))) return (error); #ifdef MAC - if ((error = mac_check_cred_visible(u1, u2))) + if ((error = mac_cred_check_visible(u1, u2))) return (error); #endif if ((error = cr_seeotheruids(u1, u2))) @@ -1542,7 +1542,7 @@ if (error) return (error); #ifdef MAC - if ((error = mac_check_proc_signal(cred, proc, signum))) + if ((error = mac_proc_check_signal(cred, proc, signum))) return (error); #endif if ((error = cr_seeotheruids(cred, proc->p_ucred))) @@ -1661,7 +1661,7 @@ if ((error = prison_check(td->td_ucred, p->p_ucred))) return (error); #ifdef MAC - if ((error = mac_check_proc_sched(td->td_ucred, p))) + if ((error = mac_proc_check_sched(td->td_ucred, p))) return (error); #endif if ((error = cr_seeotheruids(td->td_ucred, p->p_ucred))) @@ -1724,7 +1724,7 @@ if ((error = prison_check(td->td_ucred, p->p_ucred))) return (error); #ifdef MAC - if ((error = mac_check_proc_debug(td->td_ucred, p))) + if ((error = mac_proc_check_debug(td->td_ucred, p))) return (error); #endif if ((error = cr_seeotheruids(td->td_ucred, p->p_ucred))) @@ -1805,7 +1805,7 @@ return (ENOENT); #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_visible(cred, so); + error = mac_socket_check_visible(cred, so); SOCK_UNLOCK(so); if (error) return (error); @@ -1837,7 +1837,7 @@ if ((error = prison_check(td->td_ucred, p->p_ucred))) return (error); #ifdef MAC - if ((error = mac_check_proc_wait(td->td_ucred, p))) + if ((error = mac_proc_check_wait(td->td_ucred, p))) return (error); #endif #if 0 @@ -1861,7 +1861,7 @@ MALLOC(cr, struct ucred *, sizeof(*cr), M_CRED, M_WAITOK | M_ZERO); refcount_init(&cr->cr_ref, 1); #ifdef MAC - mac_init_cred(cr); + mac_cred_init(cr); #endif return (cr); } @@ -1905,7 +1905,7 @@ if (jailed(cr)) prison_free(cr->cr_prison); #ifdef MAC - mac_destroy_cred(cr); + mac_cred_destroy(cr); #endif FREE(cr, M_CRED); } @@ -1939,7 +1939,7 @@ if (jailed(dest)) prison_hold(dest->cr_prison); #ifdef MAC - mac_copy_cred(src, dest); + mac_cred_copy(src, dest); #endif } ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_shutdown.c#3 (text+ko) ==== @@ -160,7 +160,7 @@ error = 0; #ifdef MAC - error = mac_check_system_reboot(td->td_ucred, uap->opt); + error = mac_system_check_reboot(td->td_ucred, uap->opt); #endif if (error == 0) error = suser(td); ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_sysctl.c#3 (text+ko) ==== @@ -1273,7 +1273,7 @@ arg2 = oid->oid_arg2; } #ifdef MAC - error = mac_check_system_sysctl(req->td->td_ucred, oid, arg1, arg2, + error = mac_system_check_sysctl(req->td->td_ucred, oid, arg1, arg2, req); if (error != 0) return (error); ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_time.c#3 (text+ko) ==== @@ -281,7 +281,7 @@ int error; #ifdef MAC - error = mac_check_system_settime(td->td_ucred); + error = mac_system_check_settime(td->td_ucred); if (error) return (error); #endif @@ -499,7 +499,7 @@ int error; #ifdef MAC - error = mac_check_system_settime(td->td_ucred); + error = mac_system_check_settime(td->td_ucred); if (error) return (error); #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/link_elf.c#3 (text+ko) ==== @@ -570,7 +570,7 @@ vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); #ifdef MAC - error = mac_check_kld_load(curthread->td_ucred, nd.ni_vp); + error = mac_kld_check_load(curthread->td_ucred, nd.ni_vp); if (error) { firstpage = NULL; goto out; ==== //depot/projects/trustedbsd/mac2/sys/kern/sys_pipe.c#3 (text+ko) ==== @@ -340,11 +340,11 @@ #ifdef MAC /* * The MAC label is shared between the connected endpoints. As a - * result mac_init_pipe() and mac_create_pipe() are called once + * result mac_pipe_init() and mac_create_pipe() are called once * for the pair, and not on the endpoints. */ - mac_init_pipe(pp); - mac_create_pipe(td->td_ucred, pp); + mac_pipe_init(pp); + mac_pipe_create(td->td_ucred, pp); #endif rpipe = &pp->pp_rpipe; wpipe = &pp->pp_wpipe; @@ -593,7 +593,7 @@ goto unlocked_error; #ifdef MAC - error = mac_check_pipe_read(active_cred, rpipe->pipe_pair); + error = mac_pipe_check_read(active_cred, rpipe->pipe_pair); if (error) goto locked_error; #endif @@ -1003,7 +1003,7 @@ return (EPIPE); } #ifdef MAC - error = mac_check_pipe_write(active_cred, wpipe->pipe_pair); + error = mac_pipe_check_write(active_cred, wpipe->pipe_pair); if (error) { pipeunlock(wpipe); PIPE_UNLOCK(rpipe); @@ -1268,7 +1268,7 @@ PIPE_LOCK(mpipe); #ifdef MAC - error = mac_check_pipe_ioctl(active_cred, mpipe->pipe_pair, cmd, data); + error = mac_pipe_check_ioctl(active_cred, mpipe->pipe_pair, cmd, data); if (error) { PIPE_UNLOCK(mpipe); return (error); @@ -1342,7 +1342,7 @@ wpipe = rpipe->pipe_peer; PIPE_LOCK(rpipe); #ifdef MAC - error = mac_check_pipe_poll(active_cred, rpipe->pipe_pair); + error = mac_pipe_check_poll(active_cred, rpipe->pipe_pair); if (error) goto locked_error; #endif @@ -1398,7 +1398,7 @@ int error; PIPE_LOCK(pipe); - error = mac_check_pipe_stat(active_cred, pipe->pipe_pair); + error = mac_pipe_check_stat(active_cred, pipe->pipe_pair); PIPE_UNLOCK(pipe); if (error) return (error); @@ -1527,7 +1527,7 @@ if (ppipe->pipe_present == 0) { PIPE_UNLOCK(cpipe); #ifdef MAC - mac_destroy_pipe(pp); + mac_pipe_destroy(pp); #endif uma_zfree(pipe_zone, cpipe->pipe_pair); } else ==== //depot/projects/trustedbsd/mac2/sys/kern/sys_socket.c#3 (text+ko) ==== @@ -81,7 +81,7 @@ NET_LOCK_GIANT(); #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_receive(active_cred, so); + error = mac_socket_check_receive(active_cred, so); SOCK_UNLOCK(so); if (error) { NET_UNLOCK_GIANT(); @@ -108,7 +108,7 @@ NET_LOCK_GIANT(); #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_send(active_cred, so); + error = mac_socket_check_send(active_cred, so); SOCK_UNLOCK(so); if (error) { NET_UNLOCK_GIANT(); @@ -236,7 +236,7 @@ NET_LOCK_GIANT(); #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_poll(active_cred, so); + error = mac_socket_check_poll(active_cred, so); SOCK_UNLOCK(so); if (error) { NET_UNLOCK_GIANT(); @@ -265,7 +265,7 @@ NET_LOCK_GIANT(); #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_stat(active_cred, so); + error = mac_socket_check_stat(active_cred, so); SOCK_UNLOCK(so); if (error) { NET_UNLOCK_GIANT(); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 12:56:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ED85D16A503; Thu, 6 Jul 2006 12:56:52 +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 B00C916A500 for ; Thu, 6 Jul 2006 12:56:52 +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 59F2E43D46 for ; Thu, 6 Jul 2006 12:56:52 +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 k66CuqVw081027 for ; Thu, 6 Jul 2006 12:56:52 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 k66CuqTe081024 for perforce@freebsd.org; Thu, 6 Jul 2006 12:56:52 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 12:56:52 GMT Message-Id: <200607061256.k66CuqTe081024@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 100741 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 12:56:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=100741 Change 100741 by rwatson@rwatson_zoo on 2006/07/06 12:56:11 Further system v ipc renaming. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#8 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#17 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#8 (text+ko) ==== @@ -262,54 +262,54 @@ int mac_socket_setsockopt_label(struct ucred *cred, struct socket *so, struct mac *extmac); -void mac_sysv_msq_init(struct msqid_kernel*); -void mac_sysv_msq_destroy(struct msqid_kernel *); -void mac_sysv_msq_cleanup(struct msqid_kernel *msqkptr); -void mac_sysv_msq_create_msg(struct ucred *cred, +void mac_sysvmsq_init(struct msqid_kernel*); +void mac_sysvmsq_destroy(struct msqid_kernel *); +void mac_sysvmsq_cleanup(struct msqid_kernel *msqkptr); +void mac_sysvmsq_create_msg(struct ucred *cred, struct msqid_kernel *msqkptr, struct msg *msgptr); -void mac_sysv_msq_create(struct ucred *cred, +void mac_sysvmsq_create(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_sysv_msq_check_msgmsq(struct ucred *cred, struct msg *msgptr, +int mac_sysvmsq_check_msgmsq(struct ucred *cred, struct msg *msgptr, struct msqid_kernel *msqkptr); -int mac_sysv_msq_check_msgrcv(struct ucred *cred, struct msg *msgptr); -int mac_sysv_msq_check_msgrmid(struct ucred *cred, struct msg *msgptr); -int mac_sysv_msq_check_msqget(struct ucred *cred, +int mac_sysvmsq_check_msgrcv(struct ucred *cred, struct msg *msgptr); +int mac_sysvmsq_check_msgrmid(struct ucred *cred, struct msg *msgptr); +int mac_sysvmsq_check_msqget(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_sysv_msq_check_msqsnd(struct ucred *cred, +int mac_sysvmsq_check_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_sysv_msq_check_msqrcv(struct ucred *cred, +int mac_sysvmsq_check_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_sysv_msq_check_msqctl(struct ucred *cred, +int mac_sysvmsq_check_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, int cmd); -void mac_sysv_msg_init(struct msg *); -void mac_sysv_msg_destroy(struct msg *); -void mac_sysv_msg_cleanup(struct msg *msgptr); +void mac_sysvmsg_init(struct msg *); +void mac_sysvmsg_destroy(struct msg *); +void mac_sysvmsg_cleanup(struct msg *msgptr); -void mac_sysv_sem_init(struct semid_kernel*); -void mac_sysv_sem_destroy(struct semid_kernel *); -void mac_sysv_sem_create(struct ucred *cred, +void mac_sysvsem_init(struct semid_kernel*); +void mac_sysvsem_destroy(struct semid_kernel *); +void mac_sysvsem_create(struct ucred *cred, struct semid_kernel *semakptr); -void mac_sysv_sem_cleanup_sysv_sem(struct semid_kernel *semakptr); -int mac_sysv_sem_check_semctl(struct ucred *cred, +void mac_sysvsem_cleanup_sysvsem(struct semid_kernel *semakptr); +int mac_sysvsem_check_semctl(struct ucred *cred, struct semid_kernel *semakptr, int cmd); -int mac_sysv_sem_check_semget(struct ucred *cred, +int mac_sysvsem_check_semget(struct ucred *cred, struct semid_kernel *semakptr); -int mac_sysv_sem_check_semop(struct ucred *cred, +int mac_sysvsem_check_semop(struct ucred *cred, struct semid_kernel *semakptr, size_t accesstype); -void mac_sysv_shm_init(struct shmid_kernel*); -void mac_sysv_shm_destroy(struct shmid_kernel *); -void mac_sysv_shm_create(struct ucred *cred, +void mac_sysvshm_init(struct shmid_kernel*); +void mac_sysvshm_destroy(struct shmid_kernel *); +void mac_sysvshm_create(struct ucred *cred, struct shmid_kernel *shmsegptr); -void mac_sysv_shm_cleanup(struct shmid_kernel *shmsegptr); -int mac_sysv_shm_check_shmat(struct ucred *cred, +void mac_sysvshm_cleanup(struct shmid_kernel *shmsegptr); +int mac_sysvshm_check_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, int shmflg); -int mac_sysv_shm_check_shmctl(struct ucred *cred, +int mac_sysvshm_check_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, int cmd); -int mac_sysv_shm_check_shmdt(struct ucred *cred, +int mac_sysvshm_check_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr); -int mac_sysv_shm_check_shmget(struct ucred *cred, +int mac_sysvshm_check_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, int shmflg); int mac_execve_enter(struct image_params *imgp, struct mac *mac_p); ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#17 (text+ko) ==== @@ -390,72 +390,72 @@ /* * Object: struct msqid_kernel (System V message queue) */ -typedef void (*mpo_sysv_msq_init_label_t)(struct label *label); -typedef void (*mpo_sysv_msq_destroy_t)(struct label *label); -typedef void (*mpo_sysv_msq_cleanup_t)(struct label *msqlabel); -typedef void (*mpo_sysv_msq_create_msg_t)(struct ucred *cred, +typedef void (*mpo_sysvmsq_init_label_t)(struct label *label); +typedef void (*mpo_sysvmsq_destroy_t)(struct label *label); +typedef void (*mpo_sysvmsq_cleanup_t)(struct label *msqlabel); +typedef void (*mpo_sysvmsq_create_msg_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel, struct msg *msgptr, struct label *msglabel); -typedef void (*mpo_sysv_msq_create_t)(struct ucred *cred, +typedef void (*mpo_sysvmsq_create_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel); -typedef int (*mpo_sysv_msq_check_msgmsq_t)(struct ucred *cred, +typedef int (*mpo_sysvmsq_check_msgmsq_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msq_check_msgrcv_t)(struct ucred *cred, +typedef int (*mpo_sysvmsq_check_msgrcv_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel); -typedef int (*mpo_sysv_msq_check_msgrmid_t)(struct ucred *cred, +typedef int (*mpo_sysvmsq_check_msgrmid_t)(struct ucred *cred, struct msg *msgptr, struct label *msglabel); -typedef int (*mpo_sysv_msq_check_msqget_t)(struct ucred *cred, +typedef int (*mpo_sysvmsq_check_msqget_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msq_check_msqsnd_t)(struct ucred *cred, +typedef int (*mpo_sysvmsq_check_msqsnd_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msq_check_msqrcv_t)(struct ucred *cred, +typedef int (*mpo_sysvmsq_check_msqrcv_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel); -typedef int (*mpo_sysv_msq_check_msqctl_t)(struct ucred *cred, +typedef int (*mpo_sysvmsq_check_msqctl_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel, int cmd); /* * Object: struct msg (System V message) */ -typedef void (*mpo_sysv_msg_init_label_t)(struct label *label); -typedef void (*mpo_sysv_msg_destroy_label_t)(struct label *label); -typedef void (*mpo_sysv_msg_cleanup_t)(struct label *msglabel); +typedef void (*mpo_sysvmsg_init_label_t)(struct label *label); +typedef void (*mpo_sysvmsg_destroy_label_t)(struct label *label); +typedef void (*mpo_sysvmsg_cleanup_t)(struct label *msglabel); /* * Object: struct semid_kernel (System V IPC semaphore) */ -typedef void (*mpo_sysv_sem_init_label_t)(struct label *label); -typedef void (*mpo_sysv_sem_destroy_label_t)(struct label *label); -typedef void (*mpo_sysv_sem_cleanup_t)(struct label *semalabel); -typedef void (*mpo_sysv_sem_create_t)(struct ucred *cred, +typedef void (*mpo_sysvsem_init_label_t)(struct label *label); +typedef void (*mpo_sysvsem_destroy_label_t)(struct label *label); +typedef void (*mpo_sysvsem_cleanup_t)(struct label *semalabel); +typedef void (*mpo_sysvsem_create_t)(struct ucred *cred, struct semid_kernel *semakptr, struct label *semalabel); -typedef int (*mpo_sysv_sem_check_semctl_t)(struct ucred *cred, +typedef int (*mpo_sysvsem_check_semctl_t)(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel, int cmd); -typedef int (*mpo_sysv_sem_check_semget_t)(struct ucred *cred, +typedef int (*mpo_sysvsem_check_semget_t)(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel); -typedef int (*mpo_sysv_sem_check_semop_t)(struct ucred *cred, +typedef int (*mpo_sysvsem_check_semop_t)(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel, size_t accesstype); /* * Object: struct shmid_kernel (System V shared memory segment) */ -typedef void (*mpo_sysv_shm_init_label_t)(struct label *label); -typedef void (*mpo_sysv_shm_destroy_label_t)(struct label *label); -typedef void (*mpo_sysv_shm_cleanup_t)(struct label *shmlabel); -typedef void (*mpo_sysv_shm_create_t)(struct ucred *cred, +typedef void (*mpo_sysvshm_init_label_t)(struct label *label); +typedef void (*mpo_sysvshm_destroy_label_t)(struct label *label); +typedef void (*mpo_sysvshm_cleanup_t)(struct label *shmlabel); +typedef void (*mpo_sysvshm_create_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmlabel); -typedef int (*mpo_sysv_shm_check_shmat_t)(struct ucred *cred, +typedef int (*mpo_sysvshm_check_shmat_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg); -typedef int (*mpo_sysv_shm_check_shmctl_t)(struct ucred *cred, +typedef int (*mpo_sysvshm_check_shmctl_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int cmd); -typedef int (*mpo_sysv_shm_check_shmdt_t)(struct ucred *cred, +typedef int (*mpo_sysvshm_check_shmdt_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel); -typedef int (*mpo_sysv_shm_check_shmget_t)(struct ucred *cred, +typedef int (*mpo_sysvshm_check_shmget_t)(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg); @@ -798,43 +798,39 @@ mpo_proc_check_signal_t mpo_proc_check_signal; mpo_proc_check_wait_t mpo_proc_check_wait; - /* - * XXXRW: These names are a bit awkard. Perhaps sysv_msq to match - * conventional usage? - */ - mpo_sysv_msq_init_label_t mpo_sysv_msq_init_label; - mpo_sysv_msq_destroy_t mpo_sysv_msq_destroy; - mpo_sysv_msq_cleanup_t mpo_sysv_msq_cleanup; - mpo_sysv_msq_create_msg_t mpo_sysv_msq_create_msg; - mpo_sysv_msq_create_t mpo_sysv_msq_create; - mpo_sysv_msq_check_msgmsq_t mpo_sysv_msq_check_msgmsq; - mpo_sysv_msq_check_msgrcv_t mpo_sysv_msq_check_msgrcv; - mpo_sysv_msq_check_msgrmid_t mpo_sysv_msq_check_msgrmid; - mpo_sysv_msq_check_msqget_t mpo_sysv_msq_check_msqget; - mpo_sysv_msq_check_msqsnd_t mpo_sysv_msq_check_msqsnd; - mpo_sysv_msq_check_msqrcv_t mpo_sysv_msq_check_msqrcv; - mpo_sysv_msq_check_msqctl_t mpo_sysv_msq_check_msqctl; + mpo_sysvmsq_init_label_t mpo_sysvmsq_init_label; + mpo_sysvmsq_destroy_t mpo_sysvmsq_destroy; + mpo_sysvmsq_cleanup_t mpo_sysvmsq_cleanup; + mpo_sysvmsq_create_msg_t mpo_sysvmsq_create_msg; + mpo_sysvmsq_create_t mpo_sysvmsq_create; + mpo_sysvmsq_check_msgmsq_t mpo_sysvmsq_check_msgmsq; + mpo_sysvmsq_check_msgrcv_t mpo_sysvmsq_check_msgrcv; + mpo_sysvmsq_check_msgrmid_t mpo_sysvmsq_check_msgrmid; + mpo_sysvmsq_check_msqget_t mpo_sysvmsq_check_msqget; + mpo_sysvmsq_check_msqsnd_t mpo_sysvmsq_check_msqsnd; + mpo_sysvmsq_check_msqrcv_t mpo_sysvmsq_check_msqrcv; + mpo_sysvmsq_check_msqctl_t mpo_sysvmsq_check_msqctl; - mpo_sysv_msg_init_label_t mpo_sysv_msg_init_label; - mpo_sysv_msg_destroy_label_t mpo_sysv_msg_destroy_label; - mpo_sysv_msg_cleanup_t mpo_sysv_msg_cleanup; + mpo_sysvmsg_init_label_t mpo_sysvmsg_init_label; + mpo_sysvmsg_destroy_label_t mpo_sysvmsg_destroy_label; + mpo_sysvmsg_cleanup_t mpo_sysvmsg_cleanup; - mpo_sysv_sem_init_label_t mpo_sysv_sem_init_label; - mpo_sysv_sem_destroy_label_t mpo_sysv_sem_destroy_label; - mpo_sysv_sem_cleanup_t mpo_sysv_sem_cleanup; - mpo_sysv_sem_create_t mpo_sysv_sem_create; - mpo_sysv_sem_check_semctl_t mpo_sysv_sem_check_semctl; - mpo_sysv_sem_check_semget_t mpo_sysv_sem_check_semget; - mpo_sysv_sem_check_semop_t mpo_sysv_sem_check_semop; + mpo_sysvsem_init_label_t mpo_sysvsem_init_label; + mpo_sysvsem_destroy_label_t mpo_sysvsem_destroy_label; + mpo_sysvsem_cleanup_t mpo_sysvsem_cleanup; + mpo_sysvsem_create_t mpo_sysvsem_create; + mpo_sysvsem_check_semctl_t mpo_sysvsem_check_semctl; + mpo_sysvsem_check_semget_t mpo_sysvsem_check_semget; + mpo_sysvsem_check_semop_t mpo_sysvsem_check_semop; - mpo_sysv_shm_init_label_t mpo_sysv_shm_init_label; - mpo_sysv_shm_destroy_label_t mpo_sysv_shm_destroy_label; - mpo_sysv_shm_cleanup_t mpo_sysv_shm_cleanup; - mpo_sysv_shm_create_t mpo_sysv_shm_create; - mpo_sysv_shm_check_shmat_t mpo_sysv_shm_check_shmat; - mpo_sysv_shm_check_shmctl_t mpo_sysv_shm_check_shmctl; - mpo_sysv_shm_check_shmdt_t mpo_sysv_shm_check_shmdt; - mpo_sysv_shm_check_shmget_t mpo_sysv_shm_check_shmget; + mpo_sysvshm_init_label_t mpo_sysvshm_init_label; + mpo_sysvshm_destroy_label_t mpo_sysvshm_destroy_label; + mpo_sysvshm_cleanup_t mpo_sysvshm_cleanup; + mpo_sysvshm_create_t mpo_sysvshm_create; + mpo_sysvshm_check_shmat_t mpo_sysvshm_check_shmat; + mpo_sysvshm_check_shmctl_t mpo_sysvshm_check_shmctl; + mpo_sysvshm_check_shmdt_t mpo_sysvshm_check_shmdt; + mpo_sysvshm_check_shmget_t mpo_sysvshm_check_shmget; /* * XXXRW: Further naming consistency work is desirable here. Might From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:05:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D249916A4E2; Thu, 6 Jul 2006 13:05:06 +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 7ABB216A4DD for ; Thu, 6 Jul 2006 13:05:06 +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 E29A543D4C for ; Thu, 6 Jul 2006 13:05:02 +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 k66D5267082616 for ; Thu, 6 Jul 2006 13:05:02 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 k66D52hg082613 for perforce@freebsd.org; Thu, 6 Jul 2006 13:05:02 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 13:05:02 GMT Message-Id: <200607061305.k66D52hg082613@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 100742 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:05:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100742 Change 100742 by rwatson@rwatson_zoo on 2006/07/06 13:04:44 Further System V IPC renaming. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/kern/sysv_msg.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sysv_sem.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sysv_shm.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_internal.h#3 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#9 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#18 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/kern/sysv_msg.c#3 (text+ko) ==== @@ -227,7 +227,7 @@ msghdrs[i-1].msg_next = &msghdrs[i]; msghdrs[i].msg_next = NULL; #ifdef MAC - mac_init_sysv_msgmsg(&msghdrs[i]); + mac_sysvmsg_init(&msghdrs[i]); #endif } free_msghdrs = &msghdrs[0]; @@ -240,7 +240,7 @@ msqids[i].u.msg_perm.seq = 0; /* reset to a known value */ msqids[i].u.msg_perm.mode = 0; #ifdef MAC - mac_init_sysv_msgqueue(&msqids[i]); + mac_sysvmsq_init(&msqids[i]); #endif } mtx_init(&msq_mtx, "msq", NULL, MTX_DEF); @@ -272,9 +272,9 @@ #ifdef MAC for (i = 0; i < msginfo.msgtql; i++) - mac_destroy_sysv_msgmsg(&msghdrs[i]); + mac_sysvmsg_destroy(&msghdrs[i]); for (msqid = 0; msqid < msginfo.msgmni; msqid++) - mac_destroy_sysv_msgqueue(&msqids[msqid]); + mac_sysvmsq_destroy(&msqids[msqid]); #endif free(msgpool, M_MSG); free(msgmaps, M_MSG); @@ -374,7 +374,7 @@ msghdr->msg_next = free_msghdrs; free_msghdrs = msghdr; #ifdef MAC - mac_cleanup_sysv_msgmsg(msghdr); + mac_sysvmsg_cleanup(msghdr); #endif } @@ -444,9 +444,9 @@ goto done2; } #ifdef MAC - error = mac_check_sysv_msqctl(td->td_ucred, msqkptr, cmd); + error = mac_sysvmsq_check_msqctl(td->td_ucred, msqkptr, cmd); if (error != 0) { - MPRINTF(("mac_check_sysv_msqctl returned %d\n", error)); + MPRINTF(("mac_sysvmsq_check_msqctl returned %d\n", error)); goto done2; } #endif @@ -474,9 +474,11 @@ */ for (msghdr = msqkptr->u.msg_first; msghdr != NULL; msghdr = msghdr->msg_next) { - error = mac_check_sysv_msgrmid(td->td_ucred, msghdr); + error = mac_sysvmsq_check_msgrmid(td->td_ucred, + msghdr); if (error != 0) { - MPRINTF(("mac_check_sysv_msgrmid returned %d\n", + MPRINTF(( + "mac_sysvmsq_check_msgrmid returned %d\n", error)); goto done2; } @@ -504,7 +506,7 @@ msqkptr->u.msg_qbytes = 0; /* Mark it as free */ #ifdef MAC - mac_cleanup_sysv_msgqueue(msqkptr); + mac_sysvmsq_cleanup(msqkptr); #endif wakeup(msqkptr); @@ -607,9 +609,10 @@ goto done2; } #ifdef MAC - error = mac_check_sysv_msqget(cred, msqkptr); + error = mac_sysvmsq_check_msqget(cred, msqkptr); if (error != 0) { - MPRINTF(("mac_check_sysv_msqget returned %d\n", + MPRINTF(( + "mac_sysvmsq_check_msqget returned %d\n", error)); goto done2; } @@ -657,7 +660,7 @@ msqkptr->u.msg_rtime = 0; msqkptr->u.msg_ctime = time_second; #ifdef MAC - mac_create_sysv_msgqueue(cred, msqkptr); + mac_sysvmsq_create(cred, msqkptr); #endif } else { DPRINTF(("didn't find it and wasn't asked to create it\n")); @@ -732,9 +735,9 @@ } #ifdef MAC - error = mac_check_sysv_msqsnd(td->td_ucred, msqkptr); + error = mac_sysvmsq_check_msqsnd(td->td_ucred, msqkptr); if (error != 0) { - MPRINTF(("mac_check_sysv_msqsnd returned %d\n", error)); + MPRINTF(("mac_sysvmsq_check_msqsnd returned %d\n", error)); goto done2; } #endif @@ -858,7 +861,7 @@ * immediately? Or, should it be checked just before the msg is * enqueued in the msgq (as it is done now)? */ - mac_create_sysv_msgmsg(td->td_ucred, msqkptr, msghdr); + mac_sysvmsg_create(td->td_ucred, msqkptr, msghdr); #endif /* @@ -969,16 +972,16 @@ * Note: Since the task/thread allocates the msghdr and usually * primes it with its own MAC label, for a majority of policies, it * won't be necessary to check whether the msghdr has access - * permissions to the msgq. The mac_check_sysv_msqsnd check would + * permissions to the msgq. The mac_sysvmsq_check_msqsnd check would * suffice in that case. However, this hook may be required where * individual policies derive a non-identical label for the msghdr * from the current thread label and may want to check the msghdr * enqueue permissions, along with read/write permissions to the * msgq. */ - error = mac_check_sysv_msgmsq(td->td_ucred, msghdr, msqkptr); + error = mac_sysvmsq_check_msgmsq(td->td_ucred, msghdr, msqkptr); if (error != 0) { - MPRINTF(("mac_check_sysv_msqmsq returned %d\n", error)); + MPRINTF(("mac_sysvmsq_check_msqmsq returned %d\n", error)); msg_freehdr(msghdr); wakeup(msqkptr); goto done2; @@ -1071,9 +1074,9 @@ } #ifdef MAC - error = mac_check_sysv_msqrcv(td->td_ucred, msqkptr); + error = mac_sysvmsq_check_msqrcv(td->td_ucred, msqkptr); if (error != 0) { - MPRINTF(("mac_check_sysv_msqrcv returned %d\n", error)); + MPRINTF(("mac_sysvmsq_check_msqrcv returned %d\n", error)); goto done2; } #endif @@ -1092,10 +1095,10 @@ goto done2; } #ifdef MAC - error = mac_check_sysv_msgrcv(td->td_ucred, + error = mac_sysvmsq_check_msgrcv(td->td_ucred, msghdr); if (error != 0) { - MPRINTF(("mac_check_sysv_msgrcv " + MPRINTF(("mac_sysvmsq_check_msgrcv " "returned %d\n", error)); goto done2; } @@ -1140,10 +1143,10 @@ goto done2; } #ifdef MAC - error = mac_check_sysv_msgrcv( + error = mac_sysvmsq_check_msgrcv( td->td_ucred, msghdr); if (error != 0) { - MPRINTF(("mac_check_sysv_" + MPRINTF(("mac_sysvmsq_check_" "msgrcv returned %d\n", error)); goto done2; ==== //depot/projects/trustedbsd/mac2/sys/kern/sysv_sem.c#3 (text+ko) ==== @@ -249,7 +249,7 @@ sema[i].u.sem_perm.mode = 0; sema[i].u.sem_perm.seq = 0; #ifdef MAC - mac_init_sysv_sem(&sema[i]); + mac_sysvsem_init(&sema[i]); #endif } for (i = 0; i < seminfo.semmni; i++) @@ -275,7 +275,7 @@ EVENTHANDLER_DEREGISTER(process_exit, semexit_tag); #ifdef MAC for (i = 0; i < seminfo.semmni; i++) - mac_destroy_sysv_sem(&sema[i]); + mac_sysvsem_destroy(&sema[i]); #endif free(sem, M_SEM); free(sema, M_SEM); @@ -618,9 +618,9 @@ if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; #ifdef MAC - error = mac_check_sysv_semctl(cred, semakptr, cmd); + error = mac_sysvsem_check_semctl(cred, semakptr, cmd); if (error != 0) { - MPRINTF(("mac_check_sysv_semctl returned %d\n", + MPRINTF(("mac_sysvsem_check_semctl returned %d\n", error)); goto done2; } @@ -645,9 +645,9 @@ sema_mtxp = &sema_mtx[semidx]; #ifdef MAC mtx_lock(sema_mtxp); - error = mac_check_sysv_semctl(cred, semakptr, cmd); + error = mac_sysvsem_check_semctl(cred, semakptr, cmd); if (error != 0) { - MPRINTF(("mac_check_sysv_semctl returned %d\n", error)); + MPRINTF(("mac_sysvsem_check_semctl returned %d\n", error)); mtx_unlock(sema_mtxp); return (error); } @@ -676,7 +676,7 @@ } semakptr->u.sem_perm.mode = 0; #ifdef MAC - mac_cleanup_sysv_sem(semakptr); + mac_sysvsem_cleanup(semakptr); #endif SEMUNDO_LOCK(); semundo_clear(semidx, -1); @@ -922,9 +922,10 @@ goto done2; } #ifdef MAC - error = mac_check_sysv_semget(cred, &sema[semid]); + error = mac_sysvsem_check_semget(cred, &sema[semid]); if (error != 0) { - MPRINTF(("mac_check_sysv_semget returned %d\n", + MPRINTF(( + "mac_sysvsem_check_semget returned %d\n", error)); goto done2; } @@ -974,7 +975,7 @@ bzero(sema[semid].u.sem_base, sizeof(sema[semid].u.sem_base[0])*nsems); #ifdef MAC - mac_create_sysv_sem(cred, &sema[semid]); + mac_sysvsem_create(cred, &sema[semid]); #endif DPRINTF(("sembase = 0x%x, next = 0x%x\n", sema[semid].u.sem_base, &sem[semtot])); @@ -1083,9 +1084,9 @@ goto done2; } #ifdef MAC - error = mac_check_sysv_semop(td->td_ucred, semakptr, j); + error = mac_sysvsem_check_semop(td->td_ucred, semakptr, j); if (error != 0) { - MPRINTF(("mac_check_sysv_semop returned %d\n", error)); + MPRINTF(("mac_sysvsem_check_semop returned %d\n", error)); goto done2; } #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/sysv_shm.c#3 (text+ko) ==== @@ -260,7 +260,7 @@ shm_nused--; shmseg->u.shm_perm.mode = SHMSEG_FREE; #ifdef MAC - mac_cleanup_sysv_shm(shmseg); + mac_sysvshm_cleanup(shmseg); #endif } @@ -331,9 +331,9 @@ } #ifdef MAC shmsegptr = &shmsegs[IPCID_TO_IX(shmmap_s->shmid)]; - error = mac_check_sysv_shmdt(td->td_ucred, shmsegptr); + error = mac_sysvshm_check_shmdt(td->td_ucred, shmsegptr); if (error != 0) { - MPRINTF(("mac_check_sysv_shmdt returned %d\n", error)); + MPRINTF(("mac_sysvshm_check_shmdt returned %d\n", error)); goto done2; } #endif @@ -392,9 +392,9 @@ if (error) goto done2; #ifdef MAC - error = mac_check_sysv_shmat(td->td_ucred, shmseg, shmflg); + error = mac_sysvshm_check_shmat(td->td_ucred, shmseg, shmflg); if (error != 0) { - MPRINTF(("mac_check_sysv_shmat returned %d\n", error)); + MPRINTF(("mac_sysvshm_check_shmat returned %d\n", error)); goto done2; } #endif @@ -513,9 +513,9 @@ if (error) goto done2; #ifdef MAC - error = mac_check_sysv_shmctl(td->td_ucred, shmseg, uap->cmd); + error = mac_sysvshm_check_shmctl(td->td_ucred, shmseg, uap->cmd); if (error != 0) { - MPRINTF(("mac_check_sysv_shmctl returned %d\n", + MPRINTF(("mac_sysvshm_check_shmctl returned %d\n", error)); goto done2; } @@ -603,9 +603,9 @@ goto done2; } #ifdef MAC - error = mac_check_sysv_shmctl(td->td_ucred, shmseg, cmd); + error = mac_sysvshm_check_shmctl(td->td_ucred, shmseg, cmd); if (error != 0) { - MPRINTF(("mac_check_sysv_shmctl returned %d\n", error)); + MPRINTF(("mac_sysvshm_check_shmctl returned %d\n", error)); goto done2; } #endif @@ -732,9 +732,9 @@ if ((uap->shmflg & (IPC_CREAT | IPC_EXCL)) == (IPC_CREAT | IPC_EXCL)) return (EEXIST); #ifdef MAC - error = mac_check_sysv_shmget(td->td_ucred, shmseg, uap->shmflg); + error = mac_sysvshm_check_shmget(td->td_ucred, shmseg, uap->shmflg); if (error != 0) { - MPRINTF(("mac_check_sysv_shmget returned %d\n", error)); + MPRINTF(("mac_sysvshm_check_shmget returned %d\n", error)); return (error); } #endif @@ -815,7 +815,7 @@ shmseg->u.shm_lpid = shmseg->u.shm_nattch = 0; shmseg->u.shm_atime = shmseg->u.shm_dtime = 0; #ifdef MAC - mac_create_sysv_shm(cred, shmseg); + mac_sysvshm_create(cred, shmseg); #endif shmseg->u.shm_ctime = time_second; shm_committed += btoc(size); @@ -953,7 +953,7 @@ shmsegs[i].u.shm_perm.mode = SHMSEG_FREE; shmsegs[i].u.shm_perm.seq = 0; #ifdef MAC - mac_init_sysv_shm(&shmsegs[i]); + mac_sysvshm_init(&shmsegs[i]); #endif } free(shmsegs, M_SHM); @@ -985,7 +985,7 @@ shmsegs[i].u.shm_perm.mode = SHMSEG_FREE; shmsegs[i].u.shm_perm.seq = 0; #ifdef MAC - mac_init_sysv_shm(&shmsegs[i]); + mac_sysvshm_init(&shmsegs[i]); #endif } shm_last_free = 0; @@ -1007,7 +1007,7 @@ #ifdef MAC for (i = 0; i < shmalloced; i++) - mac_destroy_sysv_shm(&shmsegs[i]); + mac_sysvshm_destroy(&shmsegs[i]); #endif free(shmsegs, M_SHM); shmexit_hook = NULL; ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_internal.h#3 (text+ko) ==== ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#9 (text+ko) ==== @@ -265,8 +265,6 @@ void mac_sysvmsq_init(struct msqid_kernel*); void mac_sysvmsq_destroy(struct msqid_kernel *); void mac_sysvmsq_cleanup(struct msqid_kernel *msqkptr); -void mac_sysvmsq_create_msg(struct ucred *cred, - struct msqid_kernel *msqkptr, struct msg *msgptr); void mac_sysvmsq_create(struct ucred *cred, struct msqid_kernel *msqkptr); int mac_sysvmsq_check_msgmsq(struct ucred *cred, struct msg *msgptr, @@ -285,12 +283,14 @@ void mac_sysvmsg_init(struct msg *); void mac_sysvmsg_destroy(struct msg *); void mac_sysvmsg_cleanup(struct msg *msgptr); +void mac_sysvmsg_create(struct ucred *cred, struct msqid_kernel *msqkptr, + struct msg *msgptr); void mac_sysvsem_init(struct semid_kernel*); void mac_sysvsem_destroy(struct semid_kernel *); void mac_sysvsem_create(struct ucred *cred, struct semid_kernel *semakptr); -void mac_sysvsem_cleanup_sysvsem(struct semid_kernel *semakptr); +void mac_sysvsem_cleanup(struct semid_kernel *semakptr); int mac_sysvsem_check_semctl(struct ucred *cred, struct semid_kernel *semakptr, int cmd); int mac_sysvsem_check_semget(struct ucred *cred, ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#18 (text+ko) ==== @@ -393,9 +393,6 @@ typedef void (*mpo_sysvmsq_init_label_t)(struct label *label); typedef void (*mpo_sysvmsq_destroy_t)(struct label *label); typedef void (*mpo_sysvmsq_cleanup_t)(struct label *msqlabel); -typedef void (*mpo_sysvmsq_create_msg_t)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqlabel, - struct msg *msgptr, struct label *msglabel); typedef void (*mpo_sysvmsq_create_t)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel); typedef int (*mpo_sysvmsq_check_msgmsq_t)(struct ucred *cred, @@ -420,6 +417,9 @@ typedef void (*mpo_sysvmsg_init_label_t)(struct label *label); typedef void (*mpo_sysvmsg_destroy_label_t)(struct label *label); typedef void (*mpo_sysvmsg_cleanup_t)(struct label *msglabel); +typedef void (*mpo_sysvmsg_create_t)(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqlabel, + struct msg *msgptr, struct label *msglabel); /* * Object: struct semid_kernel (System V IPC semaphore) @@ -801,7 +801,6 @@ mpo_sysvmsq_init_label_t mpo_sysvmsq_init_label; mpo_sysvmsq_destroy_t mpo_sysvmsq_destroy; mpo_sysvmsq_cleanup_t mpo_sysvmsq_cleanup; - mpo_sysvmsq_create_msg_t mpo_sysvmsq_create_msg; mpo_sysvmsq_create_t mpo_sysvmsq_create; mpo_sysvmsq_check_msgmsq_t mpo_sysvmsq_check_msgmsq; mpo_sysvmsq_check_msgrcv_t mpo_sysvmsq_check_msgrcv; @@ -814,6 +813,7 @@ mpo_sysvmsg_init_label_t mpo_sysvmsg_init_label; mpo_sysvmsg_destroy_label_t mpo_sysvmsg_destroy_label; mpo_sysvmsg_cleanup_t mpo_sysvmsg_cleanup; + mpo_sysvmsg_create_t mpo_sysvmsg_create; mpo_sysvsem_init_label_t mpo_sysvsem_init_label; mpo_sysvsem_destroy_label_t mpo_sysvsem_destroy_label; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:15:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F3BEC16A4DE; Thu, 6 Jul 2006 13:15:16 +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 995DF16A4DA for ; Thu, 6 Jul 2006 13:15:16 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 63D7243D4C for ; Thu, 6 Jul 2006 13:15:16 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66DFGGj083095 for ; Thu, 6 Jul 2006 13:15:16 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66DFG7g083092 for perforce@freebsd.org; Thu, 6 Jul 2006 13:15:16 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 13:15:16 GMT Message-Id: <200607061315.k66DFG7g083092@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100743 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:15:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=100743 Change 100743 by wkoszek@wkoszek_laptop on 2006/07/06 13:14:20 Define __ELF_WORD_SIZE as 32, instead of 64. With help from: cognet@ Affected files ... .. //depot/projects/mips2/src/sys/mips/include/elf.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/elf.h#2 (text+ko) ==== @@ -30,12 +30,11 @@ #define _MACHINE_ELF_H_ 1 /* - * ELF definitions for the AMD64 architecture. + * ELF definitions for the MIPS architecture. */ - #ifndef __ELF_WORD_SIZE -#define __ELF_WORD_SIZE 64 /* Used by */ +#define __ELF_WORD_SIZE 32 /* Used by */ #endif #include /* Definitions common to all 32 bit architectures. */ #include /* Definitions common to all 64 bit architectures. */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:16:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 12A9416A4E0; Thu, 6 Jul 2006 13:16:21 +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 DE0A416A4DD for ; Thu, 6 Jul 2006 13:16:20 +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 D22E743D5D for ; Thu, 6 Jul 2006 13:16:18 +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 k66DGIqR083159 for ; Thu, 6 Jul 2006 13:16:18 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 k66DGI75083156 for perforce@freebsd.org; Thu, 6 Jul 2006 13:16:18 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 13:16:18 GMT Message-Id: <200607061316.k66DGI75083156@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 100744 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:16:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100744 Change 100744 by rwatson@rwatson_zoo on 2006/07/06 13:15:26 More renaming. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_mbuf2.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket.c#4 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_usrreq.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_lookup.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_mount.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_subr.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_syscalls.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/vfs_vnops.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_mbuf2.c#3 (text+ko) ==== @@ -308,7 +308,7 @@ { #ifdef MAC if (t->m_tag_id == PACKET_TAG_MACLABEL) - mac_destroy_mbuf_tag(t); + mac_mbuf_tag_destroy(t); #endif free(t, M_PACKET_TAGS); } @@ -412,11 +412,11 @@ * special from the mbuf code? */ if (t->m_tag_id == PACKET_TAG_MACLABEL) { - if (mac_init_mbuf_tag(p, how) != 0) { + if (mac_mbuf_tag_init(p, how) != 0) { m_tag_free(p); return (NULL); } - mac_copy_mbuf_tag(t, p); + mac_mbuf_tag_copy(t, p); } else #endif bcopy(t + 1, p + 1, t->m_tag_len); /* Copy the data */ ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_socket.c#4 (text+ko) ==== @@ -101,6 +101,7 @@ #include #include #include +#include #include #include #include ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_usrreq.c#3 (text+ko) ==== @@ -817,7 +817,7 @@ vattr.va_type = VSOCK; vattr.va_mode = (ACCESSPERMS & ~td->td_proc->p_fd->fd_cmask); #ifdef MAC - error = mac_check_vnode_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, + error = mac_vnode_check_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, &vattr); #endif if (error == 0) { @@ -951,8 +951,8 @@ unp3->unp_flags |= UNP_WANTCRED; #ifdef MAC SOCK_LOCK(so); - mac_set_socket_peer_from_socket(so, so3); - mac_set_socket_peer_from_socket(so3, so); + mac_socket_set_peer_from_socket(so, so3); + mac_socket_set_peer_from_socket(so3, so); SOCK_UNLOCK(so); #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_lookup.c#3 (text+ko) ==== @@ -244,7 +244,7 @@ } #ifdef MAC if ((cnp->cn_flags & NOMACCHECK) == 0) { - error = mac_check_vnode_readlink(td->td_ucred, + error = mac_vnode_check_readlink(td->td_ucred, ndp->ni_vp); if (error) break; @@ -536,7 +536,7 @@ unionlookup: #ifdef MAC if ((cnp->cn_flags & NOMACCHECK) == 0) { - error = mac_check_vnode_lookup(td->td_ucred, dp, cnp); + error = mac_vnode_check_lookup(td->td_ucred, dp, cnp); if (error) goto bad; } ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_mount.c#3 (text+ko) ==== @@ -479,8 +479,8 @@ strlcpy(mp->mnt_stat.f_mntonname, fspath, MNAMELEN); mp->mnt_iosize_max = DFLTPHYS; #ifdef MAC - mac_init_mount(mp); - mac_create_mount(td->td_ucred, mp); + mac_mount_init(mp); + mac_mount_create(td->td_ucred, mp); #endif arc4rand(&mp->mnt_hashseed, sizeof mp->mnt_hashseed, 0); return (mp); @@ -558,7 +558,7 @@ mp->mnt_secondary_writes = -1000; MNT_IUNLOCK(mp); #ifdef MAC - mac_destroy_mount(mp); + mac_mount_destroy(mp); #endif if (mp->mnt_opt != NULL) vfs_freeopts(mp->mnt_opt); ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_subr.c#3 (text+ko) ==== @@ -797,7 +797,7 @@ lockdestroy(vp->v_vnlock); mtx_destroy(&vp->v_interlock); #ifdef MAC - mac_destroy_vnode(vp); + mac_vnode_destroy(vp); #endif uma_zfree(vnode_zone, vp); } @@ -920,9 +920,9 @@ v_incr_usecount(vp); vp->v_data = 0; #ifdef MAC - mac_init_vnode(vp); + mac_vnode_init(vp); if (mp != NULL && (mp->mnt_flag & MNT_MULTILABEL) == 0) - mac_associate_vnode_singlelabel(mp, vp); + mac_vnode_associate_singlelabel(mp, vp); else if (mp == NULL) printf("NULL mp in getnewvnode()\n"); #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_syscalls.c#3 (text+ko) ==== @@ -252,7 +252,7 @@ NDFREE(&nd, NDF_ONLY_PNBUF); vput(nd.ni_vp); #ifdef MAC - error = mac_check_mount_stat(td->td_ucred, mp); + error = mac_mount_check_stat(td->td_ucred, mp); if (error) { vfs_rel(mp); goto out; @@ -341,7 +341,7 @@ goto out; } #ifdef MAC - error = mac_check_mount_stat(td->td_ucred, mp); + error = mac_mount_check_stat(td->td_ucred, mp); if (error) { vfs_rel(mp); goto out; @@ -434,7 +434,7 @@ continue; } #ifdef MAC - if (mac_check_mount_stat(td->td_ucred, mp) != 0) { + if (mac_mount_check_stat(td->td_ucred, mp) != 0) { nmp = TAILQ_NEXT(mp, mnt_list); continue; } @@ -700,7 +700,7 @@ if (vp->v_type != VDIR) error = ENOTDIR; #ifdef MAC - else if ((error = mac_check_vnode_chdir(td->td_ucred, vp)) != 0) { + else if ((error = mac_vnode_check_chdir(td->td_ucred, vp)) != 0) { } #endif else @@ -860,7 +860,7 @@ if ((error = change_dir(nd.ni_vp, td)) != 0) goto e_vunlock; #ifdef MAC - if ((error = mac_check_vnode_chroot(td->td_ucred, nd.ni_vp))) + if ((error = mac_vnode_check_chroot(td->td_ucred, nd.ni_vp))) goto e_vunlock; #endif VOP_UNLOCK(nd.ni_vp, 0, td); @@ -892,7 +892,7 @@ if (vp->v_type != VDIR) return (ENOTDIR); #ifdef MAC - error = mac_check_vnode_chdir(td->td_ucred, vp); + error = mac_vnode_check_chdir(td->td_ucred, vp); if (error) return (error); #endif @@ -902,8 +902,8 @@ /* * Common routine for kern_chroot() and jail_attach(). The caller is - * responsible for invoking suser() and mac_check_chroot() to authorize this - * operation. + * responsible for invoking suser() and mac_vnode_check_chroot() to authorize + * this operation. */ int change_root(vp, td) @@ -1102,7 +1102,7 @@ vat.va_size = 0; vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); #ifdef MAC - error = mac_check_vnode_write(td->td_ucred, fp->f_cred, vp); + error = mac_vnode_check_write(td->td_ucred, fp->f_cred, vp); if (error == 0) #endif error = VOP_SETATTR(vp, &vat, td->td_ucred, td); @@ -1254,7 +1254,7 @@ } #ifdef MAC if (error == 0 && !whiteout) - error = mac_check_vnode_create(td->td_ucred, nd.ni_dvp, + error = mac_vnode_check_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, &vattr); #endif if (!error) { @@ -1337,7 +1337,7 @@ vattr.va_mode = (mode & ALLPERMS) & ~td->td_proc->p_fd->fd_cmask; FILEDESC_UNLOCK_FAST(td->td_proc->p_fd); #ifdef MAC - error = mac_check_vnode_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, + error = mac_vnode_check_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, &vattr); if (error) goto out; @@ -1466,7 +1466,7 @@ error = can_hardlink(vp, td, td->td_ucred); if (error == 0) #ifdef MAC - error = mac_check_vnode_link(td->td_ucred, + error = mac_vnode_check_link(td->td_ucred, nd.ni_dvp, vp, &nd.ni_cnd); if (error == 0) #endif @@ -1554,7 +1554,7 @@ FILEDESC_UNLOCK_FAST(td->td_proc->p_fd); #ifdef MAC vattr.va_type = VLNK; - error = mac_check_vnode_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, + error = mac_vnode_check_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, &vattr); if (error) goto out2; @@ -1692,7 +1692,7 @@ goto restart; } #ifdef MAC - error = mac_check_vnode_delete(td->td_ucred, nd.ni_dvp, vp, + error = mac_vnode_check_unlink(td->td_ucred, nd.ni_dvp, vp, &nd.ni_cnd); if (error) goto out; @@ -1853,7 +1853,7 @@ if (user_flags & X_OK) flags |= VEXEC; #ifdef MAC - error = mac_check_vnode_access(cred, vp, flags); + error = mac_vnode_check_access(cred, vp, flags); if (error) return (error); #endif @@ -2322,7 +2322,7 @@ vfslocked = NDHASGIANT(&nd); vp = nd.ni_vp; #ifdef MAC - error = mac_check_vnode_readlink(td->td_ucred, vp); + error = mac_vnode_check_readlink(td->td_ucred, vp); if (error) { vput(vp); VFS_UNLOCK_GIANT(vfslocked); @@ -2381,7 +2381,7 @@ VATTR_NULL(&vattr); vattr.va_flags = flags; #ifdef MAC - error = mac_check_vnode_setflags(td->td_ucred, vp, vattr.va_flags); + error = mac_vnode_check_setflags(td->td_ucred, vp, vattr.va_flags); if (error == 0) #endif error = VOP_SETATTR(vp, &vattr, td->td_ucred, td); @@ -2509,7 +2509,7 @@ VATTR_NULL(&vattr); vattr.va_mode = mode & ALLPERMS; #ifdef MAC - error = mac_check_vnode_setmode(td->td_ucred, vp, vattr.va_mode); + error = mac_vnode_check_setmode(td->td_ucred, vp, vattr.va_mode); if (error == 0) #endif error = VOP_SETATTR(vp, &vattr, td->td_ucred, td); @@ -2651,7 +2651,7 @@ vattr.va_uid = uid; vattr.va_gid = gid; #ifdef MAC - error = mac_check_vnode_setowner(td->td_ucred, vp, vattr.va_uid, + error = mac_vnode_check_setowner(td->td_ucred, vp, vattr.va_uid, vattr.va_gid); if (error == 0) #endif @@ -2854,7 +2854,7 @@ if (nullflag) vattr.va_vaflags |= VA_UTIMES_NULL; #ifdef MAC - error = mac_check_vnode_setutimes(td->td_ucred, vp, vattr.va_atime, + error = mac_vnode_check_setutimes(td->td_ucred, vp, vattr.va_atime, vattr.va_mtime); #endif if (error == 0) @@ -3050,7 +3050,7 @@ if (vp->v_type == VDIR) error = EISDIR; #ifdef MAC - else if ((error = mac_check_vnode_write(td->td_ucred, NOCRED, vp))) { + else if ((error = mac_vnode_check_write(td->td_ucred, NOCRED, vp))) { } #endif else if ((error = vn_writechk(vp)) == 0 && @@ -3110,7 +3110,7 @@ if (vp->v_type == VDIR) error = EISDIR; #ifdef MAC - else if ((error = mac_check_vnode_write(td->td_ucred, fp->f_cred, + else if ((error = mac_vnode_check_write(td->td_ucred, fp->f_cred, vp))) { } #endif @@ -3275,7 +3275,7 @@ fvfslocked = NDHASGIANT(&fromnd); tvfslocked = 0; #ifdef MAC - error = mac_check_vnode_rename_from(td->td_ucred, fromnd.ni_dvp, + error = mac_vnode_check_rename_from(td->td_ucred, fromnd.ni_dvp, fromnd.ni_vp, &fromnd.ni_cnd); VOP_UNLOCK(fromnd.ni_dvp, 0, td); VOP_UNLOCK(fromnd.ni_vp, 0, td); @@ -3325,7 +3325,7 @@ error = -1; #ifdef MAC else - error = mac_check_vnode_rename_to(td->td_ucred, tdvp, + error = mac_vnode_check_rename_to(td->td_ucred, tdvp, tond.ni_vp, fromnd.ni_dvp == tdvp, &tond.ni_cnd); #endif out: @@ -3435,7 +3435,7 @@ vattr.va_mode = (mode & ACCESSPERMS) &~ td->td_proc->p_fd->fd_cmask; FILEDESC_UNLOCK_FAST(td->td_proc->p_fd); #ifdef MAC - error = mac_check_vnode_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, + error = mac_vnode_check_create(td->td_ucred, nd.ni_dvp, &nd.ni_cnd, &vattr); if (error) goto out; @@ -3509,7 +3509,7 @@ goto out; } #ifdef MAC - error = mac_check_vnode_delete(td->td_ucred, nd.ni_dvp, vp, + error = mac_vnode_check_unlink(td->td_ucred, nd.ni_dvp, vp, &nd.ni_cnd); if (error) goto out; @@ -3598,7 +3598,7 @@ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); loff = auio.uio_offset = fp->f_offset; #ifdef MAC - error = mac_check_vnode_readdir(td->td_ucred, vp); + error = mac_vnode_check_readdir(td->td_ucred, vp); if (error) { VOP_UNLOCK(vp, 0, td); fdrop(fp, td); @@ -3752,7 +3752,7 @@ AUDIT_ARG(vnode, vp, ARG_VNODE1); loff = auio.uio_offset = fp->f_offset; #ifdef MAC - error = mac_check_vnode_readdir(td->td_ucred, vp); + error = mac_vnode_check_readdir(td->td_ucred, vp); if (error == 0) #endif error = VOP_READDIR(vp, &auio, fp->f_cred, &eofflag, NULL, @@ -3884,7 +3884,7 @@ goto out; } #ifdef MAC - error = mac_check_vnode_revoke(td->td_ucred, vp); + error = mac_vnode_check_revoke(td->td_ucred, vp); if (error) goto out; #endif @@ -4109,7 +4109,7 @@ if (fmode & O_APPEND) mode |= VAPPEND; #ifdef MAC - error = mac_check_vnode_open(td->td_ucred, vp, mode); + error = mac_vnode_check_open(td->td_ucred, vp, mode); if (error) goto bad; #endif @@ -4131,7 +4131,7 @@ * We don't yet have fp->f_cred, so use td->td_ucred, which * should be right. */ - error = mac_check_vnode_write(td->td_ucred, td->td_ucred, vp); + error = mac_vnode_check_write(td->td_ucred, td->td_ucred, vp); if (error == 0) { #endif VATTR_NULL(vap); @@ -4323,7 +4323,7 @@ if (error) goto out; #ifdef MAC - error = mac_check_mount_stat(td->td_ucred, mp); + error = mac_mount_check_stat(td->td_ucred, mp); if (error) goto out; #endif @@ -4477,7 +4477,7 @@ cnt = nbytes; #ifdef MAC - error = mac_check_vnode_setextattr(td->td_ucred, vp, attrnamespace, + error = mac_vnode_check_setextattr(td->td_ucred, vp, attrnamespace, attrname, &auio); if (error) goto done; @@ -4648,7 +4648,7 @@ sizep = &size; #ifdef MAC - error = mac_check_vnode_getextattr(td->td_ucred, vp, attrnamespace, + error = mac_vnode_check_getextattr(td->td_ucred, vp, attrnamespace, attrname, &auio); if (error) goto done; @@ -4795,7 +4795,7 @@ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); #ifdef MAC - error = mac_check_vnode_deleteextattr(td->td_ucred, vp, attrnamespace, + error = mac_vnode_check_deleteextattr(td->td_ucred, vp, attrnamespace, attrname); if (error) goto done; @@ -4952,7 +4952,7 @@ sizep = &size; #ifdef MAC - error = mac_check_vnode_listextattr(td->td_ucred, vp, attrnamespace); + error = mac_vnode_check_listextattr(td->td_ucred, vp, attrnamespace); if (error) goto done; #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/vfs_vnops.c#3 (text+ko) ==== @@ -145,7 +145,7 @@ goto restart; } #ifdef MAC - error = mac_check_vnode_create(cred, ndp->ni_dvp, + error = mac_vnode_check_create(cred, ndp->ni_dvp, &ndp->ni_cnd, vap); if (error == 0) { #endif @@ -210,7 +210,7 @@ if (fmode & O_APPEND) mode |= VAPPEND; #ifdef MAC - error = mac_check_vnode_open(cred, vp, mode); + error = mac_vnode_check_open(cred, vp, mode); if (error) goto bad; #endif @@ -381,10 +381,10 @@ #ifdef MAC if ((ioflg & IO_NOMACCHECK) == 0) { if (rw == UIO_READ) - error = mac_check_vnode_read(active_cred, file_cred, + error = mac_vnode_check_read(active_cred, file_cred, vp); else - error = mac_check_vnode_write(active_cred, file_cred, + error = mac_vnode_check_write(active_cred, file_cred, vp); } #endif @@ -514,7 +514,7 @@ ioflag |= sequential_heuristic(uio, fp); #ifdef MAC - error = mac_check_vnode_read(active_cred, fp->f_cred, vp); + error = mac_vnode_check_read(active_cred, fp->f_cred, vp); if (error == 0) #endif error = VOP_READ(vp, uio, ioflag, fp->f_cred); @@ -574,7 +574,7 @@ uio->uio_offset = fp->f_offset; ioflag |= sequential_heuristic(uio, fp); #ifdef MAC - error = mac_check_vnode_write(active_cred, fp->f_cred, vp); + error = mac_vnode_check_write(active_cred, fp->f_cred, vp); if (error == 0) #endif error = VOP_WRITE(vp, uio, ioflag, fp->f_cred); @@ -629,7 +629,7 @@ u_short mode; #ifdef MAC - error = mac_check_vnode_stat(active_cred, file_cred, vp); + error = mac_vnode_check_stat(active_cred, file_cred, vp); if (error) return (error); #endif @@ -782,7 +782,7 @@ vfslocked = VFS_LOCK_GIANT(vp->v_mount); #ifdef MAC vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - error = mac_check_vnode_poll(active_cred, fp->f_cred, vp); + error = mac_vnode_check_poll(active_cred, fp->f_cred, vp); VOP_UNLOCK(vp, 0, td); if (!error) #endif From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:20:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 90AA616A4E1; Thu, 6 Jul 2006 13:20:24 +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 6434E16A4DF for ; Thu, 6 Jul 2006 13:20:24 +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 1B53C43D4C for ; Thu, 6 Jul 2006 13:20:24 +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 k66DKNXm083380 for ; Thu, 6 Jul 2006 13:20:23 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 k66DKN5p083377 for perforce@freebsd.org; Thu, 6 Jul 2006 13:20:23 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 13:20:23 GMT Message-Id: <200607061320.k66DKN5p083377@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 100745 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:20:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100745 Change 100745 by rwatson@rwatson_zoo on 2006/07/06 13:19:22 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/net/bpf.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_ethersubr.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_gif.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_ppp.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_tun.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/net/bpf.c#3 (text+ko) ==== @@ -375,8 +375,8 @@ d->bd_seesent = 1; d->bd_pid = td->td_proc->p_pid; #ifdef MAC - mac_init_bpfdesc(d); - mac_create_bpfdesc(td->td_ucred, d); + mac_bpfdesc_init(d); + mac_bpfdesc_create(td->td_ucred, d); #endif mtx_init(&d->bd_mtx, devtoname(dev), "bpf cdev lock", MTX_DEF); callout_init(&d->bd_callout, NET_CALLOUT_MPSAFE); @@ -407,7 +407,7 @@ mtx_unlock(&bpf_mtx); selwakeuppri(&d->bd_sel, PRINET); #ifdef MAC - mac_destroy_bpfdesc(d); + mac_bpfdesc_destroy(d); #endif /* MAC */ knlist_destroy(&d->bd_sel.si_note); bpf_freed(d); @@ -597,7 +597,7 @@ #ifdef MAC BPFD_LOCK(d); - mac_create_mbuf_from_bpfdesc(d, m); + mac_bpfdesc_create_mbuf(d, m); BPFD_UNLOCK(d); #endif NET_LOCK_GIANT(); @@ -1213,7 +1213,7 @@ if (slen != 0) { d->bd_fcount++; #ifdef MAC - if (mac_check_bpfdesc_receive(d, bp->bif_ifp) == 0) + if (mac_bpfdesc_check_receive(d, bp->bif_ifp) == 0) #endif catchpacket(d, pkt, pktlen, slen, bcopy); } @@ -1275,7 +1275,7 @@ if (slen != 0) { d->bd_fcount++; #ifdef MAC - if (mac_check_bpfdesc_receive(d, bp->bif_ifp) == 0) + if (mac_bpfdesc_check_receive(d, bp->bif_ifp) == 0) #endif catchpacket(d, (u_char *)m, pktlen, slen, bpf_mcopy); @@ -1317,7 +1317,7 @@ if (slen != 0) { d->bd_fcount++; #ifdef MAC - if (mac_check_bpfdesc_receive(d, bp->bif_ifp) == 0) + if (mac_bpfdesc_check_receive(d, bp->bif_ifp) == 0) #endif catchpacket(d, (u_char *)&mb, pktlen, slen, bpf_mcopy); ==== //depot/projects/trustedbsd/mac2/sys/net/if.c#3 (text+ko) ==== @@ -452,8 +452,8 @@ ifp->if_data.ifi_datalen = sizeof(struct if_data); #ifdef MAC - mac_init_ifnet(ifp); - mac_create_ifnet(ifp); + mac_ifnet_init(ifp); + mac_ifnet_create(ifp); #endif ifdev_byindex(ifp->if_index) = make_dev(&net_cdevsw, @@ -713,7 +713,7 @@ IF_AFDATA_UNLOCK(ifp); #ifdef MAC - mac_destroy_ifnet(ifp); + mac_ifnet_destroy(ifp); #endif /* MAC */ KNOTE_UNLOCKED(&ifp->if_klist, NOTE_EXIT); knlist_clear(&ifp->if_klist, 0); @@ -1444,7 +1444,7 @@ #ifdef MAC case SIOCGIFMAC: - error = mac_ioctl_ifnet_get(td->td_ucred, ifr, ifp); + error = mac_ifnet_ioctl_get(td->td_ucred, ifr, ifp); break; #endif @@ -1520,7 +1520,7 @@ #ifdef MAC case SIOCSIFMAC: - error = mac_ioctl_ifnet_set(td->td_ucred, ifr, ifp); + error = mac_ifnet_ioctl_set(td->td_ucred, ifr, ifp); break; #endif ==== //depot/projects/trustedbsd/mac2/sys/net/if_ethersubr.c#3 (text+ko) ==== @@ -148,7 +148,7 @@ int hlen; /* link layer header length */ #ifdef MAC - error = mac_check_ifnet_transmit(ifp, m); + error = mac_ifnet_check_transmit(ifp, m); if (error) senderr(error); #endif @@ -541,7 +541,7 @@ * Tag the mbuf with an appropriate MAC label before any other * consumers can get to it. */ - mac_create_mbuf_from_ifnet(ifp, m); + mac_ifnet_create_mbuf(ifp, m); #endif /* ==== //depot/projects/trustedbsd/mac2/sys/net/if_gif.c#3 (text+ko) ==== @@ -360,7 +360,7 @@ u_int32_t af; #ifdef MAC - error = mac_check_ifnet_transmit(ifp, m); + error = mac_ifnet_check_transmit(ifp, m); if (error) { m_freem(m); goto end; @@ -479,7 +479,7 @@ m->m_pkthdr.rcvif = ifp; #ifdef MAC - mac_create_mbuf_from_ifnet(ifp, m); + mac_ifnet_create_mbuf(ifp, m); #endif if (bpf_peers_present(ifp->if_bpf)) { ==== //depot/projects/trustedbsd/mac2/sys/net/if_ppp.c#3 (text+ko) ==== @@ -785,7 +785,7 @@ int len; #ifdef MAC - error = mac_check_ifnet_transmit(ifp, m0); + error = mac_ifnet_check_transmit(ifp, m0); if (error) goto bad; #endif @@ -1180,7 +1180,7 @@ if (m == NULL) break; #ifdef MAC - mac_create_mbuf_from_ifnet(PPP2IFP(sc), m); + mac_ifnet_create_mbuf(PPP2IFP(sc), m); #endif ppp_inproc(sc, m); } @@ -1458,7 +1458,7 @@ } } #ifdef MAC - mac_copy_mbuf(m, mp); + mac_mbuf_copy(m, mp); #endif cp = mtod(mp, u_char *); cp[0] = adrs; @@ -1512,7 +1512,7 @@ MGETHDR(mp, M_DONTWAIT, MT_DATA); if (mp != NULL) { #ifdef MAC - mac_copy_mbuf(m, mp); + mac_mbuf_copy(m, mp); #endif m_copydata(m, 0, ilen, mtod(mp, caddr_t)); m_freem(m); ==== //depot/projects/trustedbsd/mac2/sys/net/if_tun.c#3 (text+ko) ==== @@ -475,7 +475,7 @@ TUNDEBUG (ifp, "tunoutput\n"); #ifdef MAC - error = mac_check_ifnet_transmit(ifp, m0); + error = mac_ifnet_check_transmit(ifp, m0); if (error) { m_freem(m0); return (error); @@ -769,7 +769,7 @@ m->m_pkthdr.rcvif = ifp; #ifdef MAC - mac_create_mbuf_from_ifnet(ifp, m); + mac_ifnet_create_mbuf(ifp, m); #endif /* Could be unlocked read? */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:26:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2449116A4EC; Thu, 6 Jul 2006 13:26:33 +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 F3A8D16A4E6 for ; Thu, 6 Jul 2006 13:26:32 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B875C43D4C for ; Thu, 6 Jul 2006 13:26:32 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66DQW1Q083931 for ; Thu, 6 Jul 2006 13:26:32 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66DQWv6083928 for perforce@freebsd.org; Thu, 6 Jul 2006 13:26:32 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 13:26:32 GMT Message-Id: <200607061326.k66DQWv6083928@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100747 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:26:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=100747 Change 100747 by wkoszek@wkoszek_laptop on 2006/07/06 13:25:59 Make stub declarations for cpu_getstack(), and cpu_setstack(), because we don't have a tram frame structures yet. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpu.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpu.h#3 (text+ko) ==== @@ -44,9 +44,18 @@ #define cpu_exec(p) /* nothing */ #define cpu_swapin(p) /* nothing */ +/* + * XXXMIPS: Change those once we'll bring header files from NetBSD. + */ +#if 0 #define cpu_getstack(td) ((td)->td_frame->tf_rsp) #define cpu_setstack(td, ap) ((td)->td_frame->tf_rsp = (ap)) #define cpu_spinwait() /* ia32_pause() */ +#endif +#define cpu_getstack(td) (0) +#define cpu_setstack(td, ap) (0) +#define cpu_spinwait() + #define TRAPF_USERMODE(framep) \ (ISPL((framep)->tf_cs) == SEL_UPL) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:28:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9EAA816A4E0; Thu, 6 Jul 2006 13:28:36 +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 7B21316A4DE for ; Thu, 6 Jul 2006 13:28:36 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 18D8343D49 for ; Thu, 6 Jul 2006 13:28:36 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66DSZqt084066 for ; Thu, 6 Jul 2006 13:28:35 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66DSZuR084063 for perforce@freebsd.org; Thu, 6 Jul 2006 13:28:35 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 13:28:35 GMT Message-Id: <200607061328.k66DSZuR084063@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100749 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:28:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=100749 Change 100749 by wkoszek@wkoszek_laptop on 2006/07/06 13:27:39 Change hardware accelerated version of "Find First bit Set" function to the universal one - ffs(). Affected files ... .. //depot/projects/mips2/src/sys/mips/include/runq.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/runq.h#2 (text+ko) ==== @@ -35,8 +35,10 @@ #define RQB_BIT(pri) (1ul << ((pri) & (RQB_BPW - 1))) #define RQB_WORD(pri) ((pri) >> RQB_L2BPW) - -#define RQB_FFS(word) (bsfq(word)) +/* + * XXXMIPS: Find first bit set. Change later to hardware supported version. + */ +#define RQB_FFS(word) (ffs(word) - 1) /* * Type of run queue status word. From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:39:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E93A516A4E6; Thu, 6 Jul 2006 13:38:59 +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 AC28316A4E1 for ; Thu, 6 Jul 2006 13:38:59 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5506243D68 for ; Thu, 6 Jul 2006 13:38:48 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Dcm8D084806 for ; Thu, 6 Jul 2006 13:38:48 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66DcmEe084803 for perforce@freebsd.org; Thu, 6 Jul 2006 13:38:48 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 13:38:48 GMT Message-Id: <200607061338.k66DcmEe084803@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100750 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:39:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=100750 Change 100750 by piso@piso_newluxor on 2006/07/06 13:38:32 Better return code. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#6 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#6 (text+ko) ==== @@ -1523,18 +1523,16 @@ const char *error; moduledata_t *p; - // XXX - mixing my own error code and errno.h is really - // a bad idea, convert everything to use errno.h handle = dlopen (path, RTLD_LAZY); if (!handle) { fputs (dlerror(), stderr); - return (-1); + return (EINVAL); } p = dlsym(handle, "alias_mod"); if ((error = dlerror()) != NULL) { fputs(error, stderr); - return (-1); + return (EINVAL); } t = malloc(sizeof(struct dll)); @@ -1545,13 +1543,13 @@ if (attach_dll(t) == EEXIST) { free(t); fputs("dll conflict", stderr); - return (-1); + return (EEXIST); } m = dlsym(t->handle, "handlers"); if ((error = dlerror()) != NULL) { fputs(error, stderr); - return (-1); + return (EINVAL); } attach_handlers(m); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:43:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6F2B316A4E7; Thu, 6 Jul 2006 13:43:05 +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 4AC8416A4E0 for ; Thu, 6 Jul 2006 13:43:05 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 83D6C43D7F for ; Thu, 6 Jul 2006 13:42:56 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Dgumr085060 for ; Thu, 6 Jul 2006 13:42:56 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66DgtGw085057 for perforce@freebsd.org; Thu, 6 Jul 2006 13:42:55 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 13:42:55 GMT Message-Id: <200607061342.k66DgtGw085057@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100751 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:43:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=100751 Change 100751 by wkoszek@wkoszek_laptop on 2006/07/06 13:42:41 Bring breakpoint() in order to make subr_kdb.c more happy. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#4 (text+ko) ==== @@ -70,5 +70,14 @@ : : "r" (flag)); } +/* + * XXXMIPS: + */ +static __inline void +breakpoint(void) +{ + __asm __volatile("break"); +} + #endif /* !_MACHINE_CPUFUNC_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 13:50:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4933316A4DE; Thu, 6 Jul 2006 13:50:07 +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 0149E16A4DA for ; Thu, 6 Jul 2006 13:50:06 +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 8F43A43D4C for ; Thu, 6 Jul 2006 13:50:06 +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 k66Do6mt085422 for ; Thu, 6 Jul 2006 13:50:06 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 k66Do6LE085419 for perforce@freebsd.org; Thu, 6 Jul 2006 13:50:06 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 13:50:06 GMT Message-Id: <200607061350.k66Do6LE085419@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 100753 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 13:50:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100753 Change 100753 by rwatson@rwatson_zoo on 2006/07/06 13:49:53 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/netinet/in_pcb.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_icmp.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_input.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_options.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_output.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/raw_ip.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_input.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_output.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_subr.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_syncache.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/udp_usrreq.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/nfsserver/nfs_syscalls.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#10 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/netinet/in_pcb.c#3 (text+ko) ==== @@ -183,11 +183,11 @@ inp->inp_pcbinfo = pcbinfo; inp->inp_socket = so; #ifdef MAC - error = mac_init_inpcb(inp, M_NOWAIT); + error = mac_inpcb_init(inp, M_NOWAIT); if (error != 0) goto out; SOCK_LOCK(so); - mac_create_inpcb_from_socket(so, inp); + mac_inpcb_create(so, inp); SOCK_UNLOCK(so); #endif #if defined(IPSEC) || defined(FAST_IPSEC) @@ -723,7 +723,7 @@ inp->inp_vflag = 0; INP_LOCK_DESTROY(inp); #ifdef MAC - mac_destroy_inpcb(inp); + mac_inpcb_destroy(inp); #endif uma_zfree(ipi->ipi_zone, inp); } ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_icmp.c#3 (text+ko) ==== @@ -228,7 +228,7 @@ if (m == NULL) goto freeit; #ifdef MAC - mac_create_mbuf_netlayer(n, m); + mac_mbuf_create_netlayer(n, m); #endif icmplen = min(icmplen, M_TRAILINGSPACE(m) - sizeof(struct ip) - ICMP_MINLEN); m_align(m, ICMP_MINLEN + icmplen); @@ -709,7 +709,7 @@ } match: #ifdef MAC - mac_reflect_mbuf_icmp(m); + mac_netinet_icmp_reply(m); #endif t = IA_SIN(ia)->sin_addr; ip->ip_src = t; ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_input.c#3 (text+ko) ==== @@ -770,7 +770,7 @@ ip->ip_src.s_addr == fp->ipq_src.s_addr && ip->ip_dst.s_addr == fp->ipq_dst.s_addr && #ifdef MAC - mac_fragment_match(m, fp) && + mac_ipq_match(m, fp) && #endif ip->ip_p == fp->ipq_p) goto found; @@ -846,12 +846,12 @@ if (fp == NULL) goto dropfrag; #ifdef MAC - if (mac_init_ipq(fp, M_NOWAIT) != 0) { + if (mac_ipq_init(fp, M_NOWAIT) != 0) { uma_zfree(ipq_zone, fp); fp = NULL; goto dropfrag; } - mac_create_ipq(m, fp); + mac_ipq_create(m, fp); #endif TAILQ_INSERT_HEAD(head, fp, ipq_list); nipq++; @@ -867,7 +867,7 @@ } else { fp->ipq_nfrags++; #ifdef MAC - mac_update_ipq(m, fp); + mac_ipq_update(m, fp); #endif } @@ -1009,8 +1009,8 @@ m->m_pkthdr.csum_data = (m->m_pkthdr.csum_data & 0xffff) + (m->m_pkthdr.csum_data >> 16); #ifdef MAC - mac_create_datagram_from_ipq(fp, m); - mac_destroy_ipq(fp); + mac_ipq_reassemble(fp, m); + mac_ipq_destroy(fp); #endif /* ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_options.c#3 (text+ko) ==== @@ -514,7 +514,7 @@ M_MOVE_PKTHDR(n, m); n->m_pkthdr.rcvif = NULL; #ifdef MAC - mac_copy_mbuf(m, n); + mac_mbuf_copy(m, n); #endif n->m_pkthdr.len += optlen; m->m_len -= sizeof(struct ip); ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_output.c#3 (text+ko) ==== @@ -726,7 +726,7 @@ m->m_pkthdr.len = mhlen + len; m->m_pkthdr.rcvif = NULL; #ifdef MAC - mac_create_fragment(m0, m); + mac_netinet_fragment(m0, m); #endif m->m_pkthdr.csum_flags = m0->m_pkthdr.csum_flags; mhip->ip_off = htons(mhip->ip_off); ==== //depot/projects/trustedbsd/mac2/sys/netinet/raw_ip.c#3 (text+ko) ==== @@ -163,7 +163,7 @@ } #endif /*IPSEC || FAST_IPSEC*/ #ifdef MAC - if (!policyfail && mac_check_inpcb_deliver(last, n) != 0) + if (!policyfail && mac_inpcb_check_deliver(last, n) != 0) policyfail = 1; #endif /* Check the minimum TTL for socket. */ @@ -329,7 +329,7 @@ flags |= IP_SENDONES; #ifdef MAC - mac_create_mbuf_from_inpcb(inp, m); + mac_inpcb_create_mbuf(inp, m); #endif error = ip_output(m, inp->inp_options, NULL, flags, ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_input.c#3 (text+ko) ==== @@ -792,7 +792,7 @@ #ifdef MAC INP_LOCK_ASSERT(inp); - if (mac_check_inpcb_deliver(inp, m)) + if (mac_inpcb_check_deliver(inp, m)) goto drop; #endif so = inp->inp_socket; @@ -1403,7 +1403,7 @@ soisconnected(so); #ifdef MAC SOCK_LOCK(so); - mac_set_socket_peer_from_mbuf(m, so); + mac_socket_set_peer_from_mbuf(m, so); SOCK_UNLOCK(so); #endif /* Do window scaling on this connection? */ ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_output.c#3 (text+ko) ==== @@ -819,7 +819,7 @@ SOCKBUF_UNLOCK_ASSERT(&so->so_snd); m->m_pkthdr.rcvif = (struct ifnet *)0; #ifdef MAC - mac_create_mbuf_from_inpcb(tp->t_inpcb, m); + mac_inpcb_create_mbuf(tp->t_inpcb, m); #endif #ifdef INET6 if (isipv6) { ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_subr.c#3 (text+ko) ==== @@ -541,13 +541,13 @@ * label of the response to reflect the socket label. */ INP_LOCK_ASSERT(inp); - mac_create_mbuf_from_inpcb(inp, m); + mac_inpcb_create_mbuf(inp, m); } else { /* * Packet is not associated with a socket, so possibly * update the label in place. */ - mac_reflect_mbuf_tcp(m); + mac_netinet_tcp_reply(m); } #endif nth->th_seq = htonl(seq); @@ -1924,7 +1924,7 @@ m->m_data += max_linkhdr; #ifdef MAC - mac_create_mbuf_from_inpcb(inp, m); + mac_inpcb_create_mbuf(inp, m); #endif #ifdef INET6 ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_syncache.c#3 (text+ko) ==== @@ -562,7 +562,7 @@ } #ifdef MAC SOCK_LOCK(so); - mac_set_socket_peer_from_mbuf(m, so); + mac_socket_set_peer_from_mbuf(m, so); SOCK_UNLOCK(so); #endif @@ -1118,7 +1118,7 @@ INP_INFO_RUNLOCK(&tcbinfo); return (ESHUTDOWN); } - mac_create_mbuf_from_inpcb(inp, m); + mac_inpcb_create_mbuf(inp, m); INP_UNLOCK(inp); INP_INFO_RUNLOCK(&tcbinfo); #endif /* MAC */ ==== //depot/projects/trustedbsd/mac2/sys/netinet/udp_usrreq.c#3 (text+ko) ==== @@ -466,7 +466,7 @@ } #endif /*IPSEC || FAST_IPSEC*/ #ifdef MAC - if (mac_check_inpcb_deliver(inp, n) != 0) { + if (mac_inpcb_check_deliver(inp, n) != 0) { m_freem(n); return; } @@ -793,7 +793,7 @@ INP_LOCK(inp); #ifdef MAC - mac_create_mbuf_from_inpcb(inp, m); + mac_inpcb_create_mbuf(inp, m); #endif laddr = inp->inp_laddr; ==== //depot/projects/trustedbsd/mac2/sys/nfsserver/nfs_syscalls.c#3 (text+ko) ==== @@ -137,7 +137,7 @@ KASSERT(!mtx_owned(&Giant), ("nfssvc(): called with Giant")); #ifdef MAC - error = mac_check_system_nfsd(td->td_ucred); + error = mac_system_check_nfsd(td->td_ucred); if (error) return (error); #endif ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#10 (text+ko) ==== @@ -57,7 +57,6 @@ struct devfs_dirent; struct ifnet; struct ifreq; -struct inpcb; struct image_params; struct inpcb; struct ipq; @@ -130,11 +129,11 @@ struct ifnet *ifnet); int mac_inpcb_init(struct inpcb *, int flag); -void mac_inpcb_destroy_inpcb(struct inpcb *); +void mac_inpcb_destroy(struct inpcb *); void mac_inpcb_create(struct socket *so, struct inpcb *inp); void mac_inpcb_create_mbuf(struct inpcb *inp, struct mbuf *m); void mac_inpcb_sosetlabel(struct socket *so, struct inpcb *inp); -int mac_inpcb_check_inpcb_deliver(struct inpcb *inp, struct mbuf *m); +int mac_inpcb_check_deliver(struct inpcb *inp, struct mbuf *m); int mac_ipq_init(struct ipq *, int flag); void mac_ipq_destroy(struct ipq *); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 14:04:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 23BC816A4E1; Thu, 6 Jul 2006 14:04:25 +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 D88EF16A4DE for ; Thu, 6 Jul 2006 14:04:24 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9EB7743D45 for ; Thu, 6 Jul 2006 14:04:24 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66E4OEm087408 for ; Thu, 6 Jul 2006 14:04:24 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66E4O3S087405 for perforce@freebsd.org; Thu, 6 Jul 2006 14:04:24 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 14:04:24 GMT Message-Id: <200607061404.k66E4O3S087405@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100754 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 14:04:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=100754 Change 100754 by piso@piso_newluxor on 2006/07/06 14:04:05 style(9): convert "res", err" to "error" Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#14 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#14 (text+ko) ==== @@ -201,58 +201,58 @@ int attach_handlers(struct proto_handler *_p) { - int i, res = -1; + int i, error = -1; LIBALIAS_WLOCK(); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; - res = _attach_handler(&_p[i]); - if (res != 0) break; + error = _attach_handler(&_p[i]); + if (error != 0) break; } LIBALIAS_WUNLOCK(); - return (res); + return (error); } int detach_handlers(struct proto_handler *_p) { - int i, res = -1; + int i, error = -1; LIBALIAS_WLOCK(); for (i=0; 1; i++) { if (*((int *)&_p[i]) == EOH) break; - res = _detach_handler(&_p[i]); - if (res != 0) break; + error = _detach_handler(&_p[i]); + if (error != 0) break; } LIBALIAS_WUNLOCK(); - return (res); + return (error); } int detach_handler(struct proto_handler *_p) { - int res = -1; + int error = -1; LIBALIAS_WLOCK(); - res = _detach_handler(_p); + error = _detach_handler(_p); LIBALIAS_WUNLOCK(); - return (res); + return (error); } int find_handler(int8_t dir, int8_t proto, struct libalias *la, struct ip *pip, struct alias_data *ad) { struct proto_handler *p; - int err = ENOENT; + int error = ENOENT; LIBALIAS_RLOCK(); LIST_FOREACH(p, &handler_chain, entries) { if ((p->dir & dir) && (p->proto & proto)) if (p->fingerprint(la, pip, ad) == 0) { - err = p->protohandler(la, pip, ad); + error = p->protohandler(la, pip, ad); break; } } LIBALIAS_RUNLOCK(); - return (err); + return (error); } struct proto_handler * From owner-p4-projects@FreeBSD.ORG Thu Jul 6 14:44:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E309816A4DE; Thu, 6 Jul 2006 14:44:13 +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 BD03516A4DA for ; Thu, 6 Jul 2006 14:44:13 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 875AF43D49 for ; Thu, 6 Jul 2006 14:44:13 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66EiDrd089258 for ; Thu, 6 Jul 2006 14:44:13 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66EiDv1089255 for perforce@freebsd.org; Thu, 6 Jul 2006 14:44:13 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 14:44:13 GMT Message-Id: <200607061444.k66EiDv1089255@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100755 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 14:44:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=100755 Change 100755 by wkoszek@wkoszek_laptop on 2006/07/06 14:43:40 TRAPF_USERMODE and TRAPF_PC won't work correctly until we have proper trap frame structures. Declare those as zero-macros. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpu.h#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpu.h#4 (text+ko) ==== @@ -56,10 +56,16 @@ #define cpu_setstack(td, ap) (0) #define cpu_spinwait() - +/* + * XXXMIPS: Change those once we'll bring header files from NetBSD. + */ +#if 0 #define TRAPF_USERMODE(framep) \ (ISPL((framep)->tf_cs) == SEL_UPL) #define TRAPF_PC(framep) ((framep)->tf_rip) +#endif +#define TRAPF_USERMODE(framep) (0) +#define TRAPF_PC(framep) (0) /* * CTL_MACHDEP definitions. From owner-p4-projects@FreeBSD.ORG Thu Jul 6 14:48:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C8FE116A4DF; Thu, 6 Jul 2006 14:48:20 +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 1FE4B16A4DD for ; Thu, 6 Jul 2006 14:48:20 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C791F43D49 for ; Thu, 6 Jul 2006 14:48:19 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66EmJK1089497 for ; Thu, 6 Jul 2006 14:48:19 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66EmJhT089494 for perforce@freebsd.org; Thu, 6 Jul 2006 14:48:19 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 14:48:19 GMT Message-Id: <200607061448.k66EmJhT089494@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100756 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 14:48:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100756 Change 100756 by piso@piso_newluxor on 2006/07/06 14:48:07 C99 struct init: style(9) doesn't contemplate C99 struct init so i had to 'invent' by myself how to indent the code... Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_cuseeme.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_dummy.c#3 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_pptp.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_skinny.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#4 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_cuseeme.c#4 (text+ko) ==== @@ -103,8 +103,23 @@ } /* Kernel module definition. */ -struct proto_handler handlers[] = {{120, OUT, UDP, &fingerprint, &protohandlerout}, - {120, IN, UDP, &fingerprint, &protohandlerin}, {EOH}}; +struct proto_handler handlers[] = { + { + .pri = 120, + .dir = OUT, + .proto = UDP, + .fingerprint = &fingerprint, + .protohandler = &protohandlerout + }, + { + .pri = 120, + .dir = IN, + .proto = UDP, + .fingerprint = &fingerprint, + .protohandler = &protohandlerin + }, + { EOH } +}; static int mod_handler(module_t mod, int type, void *data) ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_dummy.c#3 (text+ko) ==== @@ -114,8 +114,16 @@ * THEIR EXACT NAMES: handlers and entries. */ -struct proto_handler handlers [] = {{666, IN|OUT, UDP|TCP, &fingerprint, - &protohandler}, {EOH}}; +struct proto_handler handlers [] = { + { + .pri = 666, + .dir = IN|OUT, + .proto = UDP|TCP, + .fingerprint = &fingerprint, + .protohandler = &protohandler + }, + { EOH } +}; static int mod_handler(module_t mod, int type, void *data) ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#4 (text+ko) ==== @@ -132,8 +132,16 @@ return (0); } -struct proto_handler handlers[] = {{80, OUT, TCP, &fingerprint, - &protohandler}, {EOH}}; +struct proto_handler handlers[] = { + { + .pri = 80, + .dir = OUT, + .proto = TCP, + .fingerprint = &fingerprint, + .protohandler = &protohandler + }, + { EOH } +}; static int mod_handler(module_t mod, int type, void *data) ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#4 (text+ko) ==== @@ -121,8 +121,16 @@ return (0); } -struct proto_handler handlers[] = {{90, OUT, TCP, &fingerprint, - &protohandler}, {EOH}}; +struct proto_handler handlers[] = { + { + .pri = 90, + .dir = OUT, + .proto = TCP, + .fingerprint = &fingerprint, + .protohandler = &protohandler + }, + { EOH } +}; static int mod_handler(module_t mod, int type, void *data) { ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#4 (text+ko) ==== @@ -136,8 +136,23 @@ } /* Kernel module definition. */ -struct proto_handler handlers[] = {{130, IN|OUT, UDP, &fingerprint1, &protohandler1}, - {140, IN|OUT, UDP, &fingerprint2, &protohandler2}, {EOH}}; +struct proto_handler handlers[] = { + { + .pri = 130, + .dir = IN|OUT, + .proto = UDP, + .fingerprint = &fingerprint1, + .protohandler = &protohandler1 + }, + { + .pri = 140, + .dir = IN|OUT, + .proto = UDP, + .fingerprint = &fingerprint2, + .protohandler = &protohandler2 + }, + { EOH } +}; static int mod_handler(module_t mod, int type, void *data) ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_pptp.c#4 (text+ko) ==== @@ -159,15 +159,42 @@ } /* Kernel module definition. */ -struct proto_handler handlers[] = {{200, IN, TCP, &fingerprint, &protohandlerin}, - {210, OUT, TCP, &fingerprint, &protohandlerout}, +struct proto_handler handlers[] = { + { + .pri = 200, + .dir = IN, + .proto = TCP, + .fingerprint = &fingerprint, + .protohandler = &protohandlerin + }, + { + .pri = 210, + .dir = OUT, + .proto = TCP, + .fingerprint = &fingerprint, + .protohandler = &protohandlerout + }, /* * WATCH OUT!!! these 2 handlers NEED a priority of INT_MAX (highest possible) * cause they will ALWAYS process packets, so they must be the last one * in chain: look fingerprintgre() above. */ - {INT_MAX, IN, IP, &fingerprintgre, &protohandlergrein}, - {INT_MAX, OUT, IP, &fingerprintgre, &protohandlergreout}, {EOH}}; + { + .pri = INT_MAX, + .dir = IN, + .proto = IP, + .fingerprint = &fingerprintgre, + .protohandler = &protohandlergrein + }, + { + .pri = INT_MAX, + .dir = OUT, + .proto = IP, + .fingerprint = &fingerprintgre, + .protohandler = &protohandlergreout + }, + { EOH } +}; static int mod_handler(module_t mod, int type, void *data) { ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_skinny.c#4 (text+ko) ==== @@ -91,8 +91,16 @@ return (0); } -struct proto_handler handlers[] = {{110, IN|OUT, TCP, &fingerprint, - &protohandler}, {EOH}}; +struct proto_handler handlers[] = { + { + .pri = 110, + .dir = IN|OUT, + .proto = TCP, + .fingerprint = &fingerprint, + .protohandler = &protohandler + }, + { EOH } +}; static int mod_handler(module_t mod, int type, void *data) ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#4 (text+ko) ==== @@ -167,8 +167,16 @@ return (0); } -struct proto_handler handlers[] = {{100, OUT, TCP|UDP, &fingerprint, - &protohandler}, {EOH}}; +struct proto_handler handlers[] = { + { + .pri = 100, + .dir = OUT, + .proto = TCP|UDP, + .fingerprint = &fingerprint, + .protohandler = &protohandler + }, + { EOH } +}; static int mod_handler(module_t mod, int type, void *data) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 15:23:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 12C5516A4DF; Thu, 6 Jul 2006 15:23:04 +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 E3F6E16A4DA for ; Thu, 6 Jul 2006 15:23:03 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9BBF443D73 for ; Thu, 6 Jul 2006 15:23:03 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66FN3Xo093223 for ; Thu, 6 Jul 2006 15:23:03 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66FN3Mk093220 for perforce@freebsd.org; Thu, 6 Jul 2006 15:23:03 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 15:23:03 GMT Message-Id: <200607061523.k66FN3Mk093220@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100757 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 15:23:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=100757 Change 100757 by piso@piso_newluxor on 2006/07/06 15:22:21 Reduce the verbosity of alias_data's fields. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_cuseeme.c#5 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_dummy.c#4 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#5 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#5 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#14 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#5 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#5 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_cuseeme.c#5 (text+ko) ==== @@ -75,7 +75,7 @@ int fingerprint(struct libalias *la, struct ip *pip, struct alias_data *ah) { - if (ah->dport == NULL || ah->original_address == NULL) + if (ah->dport == NULL || ah->oaddr == NULL) return (-1); if (ntohs(*ah->dport) == CUSEEME_PORT_NUMBER) return (0); @@ -88,7 +88,7 @@ int protohandlerin(struct libalias *la, struct ip *pip, struct alias_data *ah) { - AliasHandleCUSeeMeIn(la, pip, *ah->original_address); + AliasHandleCUSeeMeIn(la, pip, *ah->oaddr); return (0); } ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_dummy.c#4 (text+ko) ==== @@ -79,7 +79,7 @@ * is empy/NULL, return a -1 value */ if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || - ah->maxpacketsize == 0) + ah->maxpktsize == 0) return (-1); /* * fingerprint the incoming packet, if it matches any conditions ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#5 (text+ko) ==== @@ -114,7 +114,7 @@ fingerprint(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || - ah->maxpacketsize == 0) + ah->maxpktsize == 0) return (-1); if (ntohs(*ah->dport) == FTP_CONTROL_PORT_NUMBER || ntohs(*ah->sport) == FTP_CONTROL_PORT_NUMBER) @@ -128,7 +128,7 @@ int protohandler(struct libalias *la, struct ip *pip, struct alias_data *ah) { - AliasHandleFtpOut(la, pip, ah->lnk, ah->maxpacketsize); + AliasHandleFtpOut(la, pip, ah->lnk, ah->maxpktsize); return (0); } ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#5 (text+ko) ==== @@ -103,7 +103,7 @@ fingerprint(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (ah->dport == NULL || ah->dport == NULL || ah->lnk == NULL || - ah->maxpacketsize == 0) + ah->maxpktsize == 0) return (-1); if (ntohs(*ah->dport) == IRC_CONTROL_PORT_NUMBER_1 || ntohs(*ah->dport) == IRC_CONTROL_PORT_NUMBER_2) @@ -117,7 +117,7 @@ int protohandler(struct libalias *la, struct ip *pip, struct alias_data *ah) { - AliasHandleIrcOut(la, pip, ah->lnk, ah->maxpacketsize); + AliasHandleIrcOut(la, pip, ah->lnk, ah->maxpktsize); return (0); } ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.h#14 (text+ko) ==== @@ -51,12 +51,12 @@ */ struct alias_data { - struct alias_link *lnk; - struct in_addr *original_address; - struct in_addr *alias_address; - uint16_t *alias_port; - uint16_t *sport, *dport; - uint16_t maxpacketsize; + struct alias_link *lnk; + struct in_addr *oaddr; /* Original address. */ + struct in_addr *aaddr; /* Alias address. */ + uint16_t *aport; /* Alias port. */ + uint16_t *sport, *dport; /* Source & destination port */ + uint16_t maxpktsize; /* Max packet size. */ }; /* ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#5 (text+ko) ==== @@ -91,7 +91,7 @@ fingerprint1(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || - ah->alias_address == NULL || ah->alias_port == NULL) + ah->aaddr == NULL || ah->aport == NULL) return (-1); if (ntohs(*ah->dport) == NETBIOS_DGM_PORT_NUMBER || ntohs(*ah->sport) == NETBIOS_DGM_PORT_NUMBER) @@ -105,7 +105,7 @@ int protohandler1(struct libalias *la, struct ip *pip, struct alias_data *ah) { - AliasHandleUdpNbt(la, pip, ah->lnk, ah->alias_address, *ah->alias_port); + AliasHandleUdpNbt(la, pip, ah->lnk, ah->aaddr, *ah->aport); return (0); } @@ -116,7 +116,7 @@ fingerprint2(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || - ah->alias_address == NULL || ah->alias_port == NULL) + ah->aaddr == NULL || ah->aport == NULL) return (-1); if (ntohs(*ah->dport) == NETBIOS_NS_PORT_NUMBER || ntohs(*ah->sport) == NETBIOS_NS_PORT_NUMBER) @@ -131,7 +131,7 @@ protohandler2(struct libalias *la, struct ip *pip, struct alias_data *ah) { AliasHandleUdpNbtNS(la, pip, ah->lnk, &pip->ip_src, ah->sport, - ah->alias_address, ah->alias_port); + ah->aaddr, ah->aport); return (0); } ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#5 (text+ko) ==== @@ -143,7 +143,7 @@ fingerprint(struct libalias *la, struct ip *pip, struct alias_data *ah) { if (ah->dport == NULL || ah->sport == NULL || ah->lnk == NULL || - ah->maxpacketsize == 0) + ah->maxpktsize == 0) return (-1); if (ntohs(*ah->dport) == RTSP_CONTROL_PORT_NUMBER_1 || ntohs(*ah->sport) == RTSP_CONTROL_PORT_NUMBER_1 @@ -162,8 +162,8 @@ if (ntohs(*ah->dport) == TFTP_PORT_NUMBER) FindRtspOut(la, pip->ip_src, pip->ip_dst, - *ah->sport, *ah->alias_port, IPPROTO_UDP); - else AliasHandleRtspOut(la, pip, ah->lnk, ah->maxpacketsize); + *ah->sport, *ah->aport, IPPROTO_UDP); + else AliasHandleRtspOut(la, pip, ah->lnk, ah->maxpktsize); return (0); } From owner-p4-projects@FreeBSD.ORG Thu Jul 6 15:29:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D8A516A4EC; Thu, 6 Jul 2006 15:29:50 +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 1101D16A4DD for ; Thu, 6 Jul 2006 15:29:50 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B943C43E18 for ; Thu, 6 Jul 2006 15:29:12 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66FTBPo093727 for ; Thu, 6 Jul 2006 15:29:11 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66FTBaW093724 for perforce@freebsd.org; Thu, 6 Jul 2006 15:29:11 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 15:29:11 GMT Message-Id: <200607061529.k66FTBaW093724@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100758 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 15:29:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=100758 Change 100758 by piso@piso_newluxor on 2006/07/06 15:28:32 C99 struct init: update alias_data to use C99 struct init. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#7 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#7 (text+ko) ==== @@ -726,13 +726,13 @@ int accumulate; int r = 0, error; struct alias_data ad = { - lnk, - &original_address, - &alias_address, - &alias_port, - &ud->uh_sport, - &ud->uh_dport, - 0 /* Maxpacketsize. */ + .lnk = lnk, + .oaddr = &original_address, + .aaddr = &alias_address, + .aport = &alias_port, + .sport = &ud->uh_sport, + .dport = &ud->uh_dport, + .maxpktsize = 0 }; alias_address = GetAliasAddress(lnk); @@ -788,13 +788,13 @@ u_short alias_port; struct in_addr alias_address; struct alias_data ad = { - lnk, - NULL, /* Original address. */ - &alias_address, - &alias_port, - &ud->uh_sport, - &ud->uh_dport, - 0 /* Maxpacketsize. */ + .lnk = lnk, + .oaddr = NULL, + .aaddr = &alias_address, + .aport = &alias_port, + .sport = &ud->uh_sport, + .dport = &ud->uh_dport, + .maxpktsize = 0 }; alias_address = GetAliasAddress(lnk); @@ -856,13 +856,13 @@ */ struct alias_data ad = { - lnk, - NULL, /* Original address. */ - NULL, /* Alias address. */ - NULL, /* Alias port. */ - &tc->th_sport, - &tc->th_dport, - 0 /* Maxpacketsize. */ + .lnk = lnk, + .oaddr = NULL, + .aaddr = NULL, + .aport = NULL, + .sport = &tc->th_sport, + .dport = &tc->th_dport, + .maxpktsize = 0 }; /* Walk out chain. */ @@ -882,13 +882,13 @@ */ #if 0 struct alias_data ad = { - lnk, - &original_address, - &alias_address, - &alias_port, - &ud->uh_sport, - &ud->uh_dport, - 0 /* Maxpacketsize. */ + .lnk = lnk, + .oaddr = &original_address, + .aaddr = &alias_address, + .aport = &alias_port, + .sport = &ud->uh_sport, + .dport = &ud->uh_dport, + .maxpktsize = 0 }; /* Walk out chain. */ @@ -999,13 +999,13 @@ struct in_addr alias_address; int accumulate; struct alias_data ad = { - lnk, - NULL, /* Original address. */ - &alias_address, - &alias_port, - &tc->th_sport, - &tc->th_dport, - maxpacketsize + .lnk = lnk, + .oaddr = NULL, + .aaddr = &alias_address, + .aport = &alias_port, + .sport = &tc->th_sport, + .dport = &tc->th_dport, + .maxpktsize = maxpacketsize }; /* Save original destination address, if this is a proxy packet. @@ -1229,13 +1229,13 @@ case IPPROTO_GRE: { int error; struct alias_data ad = { - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 0 + .lnk = NULL, + .oaddr = NULL, + .aaddr = NULL, + .aport = NULL, + .sport = NULL, + .dport = NULL, + .maxpktsize = 0 }; /* Walk out chain. */ @@ -1355,13 +1355,13 @@ case IPPROTO_GRE: { int error; struct alias_data ad = { - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 0 + .lnk = NULL, + .oaddr = NULL, + .aaddr = NULL, + .aport = NULL, + .sport = NULL, + .dport = NULL, + .maxpktsize = 0 }; /* Walk out chain. */ error = find_handler(OUT, IP, la, pip, &ad); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 15:38:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 935A616A4E0; Thu, 6 Jul 2006 15:38:23 +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 705D216A4DD for ; Thu, 6 Jul 2006 15:38:23 +0000 (UTC) (envelope-from deker@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 342CF43D46 for ; Thu, 6 Jul 2006 15:38:23 +0000 (GMT) (envelope-from deker@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66FcNgV094273 for ; Thu, 6 Jul 2006 15:38:23 GMT (envelope-from deker@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66FcMCJ094270 for perforce@freebsd.org; Thu, 6 Jul 2006 15:38:22 GMT (envelope-from deker@FreeBSD.org) Date: Thu, 6 Jul 2006 15:38:22 GMT Message-Id: <200607061538.k66FcMCJ094270@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to deker@FreeBSD.org using -f From: Rob Deker To: Perforce Change Reviews Cc: Subject: PERFORCE change 100759 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 15:38:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=100759 Change 100759 by deker@sebsd_build on 2006/07/06 15:37:35 Update SEBSD page for new 7.0 version snapshot and add supfile/Install notes. Affected files ... .. //depot/projects/trustedbsd/www/downloads/20060705-7.0-SEBSD-supfile#1 add .. //depot/projects/trustedbsd/www/downloads/20060705-7.0-SEBSDInstall.txt#1 add .. //depot/projects/trustedbsd/www/sebsd.page#6 edit Differences ... ==== //depot/projects/trustedbsd/www/sebsd.page#6 (text+ko) ==== @@ -37,7 +37,7 @@ - $P4: //depot/projects/trustedbsd/www/sebsd.page#5 $ + $P4: //depot/projects/trustedbsd/www/sebsd.page#6 $ @@ -76,6 +76,15 @@ However, these components are available as source code module that plugs into the MAC Framework.

+

2006-07-05 7.0-SEBSD supfile: Download. + Install notes. + This SEBSD snapshot is based on a March 2006 snapshot of FreeBSD 7.x + and SELinux sources from the same timeframe. It also includes the new + SELinux Reference Policy + as a new policy baseline. It should be noted that SEBSD will not + currently function in enforcing mode as the new policy development + is still at a relatively early stage.

+

2005-06-24 6.0-SEBSD snapshot ISO: Download. Install notes. From owner-p4-projects@FreeBSD.ORG Thu Jul 6 15:44:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6B36F16A4E5; Thu, 6 Jul 2006 15:44:32 +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 464D716A4DD for ; Thu, 6 Jul 2006 15:44:32 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 60ACC43D68 for ; Thu, 6 Jul 2006 15:44:31 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66FiV3P094539 for ; Thu, 6 Jul 2006 15:44:31 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66FiV5S094536 for perforce@freebsd.org; Thu, 6 Jul 2006 15:44:31 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 15:44:31 GMT Message-Id: <200607061544.k66FiV5S094536@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100760 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 15:44:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=100760 Change 100760 by wkoszek@wkoszek_laptop on 2006/07/06 15:44:12 Make netinet/ more happy due to additional parentheses around + and - when mixed with bitwise shifts. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/in_cksum.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/in_cksum.h#2 (text+ko) ==== @@ -56,7 +56,7 @@ { int __tmpsum; __tmpsum = (int)ntohs(ip->ip_sum) + 256; - ip->ip_sum = htons(__tmpsum + (__tmpsum >> 16)); + ip->ip_sum = htons((__tmpsum + (__tmpsum >> 16))); } #else From owner-p4-projects@FreeBSD.ORG Thu Jul 6 15:48:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 76A9D16A4DE; Thu, 6 Jul 2006 15:48:37 +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 3AC3416A4E6 for ; Thu, 6 Jul 2006 15:48:37 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D579C43D49 for ; Thu, 6 Jul 2006 15:48:36 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Fmaxc094744 for ; Thu, 6 Jul 2006 15:48:36 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66FmaIS094741 for perforce@freebsd.org; Thu, 6 Jul 2006 15:48:36 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 15:48:36 GMT Message-Id: <200607061548.k66FmaIS094741@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100761 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 15:48:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=100761 Change 100761 by wkoszek@wkoszek_laptop on 2006/07/06 15:47:48 Remember to mark my changes with XXXMIPS to not make other people angry once I break something. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/in_cksum.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/in_cksum.h#3 (text+ko) ==== @@ -51,6 +51,9 @@ */ #ifdef __CC_SUPPORTS___INLINE +/* + * XXXMIPS: Additional paranthesis to make gcc more happy. + */ static __inline void in_cksum_update(struct ip *ip) { From owner-p4-projects@FreeBSD.ORG Thu Jul 6 15:55:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 301D116A4E1; Thu, 6 Jul 2006 15:55:46 +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 B168316A4DD for ; Thu, 6 Jul 2006 15:55:46 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6C67343D5A for ; Thu, 6 Jul 2006 15:55:46 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Ftkaj095082 for ; Thu, 6 Jul 2006 15:55:46 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66FtktX095079 for perforce@freebsd.org; Thu, 6 Jul 2006 15:55:46 GMT (envelope-from piso@freebsd.org) Date: Thu, 6 Jul 2006 15:55:46 GMT Message-Id: <200607061555.k66FtktX095079@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 100762 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 15:55:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=100762 Change 100762 by piso@piso_newluxor on 2006/07/06 15:55:33 Some more style(9) fixes: indentation, white space and comments. Affected files ... .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#8 edit .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#15 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#8 (text+ko) ==== @@ -1504,7 +1504,8 @@ while (1) { fgets(buf, 256, fd); - if feof(fd) break; + if feof(fd) + break; len = strlen(buf); if (len > 1) { buf[len - 1] = '\0'; ==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_mod.c#15 (text+ko) ==== @@ -61,7 +61,7 @@ #include -/* protocol and userland module handlers chains */ +/* Protocol and userland module handlers chains. */ LIST_HEAD(handler_chain, proto_handler) handler_chain = LIST_HEAD_INITIALIZER(foo); #ifdef _KERNEL struct rwlock handler_rw; @@ -172,15 +172,16 @@ LIBALIAS_WLOCK_ASSERT(); LIST_FOREACH(b, &handler_chain, entries) { - if ((b->pri == p->pri) && (b->dir == p->dir) && - (b->proto == p->proto)) - return (EEXIST); /* priority conflict */ + if ((b->pri == p->pri) && + (b->dir == p->dir) && + (b->proto == p->proto)) + return (EEXIST); /* Priority conflict. */ if (b->pri > p->pri) { LIST_INSERT_BEFORE(b, p, entries); return (0); } } - /* end of list or got right position, insert here */ + /* End of list or found right position, inserts here. */ LIST_INSERT_AFTER(b, p, entries); return (0); } @@ -196,7 +197,7 @@ return (0); } } - return (ENOENT); /* handler not found */ + return (ENOENT); /* Handler not found. */ } int @@ -205,9 +206,11 @@ LIBALIAS_WLOCK(); for (i=0; 1; i++) { - if (*((int *)&_p[i]) == EOH) break; + if (*((int *)&_p[i]) == EOH) + break; error = _attach_handler(&_p[i]); - if (error != 0) break; + if (error != 0) + break; } LIBALIAS_WUNLOCK(); return (error); @@ -219,9 +222,11 @@ LIBALIAS_WLOCK(); for (i=0; 1; i++) { - if (*((int *)&_p[i]) == EOH) break; + if (*((int *)&_p[i]) == EOH) + break; error = _detach_handler(&_p[i]); - if (error != 0) break; + if (error != 0) + break; } LIBALIAS_WUNLOCK(); return (error); @@ -238,7 +243,8 @@ } int -find_handler(int8_t dir, int8_t proto, struct libalias *la, struct ip *pip, struct alias_data *ad) { +find_handler(int8_t dir, int8_t proto, struct libalias *la, struct ip *pip, + struct alias_data *ad) { struct proto_handler *p; int error = ENOENT; @@ -261,7 +267,7 @@ return (LIST_FIRST(&handler_chain)); } -/* dll manipulation code - this code is not thread safe... */ +/* Dll manipulation code - this code is not thread safe... */ int attach_dll(struct dll *p) { @@ -269,9 +275,8 @@ SLIST_FOREACH(b, &dll_chain, next) { if (!strncmp(b->name, p->name, DLL_LEN)) - return (EEXIST); /* dll name conflict */ + return (EEXIST); /* Dll name conflict. */ } - /* end of list, insert here */ SLIST_INSERT_HEAD(&dll_chain, p, next); return (0); } From owner-p4-projects@FreeBSD.ORG Thu Jul 6 16:16:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F1EF116A4DE; Thu, 6 Jul 2006 16:16:23 +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 8A5E416A4E9 for ; Thu, 6 Jul 2006 16:16:23 +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 D7C9F43D5E for ; Thu, 6 Jul 2006 16:16:12 +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 k66GGC3r097301 for ; Thu, 6 Jul 2006 16:16:12 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 k66GGCw6097298 for perforce@freebsd.org; Thu, 6 Jul 2006 16:16:12 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 16:16:12 GMT Message-Id: <200607061616.k66GGCw6097298@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 100766 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 16:16:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100766 Change 100766 by rwatson@rwatson_zoo on 2006/07/06 16:15:55 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_inet.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_internal.h#4 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_label.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_net.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_pipe.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_posix_sem.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_process.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_vfs.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#11 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#19 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_inet.c#2 (text+ko) ==== @@ -2,6 +2,7 @@ * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001 Ilmar S. Habibulin * Copyright (c) 2001-2004 Networks Associates Technology, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson and Ilmar Habibulin for the @@ -12,6 +13,9 @@ * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), * as part of the DARPA CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -42,9 +46,9 @@ #include #include #include +#include #include #include -#include #include #include #include @@ -84,9 +88,9 @@ label = mac_labelzone_alloc(flag); if (label == NULL) return (NULL); - MAC_CHECK(init_inpcb_label, label, flag); + MAC_CHECK(inpcb_init_label, label, flag); if (error) { - MAC_PERFORM(destroy_inpcb_label, label); + MAC_PERFORM(inpcb_destroy_label, label); mac_labelzone_free(label); return (NULL); } @@ -95,7 +99,7 @@ } int -mac_init_inpcb(struct inpcb *inp, int flag) +mac_inpcb_init(struct inpcb *inp, int flag) { inp->inp_label = mac_inpcb_label_alloc(flag); @@ -114,9 +118,9 @@ if (label == NULL) return (NULL); - MAC_CHECK(init_ipq_label, label, flag); + MAC_CHECK(ipq_init_label, label, flag); if (error) { - MAC_PERFORM(destroy_ipq_label, label); + MAC_PERFORM(ipq_destroy_label, label); mac_labelzone_free(label); return (NULL); } @@ -125,7 +129,7 @@ } int -mac_init_ipq(struct ipq *ipq, int flag) +mac_ipq_init(struct ipq *ipq, int flag) { ipq->ipq_label = mac_ipq_label_alloc(flag); @@ -138,13 +142,13 @@ mac_inpcb_label_free(struct label *label) { - MAC_PERFORM(destroy_inpcb_label, label); + MAC_PERFORM(inpcb_destroy_label, label); mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacinpcbs); } void -mac_destroy_inpcb(struct inpcb *inp) +mac_inpcb_destroy(struct inpcb *inp) { mac_inpcb_label_free(inp->inp_label); @@ -155,13 +159,13 @@ mac_ipq_label_free(struct label *label) { - MAC_PERFORM(destroy_ipq_label, label); + MAC_PERFORM(ipq_destroy_label, label); mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacipqs); } void -mac_destroy_ipq(struct ipq *ipq) +mac_ipq_destroy(struct ipq *ipq) { mac_ipq_label_free(ipq->ipq_label); @@ -169,59 +173,57 @@ } void -mac_create_inpcb_from_socket(struct socket *so, struct inpcb *inp) +mac_inpcb_create(struct socket *so, struct inpcb *inp) { - MAC_PERFORM(create_inpcb_from_socket, so, so->so_label, inp, - inp->inp_label); + MAC_PERFORM(inpcb_create, so, so->so_label, inp, inp->inp_label); } void -mac_create_datagram_from_ipq(struct ipq *ipq, struct mbuf *datagram) +mac_ipq_reassemble(struct ipq *ipq, struct mbuf *datagram) { struct label *label; label = mac_mbuf_to_label(datagram); - MAC_PERFORM(create_datagram_from_ipq, ipq, ipq->ipq_label, - datagram, label); + MAC_PERFORM(ipq_reassemble, ipq, ipq->ipq_label, datagram, label); } void -mac_create_fragment(struct mbuf *datagram, struct mbuf *fragment) +mac_netinet_fragment(struct mbuf *datagram, struct mbuf *fragment) { struct label *datagramlabel, *fragmentlabel; datagramlabel = mac_mbuf_to_label(datagram); fragmentlabel = mac_mbuf_to_label(fragment); - MAC_PERFORM(create_fragment, datagram, datagramlabel, fragment, + MAC_PERFORM(netinet_fragment, datagram, datagramlabel, fragment, fragmentlabel); } void -mac_create_ipq(struct mbuf *fragment, struct ipq *ipq) +mac_ipq_create(struct mbuf *fragment, struct ipq *ipq) { struct label *label; label = mac_mbuf_to_label(fragment); - MAC_PERFORM(create_ipq, fragment, label, ipq, ipq->ipq_label); + MAC_PERFORM(ipq_create, fragment, label, ipq, ipq->ipq_label); } void -mac_create_mbuf_from_inpcb(struct inpcb *inp, struct mbuf *m) +mac_inpcb_create_mbuf(struct inpcb *inp, struct mbuf *m) { struct label *mlabel; INP_LOCK_ASSERT(inp); mlabel = mac_mbuf_to_label(m); - MAC_PERFORM(create_mbuf_from_inpcb, inp, inp->inp_label, m, mlabel); + MAC_PERFORM(inpcb_create_mbuf, inp, inp->inp_label, m, mlabel); } int -mac_fragment_match(struct mbuf *fragment, struct ipq *ipq) +mac_ipq_match(struct mbuf *fragment, struct ipq *ipq) { struct label *label; int result; @@ -229,43 +231,42 @@ label = mac_mbuf_to_label(fragment); result = 1; - MAC_BOOLEAN(fragment_match, &&, fragment, label, ipq, - ipq->ipq_label); + MAC_BOOLEAN(ipq_match, &&, fragment, label, ipq, ipq->ipq_label); return (result); } void -mac_reflect_mbuf_icmp(struct mbuf *m) +mac_netinet_icmp_reply(struct mbuf *m) { struct label *label; label = mac_mbuf_to_label(m); - MAC_PERFORM(reflect_mbuf_icmp, m, label); + MAC_PERFORM(netinet_icmp_reply, m, label); } void -mac_reflect_mbuf_tcp(struct mbuf *m) +mac_netinet_tcp_reply(struct mbuf *m) { struct label *label; label = mac_mbuf_to_label(m); - MAC_PERFORM(reflect_mbuf_tcp, m, label); + MAC_PERFORM(netinet_tcp_reply, m, label); } void -mac_update_ipq(struct mbuf *fragment, struct ipq *ipq) +mac_ipq_update(struct mbuf *fragment, struct ipq *ipq) { struct label *label; label = mac_mbuf_to_label(fragment); - MAC_PERFORM(update_ipq, fragment, label, ipq, ipq->ipq_label); + MAC_PERFORM(ipq_update, fragment, label, ipq, ipq->ipq_label); } int -mac_check_inpcb_deliver(struct inpcb *inp, struct mbuf *m) +mac_inpcb_check_deliver(struct inpcb *inp, struct mbuf *m) { struct label *label; int error; @@ -277,7 +278,7 @@ label = mac_mbuf_to_label(m); - MAC_CHECK(check_inpcb_deliver, inp, inp->inp_label, m, label); + MAC_CHECK(inpcb_check_deliver, inp, inp->inp_label, m, label); return (error); } ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_internal.h#4 (text+ko) ==== @@ -13,6 +13,9 @@ * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), * as part of the DARPA CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -223,7 +226,7 @@ break; \ } \ claimed = 0; \ - MAC_CHECK(externalize_ ## type ## _label, label, \ + MAC_CHECK(type ## _externalize_label, label, \ element_name, &sb, &claimed); \ if (error) \ break; \ @@ -254,7 +257,7 @@ break; \ } \ claimed = 0; \ - MAC_CHECK(internalize_ ## type ## _label, label, \ + MAC_CHECK(type ## _internalize_label, label, \ element_name, element_data, &claimed); \ if (error) \ break; \ ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_label.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ #include "opt_mac.h" #include -#include +#include #include #include ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_net.c#2 (text+ko) ==== @@ -2,6 +2,7 @@ * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001 Ilmar S. Habibulin * Copyright (c) 2001-2004 Networks Associates Technology, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson and Ilmar Habibulin for the @@ -12,6 +13,9 @@ * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), * as part of the DARPA CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -45,6 +49,7 @@ #include #include #include +#include #include #include #include @@ -114,13 +119,13 @@ struct label *label; label = mac_labelzone_alloc(M_WAITOK); - MAC_PERFORM(init_bpfdesc_label, label); + MAC_PERFORM(bpfdesc_init_label, label); MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); return (label); } void -mac_init_bpfdesc(struct bpf_d *bpf_d) +mac_bpfdesc_init(struct bpf_d *bpf_d) { bpf_d->bd_label = mac_bpfdesc_label_alloc(); @@ -132,20 +137,20 @@ struct label *label; label = mac_labelzone_alloc(M_WAITOK); - MAC_PERFORM(init_ifnet_label, label); + MAC_PERFORM(ifnet_init_label, label); MAC_DEBUG_COUNTER_INC(&nmacifnets); return (label); } void -mac_init_ifnet(struct ifnet *ifp) +mac_ifnet_init(struct ifnet *ifp) { ifp->if_label = mac_ifnet_label_alloc(); } int -mac_init_mbuf_tag(struct m_tag *tag, int flag) +mac_mbuf_tag_init(struct m_tag *tag, int flag) { struct label *label; int error; @@ -153,9 +158,9 @@ label = (struct label *) (tag + 1); mac_init_label(label); - MAC_CHECK(init_mbuf_label, label, flag); + MAC_CHECK(mbuf_init_label, label, flag); if (error) { - MAC_PERFORM(destroy_mbuf_label, label); + MAC_PERFORM(mbuf_destroy_label, label); mac_destroy_label(label); } else { MAC_DEBUG_COUNTER_INC(&nmacmbufs); @@ -164,7 +169,7 @@ } int -mac_init_mbuf(struct mbuf *m, int flag) +mac_mbuf_init(struct mbuf *m, int flag) { struct m_tag *tag; int error; @@ -183,7 +188,7 @@ flag); if (tag == NULL) return (ENOMEM); - error = mac_init_mbuf_tag(tag, flag); + error = mac_mbuf_tag_init(tag, flag); if (error) { m_tag_free(tag); return (error); @@ -196,13 +201,13 @@ mac_bpfdesc_label_free(struct label *label) { - MAC_PERFORM(destroy_bpfdesc_label, label); + MAC_PERFORM(bpfdesc_destroy_label, label); mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacbpfdescs); } void -mac_destroy_bpfdesc(struct bpf_d *bpf_d) +mac_bpfdesc_destroy(struct bpf_d *bpf_d) { mac_bpfdesc_label_free(bpf_d->bd_label); @@ -213,13 +218,13 @@ mac_ifnet_label_free(struct label *label) { - MAC_PERFORM(destroy_ifnet_label, label); + MAC_PERFORM(ifnet_destroy_label, label); mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacifnets); } void -mac_destroy_ifnet(struct ifnet *ifp) +mac_ifnet_destroy(struct ifnet *ifp) { mac_ifnet_label_free(ifp->if_label); @@ -227,19 +232,19 @@ } void -mac_destroy_mbuf_tag(struct m_tag *tag) +mac_mbuf_tag_destroy(struct m_tag *tag) { struct label *label; label = (struct label *)(tag+1); - MAC_PERFORM(destroy_mbuf_label, label); + MAC_PERFORM(mbuf_destroy_label, label); mac_destroy_label(label); MAC_DEBUG_COUNTER_DEC(&nmacmbufs); } void -mac_copy_mbuf_tag(struct m_tag *src, struct m_tag *dest) +mac_mbuf_tag_copy(struct m_tag *src, struct m_tag *dest) { struct label *src_label, *dest_label; @@ -247,32 +252,32 @@ dest_label = (struct label *)(dest+1); /* - * mac_init_mbuf_tag() is called on the target tag in + * mac_mbuf_tag_init() is called on the target tag in * m_tag_copy(), so we don't need to call it here. */ - MAC_PERFORM(copy_mbuf_label, src_label, dest_label); + MAC_PERFORM(mbuf_copy_label, src_label, dest_label); } void -mac_copy_mbuf(struct mbuf *m_from, struct mbuf *m_to) +mac_mbuf_copy(struct mbuf *m_from, struct mbuf *m_to) { struct label *src_label, *dest_label; src_label = mac_mbuf_to_label(m_from); dest_label = mac_mbuf_to_label(m_to); - MAC_PERFORM(copy_mbuf_label, src_label, dest_label); + MAC_PERFORM(mbuf_copy_label, src_label, dest_label); } static void -mac_copy_ifnet_label(struct label *src, struct label *dest) +mac_ifnet_copy_label(struct label *src, struct label *dest) { - MAC_PERFORM(copy_ifnet_label, src, dest); + MAC_PERFORM(ifnet_copy_label, src, dest); } static int -mac_externalize_ifnet_label(struct label *label, char *elements, +mac_ifnet_externalize_label(struct label *label, char *elements, char *outbuf, size_t outbuflen) { int error; @@ -283,7 +288,7 @@ } static int -mac_internalize_ifnet_label(struct label *label, char *string) +mac_ifnet_internalize_label(struct label *label, char *string) { int error; @@ -293,23 +298,23 @@ } void -mac_create_ifnet(struct ifnet *ifnet) +mac_ifnet_create(struct ifnet *ifnet) { MAC_IFNET_LOCK(ifnet); - MAC_PERFORM(create_ifnet, ifnet, ifnet->if_label); + MAC_PERFORM(ifnet_create, ifnet, ifnet->if_label); MAC_IFNET_UNLOCK(ifnet); } void -mac_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d) +mac_bpfdesc_create(struct ucred *cred, struct bpf_d *bpf_d) { - MAC_PERFORM(create_bpfdesc, cred, bpf_d, bpf_d->bd_label); + MAC_PERFORM(bpfdesc_create, cred, bpf_d, bpf_d->bd_label); } void -mac_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct mbuf *mbuf) +mac_bpfdesc_create_mbuf(struct bpf_d *bpf_d, struct mbuf *mbuf) { struct label *label; @@ -317,8 +322,7 @@ label = mac_mbuf_to_label(mbuf); - MAC_PERFORM(create_mbuf_from_bpfdesc, bpf_d, bpf_d->bd_label, mbuf, - label); + MAC_PERFORM(bpfdesc_create_mbuf, bpf_d, bpf_d->bd_label, mbuf, label); } void @@ -335,20 +339,19 @@ } void -mac_create_mbuf_from_ifnet(struct ifnet *ifnet, struct mbuf *mbuf) +mac_ifnet_create_mbuf(struct ifnet *ifnet, struct mbuf *mbuf) { struct label *label; label = mac_mbuf_to_label(mbuf); MAC_IFNET_LOCK(ifnet); - MAC_PERFORM(create_mbuf_from_ifnet, ifnet, ifnet->if_label, mbuf, - label); + MAC_PERFORM(ifnet_create_mbuf, ifnet, ifnet->if_label, mbuf, label); MAC_IFNET_UNLOCK(ifnet); } void -mac_create_mbuf_multicast_encap(struct mbuf *oldmbuf, struct ifnet *ifnet, +mac_mbuf_create_multicast_encap(struct mbuf *oldmbuf, struct ifnet *ifnet, struct mbuf *newmbuf) { struct label *oldmbuflabel, *newmbuflabel; @@ -357,25 +360,25 @@ newmbuflabel = mac_mbuf_to_label(newmbuf); MAC_IFNET_LOCK(ifnet); - MAC_PERFORM(create_mbuf_multicast_encap, oldmbuf, oldmbuflabel, + MAC_PERFORM(mbuf_create_multicast_encap, oldmbuf, oldmbuflabel, ifnet, ifnet->if_label, newmbuf, newmbuflabel); MAC_IFNET_UNLOCK(ifnet); } void -mac_create_mbuf_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf) +mac_mbuf_create_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf) { struct label *oldmbuflabel, *newmbuflabel; oldmbuflabel = mac_mbuf_to_label(oldmbuf); newmbuflabel = mac_mbuf_to_label(newmbuf); - MAC_PERFORM(create_mbuf_netlayer, oldmbuf, oldmbuflabel, newmbuf, + MAC_PERFORM(mbuf_create_netlayer, oldmbuf, oldmbuflabel, newmbuf, newmbuflabel); } int -mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet) +mac_bpfdesc_check_receive(struct bpf_d *bpf_d, struct ifnet *ifnet) { int error; @@ -385,7 +388,7 @@ return (0); MAC_IFNET_LOCK(ifnet); - MAC_CHECK(check_bpfdesc_receive, bpf_d, bpf_d->bd_label, ifnet, + MAC_CHECK(bpfdesc_check_receive, bpf_d, bpf_d->bd_label, ifnet, ifnet->if_label); MAC_IFNET_UNLOCK(ifnet); @@ -393,7 +396,7 @@ } int -mac_check_ifnet_transmit(struct ifnet *ifnet, struct mbuf *mbuf) +mac_ifnet_check_transmit(struct ifnet *ifnet, struct mbuf *mbuf) { struct label *label; int error; @@ -406,15 +409,14 @@ label = mac_mbuf_to_label(mbuf); MAC_IFNET_LOCK(ifnet); - MAC_CHECK(check_ifnet_transmit, ifnet, ifnet->if_label, mbuf, - label); + MAC_CHECK(ifnet_check_transmit, ifnet, ifnet->if_label, mbuf, label); MAC_IFNET_UNLOCK(ifnet); return (error); } int -mac_ioctl_ifnet_get(struct ucred *cred, struct ifreq *ifr, +mac_ifnet_ioctl_get(struct ucred *cred, struct ifreq *ifr, struct ifnet *ifnet) { char *elements, *buffer; @@ -440,9 +442,9 @@ buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); intlabel = mac_ifnet_label_alloc(); MAC_IFNET_LOCK(ifnet); - mac_copy_ifnet_label(ifnet->if_label, intlabel); + mac_ifnet_copy_label(ifnet->if_label, intlabel); MAC_IFNET_UNLOCK(ifnet); - error = mac_externalize_ifnet_label(ifnet->if_label, elements, + error = mac_ifnet_externalize_label(ifnet->if_label, elements, buffer, mac.m_buflen); mac_ifnet_label_free(intlabel); if (error == 0) @@ -455,7 +457,7 @@ } int -mac_ioctl_ifnet_set(struct ucred *cred, struct ifreq *ifr, +mac_ifnet_ioctl_set(struct ucred *cred, struct ifreq *ifr, struct ifnet *ifnet) { struct label *intlabel; @@ -479,7 +481,7 @@ } intlabel = mac_ifnet_label_alloc(); - error = mac_internalize_ifnet_label(intlabel, buffer); + error = mac_ifnet_internalize_label(intlabel, buffer); free(buffer, M_MACTEMP); if (error) { mac_ifnet_label_free(intlabel); @@ -498,7 +500,7 @@ } MAC_IFNET_LOCK(ifnet); - MAC_CHECK(check_ifnet_relabel, cred, ifnet, ifnet->if_label, + MAC_CHECK(ifnet_check_relabel, cred, ifnet, ifnet->if_label, intlabel); if (error) { MAC_IFNET_UNLOCK(ifnet); @@ -506,7 +508,7 @@ return (error); } - MAC_PERFORM(relabel_ifnet, cred, ifnet, ifnet->if_label, intlabel); + MAC_PERFORM(ifnet_relabel, cred, ifnet, ifnet->if_label, intlabel); MAC_IFNET_UNLOCK(ifnet); mac_ifnet_label_free(intlabel); ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_pipe.c#2 (text+ko) ==== @@ -1,5 +1,6 @@ /*- * Copyright (c) 2002, 2003 Networks Associates Technology, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed for the FreeBSD Project in part by Network @@ -7,6 +8,9 @@ * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), * as part of the DARPA CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -41,6 +45,7 @@ #include #include #include +#include #include #include #include @@ -68,13 +73,13 @@ struct label *label; label = mac_labelzone_alloc(M_WAITOK); - MAC_PERFORM(init_pipe_label, label); + MAC_PERFORM(pipe_init_label, label); MAC_DEBUG_COUNTER_INC(&nmacpipes); return (label); } void -mac_init_pipe(struct pipepair *pp) +mac_pipe_init(struct pipepair *pp) { pp->pp_label = mac_pipe_label_alloc(); @@ -84,13 +89,13 @@ mac_pipe_label_free(struct label *label) { - MAC_PERFORM(destroy_pipe_label, label); + MAC_PERFORM(pipe_destroy_label, label); mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacpipes); } void -mac_destroy_pipe(struct pipepair *pp) +mac_pipe_destroy(struct pipepair *pp) { mac_pipe_label_free(pp->pp_label); @@ -98,14 +103,14 @@ } void -mac_copy_pipe_label(struct label *src, struct label *dest) +mac_pipe_copy_label(struct label *src, struct label *dest) { - MAC_PERFORM(copy_pipe_label, src, dest); + MAC_PERFORM(pipe_copy_label, src, dest); } int -mac_externalize_pipe_label(struct label *label, char *elements, +mac_pipe_externalize_label(struct label *label, char *elements, char *outbuf, size_t outbuflen) { int error; @@ -116,7 +121,7 @@ } int -mac_internalize_pipe_label(struct label *label, char *string) +mac_pipe_internalize_label(struct label *label, char *string) { int error; @@ -126,22 +131,22 @@ } void -mac_create_pipe(struct ucred *cred, struct pipepair *pp) +mac_pipe_create(struct ucred *cred, struct pipepair *pp) { - MAC_PERFORM(create_pipe, cred, pp, pp->pp_label); + MAC_PERFORM(pipe_create, cred, pp, pp->pp_label); } static void -mac_relabel_pipe(struct ucred *cred, struct pipepair *pp, +mac_pipe_relabel(struct ucred *cred, struct pipepair *pp, struct label *newlabel) { - MAC_PERFORM(relabel_pipe, cred, pp, pp->pp_label, newlabel); + MAC_PERFORM(pipe_relabel, cred, pp, pp->pp_label, newlabel); } int -mac_check_pipe_ioctl(struct ucred *cred, struct pipepair *pp, +mac_pipe_check_ioctl(struct ucred *cred, struct pipepair *pp, unsigned long cmd, void *data) { int error; @@ -151,13 +156,13 @@ if (!mac_enforce_pipe) return (0); - MAC_CHECK(check_pipe_ioctl, cred, pp, pp->pp_label, cmd, data); + MAC_CHECK(pipe_check_ioctl, cred, pp, pp->pp_label, cmd, data); return (error); } int -mac_check_pipe_poll(struct ucred *cred, struct pipepair *pp) +mac_pipe_check_poll(struct ucred *cred, struct pipepair *pp) { int error; @@ -166,13 +171,13 @@ if (!mac_enforce_pipe) return (0); - MAC_CHECK(check_pipe_poll, cred, pp, pp->pp_label); + MAC_CHECK(pipe_check_poll, cred, pp, pp->pp_label); return (error); } int -mac_check_pipe_read(struct ucred *cred, struct pipepair *pp) +mac_pipe_check_read(struct ucred *cred, struct pipepair *pp) { int error; @@ -181,13 +186,13 @@ if (!mac_enforce_pipe) return (0); - MAC_CHECK(check_pipe_read, cred, pp, pp->pp_label); + MAC_CHECK(pipe_check_read, cred, pp, pp->pp_label); return (error); } static int -mac_check_pipe_relabel(struct ucred *cred, struct pipepair *pp, +mac_pipe_check_relabel(struct ucred *cred, struct pipepair *pp, struct label *newlabel) { int error; @@ -197,13 +202,13 @@ if (!mac_enforce_pipe) return (0); - MAC_CHECK(check_pipe_relabel, cred, pp, pp->pp_label, newlabel); + MAC_CHECK(pipe_check_relabel, cred, pp, pp->pp_label, newlabel); return (error); } int -mac_check_pipe_stat(struct ucred *cred, struct pipepair *pp) +mac_pipe_check_stat(struct ucred *cred, struct pipepair *pp) { int error; @@ -212,13 +217,13 @@ if (!mac_enforce_pipe) return (0); - MAC_CHECK(check_pipe_stat, cred, pp, pp->pp_label); + MAC_CHECK(pipe_check_stat, cred, pp, pp->pp_label); return (error); } int -mac_check_pipe_write(struct ucred *cred, struct pipepair *pp) +mac_pipe_check_write(struct ucred *cred, struct pipepair *pp) { int error; @@ -227,7 +232,7 @@ if (!mac_enforce_pipe) return (0); - MAC_CHECK(check_pipe_write, cred, pp, pp->pp_label); + MAC_CHECK(pipe_check_write, cred, pp, pp->pp_label); return (error); } @@ -240,11 +245,11 @@ mtx_assert(&pp->pp_mtx, MA_OWNED); - error = mac_check_pipe_relabel(cred, pp, label); + error = mac_pipe_check_relabel(cred, pp, label); if (error) return (error); - mac_relabel_pipe(cred, pp, label); + mac_pipe_relabel(cred, pp, label); return (0); } ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_posix_sem.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include #include @@ -66,13 +66,13 @@ struct label *label; label = mac_labelzone_alloc(M_WAITOK); - MAC_PERFORM(init_posix_sem_label, label); + MAC_PERFORM(posix_sem_init_label, label); MAC_DEBUG_COUNTER_INC(&nmacposixsems); return (label); } void -mac_init_posix_sem(struct ksem *ksemptr) +mac_posix_sem_init(struct ksem *ksemptr) { ksemptr->ks_label = mac_posix_sem_label_alloc(); @@ -82,12 +82,12 @@ mac_posix_sem_label_free(struct label *label) { - MAC_PERFORM(destroy_posix_sem_label, label); + MAC_PERFORM(posix_sem_destroy_label, label); MAC_DEBUG_COUNTER_DEC(&nmacposixsems); } void -mac_destroy_posix_sem(struct ksem *ksemptr) +mac_posix_sem_destroy(struct ksem *ksemptr) { mac_posix_sem_label_free(ksemptr->ks_label); @@ -95,87 +95,87 @@ } void -mac_create_posix_sem(struct ucred *cred, struct ksem *ksemptr) +mac_posix_sem_create(struct ucred *cred, struct ksem *ksemptr) { - MAC_PERFORM(create_posix_sem, cred, ksemptr, ksemptr->ks_label); + MAC_PERFORM(posix_sem_create, cred, ksemptr, ksemptr->ks_label); } int -mac_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr) +mac_posix_sem_check_destroy(struct ucred *cred, struct ksem *ksemptr) { int error; if (!mac_enforce_posix_sem) return (0); - MAC_CHECK(check_posix_sem_destroy, cred, ksemptr, ksemptr->ks_label); + MAC_CHECK(posix_sem_check_destroy, cred, ksemptr, ksemptr->ks_label); return(error); } int -mac_check_posix_sem_open(struct ucred *cred, struct ksem *ksemptr) +mac_posix_sem_check_open(struct ucred *cred, struct ksem *ksemptr) { int error; if (!mac_enforce_posix_sem) return (0); - MAC_CHECK(check_posix_sem_open, cred, ksemptr, ksemptr->ks_label); + MAC_CHECK(posix_sem_check_open, cred, ksemptr, ksemptr->ks_label); return(error); } int -mac_check_posix_sem_getvalue(struct ucred *cred, struct ksem *ksemptr) +mac_posix_sem_check_getvalue(struct ucred *cred, struct ksem *ksemptr) { int error; if (!mac_enforce_posix_sem) return (0); - MAC_CHECK(check_posix_sem_getvalue, cred, ksemptr, + MAC_CHECK(posix_sem_check_getvalue, cred, ksemptr, ksemptr->ks_label); return(error); } int -mac_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jul 6 16:17:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6C1B716A4E1; Thu, 6 Jul 2006 16:17:15 +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 0262C16A4DE for ; Thu, 6 Jul 2006 16:17:15 +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 BAA4143D46 for ; Thu, 6 Jul 2006 16:17:14 +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 k66GHECi097406 for ; Thu, 6 Jul 2006 16:17:14 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 k66GHELp097403 for perforce@freebsd.org; Thu, 6 Jul 2006 16:17:14 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Jul 2006 16:17:14 GMT Message-Id: <200607061617.k66GHELp097403@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 100769 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 16:17:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=100769 Change 100769 by rwatson@rwatson_zoo on 2006/07/06 16:17:09 Rename of userret function premature. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#12 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#20 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#12 (text+ko) ==== ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#20 (text+ko) ==== @@ -363,7 +363,6 @@ typedef void (*mpo_proc_destroy_label_t)(struct label *label); typedef void (*mpo_proc_create_init_t)(struct ucred *cred); typedef void (*mpo_proc_create_swapper_t)(struct ucred *cred); -typedef void (*mpo_proc_thread_userret_t)(struct thread *thread); typedef int (*mpo_proc_check_debug_t)(struct ucred *cred, struct proc *proc); typedef int (*mpo_proc_check_sched_t)(struct ucred *cred, @@ -386,6 +385,7 @@ struct proc *proc, int signum); typedef int (*mpo_proc_check_wait_t)(struct ucred *cred, struct proc *proc); +typedef void (*mpo_thread_userret_t)(struct thread *thread); typedef int (*mpo_associate_nfsd_label_t)(struct ucred *cred); /* @@ -784,7 +784,6 @@ mpo_proc_destroy_label_t mpo_proc_destroy_label; mpo_proc_create_init_t mpo_proc_create_init; mpo_proc_create_swapper_t mpo_proc_create_swapper; - mpo_proc_thread_userret_t mpo_proc_thread_userret; mpo_proc_check_debug_t mpo_proc_check_debug; mpo_proc_check_sched_t mpo_proc_check_sched; mpo_proc_check_setuid_t mpo_proc_check_setuid; @@ -798,6 +797,7 @@ mpo_proc_check_setresgid_t mpo_proc_check_setresgid; mpo_proc_check_signal_t mpo_proc_check_signal; mpo_proc_check_wait_t mpo_proc_check_wait; + mpo_thread_userret_t mpo_thread_userret; mpo_sysvmsq_init_label_t mpo_sysvmsq_init_label; mpo_sysvmsq_destroy_t mpo_sysvmsq_destroy; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 16:17:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8FC8216A530; Thu, 6 Jul 2006 16:17:15 +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 4E64916A4DF for ; Thu, 6 Jul 2006 16:17:15 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1949E43D46 for ; Thu, 6 Jul 2006 16:17:15 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66GHEge097412 for ; Thu, 6 Jul 2006 16:17:14 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66GHEEm097409 for perforce@freebsd.org; Thu, 6 Jul 2006 16:17:14 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 16:17:14 GMT Message-Id: <200607061617.k66GHEEm097409@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100770 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 16:17:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=100770 Change 100770 by wkoszek@wkoszek_laptop on 2006/07/06 16:17:09 Additional parentheses around bswap* macros to make gcc happy. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/endian.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/endian.h#3 (text+ko) ==== @@ -120,15 +120,18 @@ /* * Define the order of 32-bit words in 64-bit words. */ +/* + * XXXMIPS: Additional parentheses to make gcc more happy. + */ #define _QUAD_HIGHWORD 0 #define _QUAD_LOWWORD 1 #else #define _QUAD_HIGHWORD 1 #define _QUAD_LOWWORD 0 -#define __ntohl(x) (__bswap32(x)) -#define __ntohs(x) (__bswap16(x)) -#define __htonl(x) (__bswap32(x)) -#define __htons(x) (__bswap16(x)) +#define __ntohl(x) (__bswap32((x))) +#define __ntohs(x) (__bswap16((x))) +#define __htonl(x) (__bswap32((x))) +#define __htons(x) (__bswap16((x))) #endif /* _MIPSEB */ #ifdef __cplusplus From owner-p4-projects@FreeBSD.ORG Thu Jul 6 16:17:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B4EA916A4E2; Thu, 6 Jul 2006 16:17:55 +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 7A5A416A4DA; Thu, 6 Jul 2006 16:17:55 +0000 (UTC) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75]) by mx1.FreeBSD.org (Postfix) with ESMTP id A60E843D45; Thu, 6 Jul 2006 16:17:19 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (localhost.localdomain [127.0.0.1]) by odin.ac.hmc.edu (8.13.0/8.13.0) with ESMTP id k66GGxng021348; Thu, 6 Jul 2006 09:16:59 -0700 Received: (from brdavis@localhost) by odin.ac.hmc.edu (8.13.0/8.13.0/Submit) id k66GGxvk021347; Thu, 6 Jul 2006 09:16:59 -0700 Date: Thu, 6 Jul 2006 09:16:59 -0700 From: Brooks Davis To: Paolo Pisati Message-ID: <20060706161659.GB13815@odin.ac.hmc.edu> References: <200607061448.k66EmJhT089494@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="v9Ux+11Zm5mwPlX6" Content-Disposition: inline In-Reply-To: <200607061448.k66EmJhT089494@repoman.freebsd.org> User-Agent: Mutt/1.4.1i X-Virus-Scanned: by amavisd-new Cc: Perforce Change Reviews Subject: Re: PERFORCE change 100756 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 16:17:56 -0000 --v9Ux+11Zm5mwPlX6 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jul 06, 2006 at 02:48:19PM +0000, Paolo Pisati wrote: > http://perforce.freebsd.org/chv.cgi?CH=3D100756 >=20 > Change 100756 by piso@piso_newluxor on 2006/07/06 14:48:07 >=20 > C99 struct init: style(9) doesn't contemplate C99 struct > init so i had to 'invent' by myself how to indent the code... FYI, in the various GEOM files a full tab seems to be the norm. i.e. (from sys/geom/geom_ccd.c): static struct g_class g_ccd_class =3D { .name =3D "CCD", .version =3D G_VERSION, .ctlreq =3D g_ccd_config, .destroy_geom =3D g_ccd_destroy_geom, .start =3D g_ccd_start, .orphan =3D g_ccd_orphan, .access =3D g_ccd_access, }; -- Brooks > Affected files ... >=20 > .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_cuseeme.c= #4 edit > .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_dummy.c#3= edit > .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#4 e= dit > .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#4 e= dit > .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_nbt.c#4 e= dit > .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_pptp.c#4 = edit > .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_skinny.c#= 4 edit > .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#= 4 edit >=20 > Differences ... >=20 > =3D=3D=3D=3D //depot/projects/soc2005/libalias/sys/netinet/libalias/alias= _cuseeme.c#4 (text+ko) =3D=3D=3D=3D >=20 > @@ -103,8 +103,23 @@ > } > =20 > /* Kernel module definition. */ > -struct proto_handler handlers[] =3D {{120, OUT, UDP, &fingerprint, &prot= ohandlerout},=20 > - {120, IN, UDP, &fingerprint, &protohandlerin}, {EOH}}; > +struct proto_handler handlers[] =3D { > + {=20 > + .pri =3D 120,=20 > + .dir =3D OUT,=20 > + .proto =3D UDP,=20 > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandlerout > + },=20 > + { > + .pri =3D 120,=20 > + .dir =3D IN,=20 > + .proto =3D UDP,=20 > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandlerin > + },=20 > + { EOH } > +}; > =20 > static int > mod_handler(module_t mod, int type, void *data) >=20 > =3D=3D=3D=3D //depot/projects/soc2005/libalias/sys/netinet/libalias/alias= _dummy.c#3 (text+ko) =3D=3D=3D=3D >=20 > @@ -114,8 +114,16 @@ > * THEIR EXACT NAMES: handlers and entries. > */ > =20 > -struct proto_handler handlers [] =3D {{666, IN|OUT, UDP|TCP, &fingerprin= t,=20 > - &protohandler}, {EOH}}; > +struct proto_handler handlers [] =3D { > + {=20 > + .pri =3D 666,=20 > + .dir =3D IN|OUT,=20 > + .proto =3D UDP|TCP,=20 > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandler > + },=20 > + { EOH } > +}; > =20 > static int > mod_handler(module_t mod, int type, void *data) >=20 > =3D=3D=3D=3D //depot/projects/soc2005/libalias/sys/netinet/libalias/alias= _ftp.c#4 (text+ko) =3D=3D=3D=3D >=20 > @@ -132,8 +132,16 @@ > return (0); > } > =20 > -struct proto_handler handlers[] =3D {{80, OUT, TCP, &fingerprint,=20 > - &protohandler}, {EOH}}; > +struct proto_handler handlers[] =3D { > + {=20 > + .pri =3D 80,=20 > + .dir =3D OUT,=20 > + .proto =3D TCP,=20 > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandler > + },=20 > + { EOH } > +}; > =20 > static int > mod_handler(module_t mod, int type, void *data) >=20 > =3D=3D=3D=3D //depot/projects/soc2005/libalias/sys/netinet/libalias/alias= _irc.c#4 (text+ko) =3D=3D=3D=3D >=20 > @@ -121,8 +121,16 @@ > return (0); > } > =20 > -struct proto_handler handlers[] =3D {{90, OUT, TCP, &fingerprint,=20 > - &protohandler}, {EOH}}; > +struct proto_handler handlers[] =3D { > + {=20 > + .pri =3D 90,=20 > + .dir =3D OUT,=20 > + .proto =3D TCP,=20 > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandler > + },=20 > + { EOH } > +}; > =20 > static int > mod_handler(module_t mod, int type, void *data) { >=20 > =3D=3D=3D=3D //depot/projects/soc2005/libalias/sys/netinet/libalias/alias= _nbt.c#4 (text+ko) =3D=3D=3D=3D >=20 > @@ -136,8 +136,23 @@ > } > =20 > /* Kernel module definition. */ > -struct proto_handler handlers[] =3D {{130, IN|OUT, UDP, &fingerprint1, &= protohandler1},=20 > - {140, IN|OUT, UDP, &fingerprint2, &protohandler2}, {EOH}}; > +struct proto_handler handlers[] =3D { > + {=20 > + .pri =3D 130,=20 > + .dir =3D IN|OUT,=20 > + .proto =3D UDP,=20 > + .fingerprint =3D &fingerprint1,=20 > + .protohandler =3D &protohandler1 > + },=20 > + {=20 > + .pri =3D 140,=20 > + .dir =3D IN|OUT,=20 > + .proto =3D UDP,=20 > + .fingerprint =3D &fingerprint2,=20 > + .protohandler =3D &protohandler2 > + },=20 > + { EOH } > +}; > =20 > static int > mod_handler(module_t mod, int type, void *data) >=20 > =3D=3D=3D=3D //depot/projects/soc2005/libalias/sys/netinet/libalias/alias= _pptp.c#4 (text+ko) =3D=3D=3D=3D >=20 > @@ -159,15 +159,42 @@ > } > =20 > /* Kernel module definition. */ > -struct proto_handler handlers[] =3D {{200, IN, TCP, &fingerprint, &proto= handlerin}, > - {210, OUT, TCP, &fingerprint, &protohandlerout}, > +struct proto_handler handlers[] =3D { > + {=20 > + .pri =3D 200,=20 > + .dir =3D IN,=20 > + .proto =3D TCP,=20 > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandlerin > + }, > + {=20 > + .pri =3D 210,=20 > + .dir =3D OUT,=20 > + .proto =3D TCP,=20 > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandlerout > + }, > /*=20 > * WATCH OUT!!! these 2 handlers NEED a priority of INT_MAX (highest pos= sible)=20 > * cause they will ALWAYS process packets, so they must be the last one > * in chain: look fingerprintgre() above. > */ > - {INT_MAX, IN, IP, &fingerprintgre, &protohandlergrein}, > - {INT_MAX, OUT, IP, &fingerprintgre, &protohandlergreout}, {EOH}}; > + {=20 > + .pri =3D INT_MAX,=20 > + .dir =3D IN,=20 > + .proto =3D IP,=20 > + .fingerprint =3D &fingerprintgre,=20 > + .protohandler =3D &protohandlergrein > + }, > + {=20 > + .pri =3D INT_MAX,=20 > + .dir =3D OUT,=20 > + .proto =3D IP,=20 > + .fingerprint =3D &fingerprintgre,=20 > + .protohandler =3D &protohandlergreout > + },=20 > + { EOH } > +}; > static int > mod_handler(module_t mod, int type, void *data) > { >=20 > =3D=3D=3D=3D //depot/projects/soc2005/libalias/sys/netinet/libalias/alias= _skinny.c#4 (text+ko) =3D=3D=3D=3D >=20 > @@ -91,8 +91,16 @@ > return (0); > } > =20 > -struct proto_handler handlers[] =3D {{110, IN|OUT, TCP, &fingerprint,=20 > - &protohandler}, {EOH}}; > +struct proto_handler handlers[] =3D { > + {=20 > + .pri =3D 110,=20 > + .dir =3D IN|OUT,=20 > + .proto =3D TCP,=20 > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandler > + },=20 > + { EOH } > +}; > =20 > static int > mod_handler(module_t mod, int type, void *data) >=20 > =3D=3D=3D=3D //depot/projects/soc2005/libalias/sys/netinet/libalias/alias= _smedia.c#4 (text+ko) =3D=3D=3D=3D >=20 > @@ -167,8 +167,16 @@ > return (0); > } > =20 > -struct proto_handler handlers[] =3D {{100, OUT, TCP|UDP, &fingerprint,= =20 > - &protohandler}, {EOH}}; > +struct proto_handler handlers[] =3D { > + {=20 > + .pri =3D 100,=20 > + .dir =3D OUT,=20 > + .proto =3D TCP|UDP, > + .fingerprint =3D &fingerprint,=20 > + .protohandler =3D &protohandler > + },=20 > + { EOH } > +}; > =20 > static int > mod_handler(module_t mod, int type, void *data) --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --v9Ux+11Zm5mwPlX6 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFErTd6XY6L6fI4GtQRAvRzAJ9UTVO860lnK+cKUxau+ZKPM7jwggCggODj qmXBHBI7tKJ7bsWw9EzXvw4= =QGqC -----END PGP SIGNATURE----- --v9Ux+11Zm5mwPlX6-- From owner-p4-projects@FreeBSD.ORG Thu Jul 6 16:21:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 03DDD16A4E2; Thu, 6 Jul 2006 16:21:21 +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 B99EB16A4DF for ; Thu, 6 Jul 2006 16:21:20 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8514B43D45 for ; Thu, 6 Jul 2006 16:21:20 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66GLKTl097783 for ; Thu, 6 Jul 2006 16:21:20 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66GLKWU097780 for perforce@freebsd.org; Thu, 6 Jul 2006 16:21:20 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 16:21:20 GMT Message-Id: <200607061621.k66GLKWU097780@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100771 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 16:21:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100771 Change 100771 by wkoszek@wkoszek_laptop on 2006/07/06 16:20:37 Teach vmparam.h about VM_MAX_KERNEL_ADDRESS = 0xffffffff and VM_MIN_KERNEL_ADDRESS = KERNBASE. At least, it makes this file less similar to it's respective copy from amd64. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/vmparam.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/vmparam.h#3 (text+ko) ==== @@ -85,18 +85,20 @@ * of the direct mapped segment. This uses 2MB pages for reduced * TLB pressure. */ +/* + * XXXMIPS: Fix this! Those pieces on i386 family use internal structures from + * VM subsystem in order to get proper addresses and sizesof critical places. + */ #define UMA_MD_SMALL_ALLOC -#define VM_MAX_KERNEL_ADDRESS KVADDR(KPML4I, NPDPEPG-1, NKPDE-1, NPTEPG-1) -#define VM_MIN_KERNEL_ADDRESS KVADDR(KPML4I, KPDPI, 0, 0) +#define DMAP_MIN_ADDRESS (0) +#define DMAP_MAX_ADDRESS (0) + +#define KERNBASE 0xc0000000 -#define DMAP_MIN_ADDRESS KVADDR(DMPML4I, 0, 0, 0) -#define DMAP_MAX_ADDRESS KVADDR(DMPML4I+1, 0, 0, 0) +#define VM_MIN_KERNEL_ADDRESS KERNBASE +#define VM_MAX_KERNEL_ADDRESS 0xffffffff -/* - * XXXMIPS: Fix this! - */ -#define KERNBASE 0xc0000000 #define UPT_MAX_ADDRESS KVADDR(PML4PML4I, PML4PML4I, PML4PML4I, PML4PML4I) #define UPT_MIN_ADDRESS KVADDR(PML4PML4I, 0, 0, 0) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 16:21:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5A79116A558; Thu, 6 Jul 2006 16:21:21 +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 1C54D16A50E for ; Thu, 6 Jul 2006 16:21:21 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D818843D45 for ; Thu, 6 Jul 2006 16:21:20 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66GLK4X097789 for ; Thu, 6 Jul 2006 16:21:20 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66GLK9m097786 for perforce@freebsd.org; Thu, 6 Jul 2006 16:21:20 GMT (envelope-from rdivacky@FreeBSD.org) Date: Thu, 6 Jul 2006 16:21:20 GMT Message-Id: <200607061621.k66GLK9m097786@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100772 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 16:21:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100772 Change 100772 by rdivacky@rdivacky_witten on 2006/07/06 16:20:54 First attempt to fix the TID handling. Restructure the proc_init() thing to set pid in exec case and remove proces from emuldata list in proc_exit(). Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#9 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#9 (text+ko) ==== @@ -1026,11 +1026,28 @@ struct proc *p; /* XXX: locking? */ - MALLOC(em, struct linux_emuldata *, sizeof *em, M_LINUX, M_WAITOK | M_ZERO); + if (child != 0) { + /* non-exec call */ + MALLOC(em, struct linux_emuldata *, sizeof *em, M_LINUX, M_WAITOK | M_ZERO); + em->pid = child; + SLIST_INSERT_HEAD(&emuldata_head, em, emuldatas); + } else { + found = 0; + /* lookup the old one */ + SLIST_FOREACH(em, &emuldata_head, emuldatas) + if (em->pid == td->td_proc->p_pid) { + found = 1; + break; + } + if (found == 0) { + /* this should not happen */ +#ifdef DEBUG + printf("emuldata not found in exec case.\n"); +#endif + return (0); + } + } - /* exec call */ - if (child != 0) - em->pid = child; em->child_clear_tid = NULL; em->child_set_tid = NULL; @@ -1045,22 +1062,11 @@ if (found) { em->clear_tid = p_em->clear_tid; em->set_tid = p_em->set_tid; - } - - /* we have to free the old emuldata */ - if (child == 0) { - found = 0; - /* lookup the old one */ - SLIST_FOREACH(p_em, &emuldata_head, emuldatas) - if (em->pid == td->td_proc->p_pid) { - found = 1; - break; - } - if (found) - FREE(em, M_LINUX); + } else { + em->clear_tid = NULL; + em->set_tid = NULL; } - SLIST_INSERT_HEAD(&emuldata_head, em, emuldatas); /* XXX: sched_lock locking? */ @@ -1095,6 +1101,8 @@ /* TODO: futexes stuff */ } + SLIST_REMOVE(&emuldata_head, em, linux_emuldata, emuldatas); + /* clean the stuff up */ FREE(em, M_LINUX); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 16:40:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 26D6E16A4E0; Thu, 6 Jul 2006 16:40:45 +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 034E616A4DD for ; Thu, 6 Jul 2006 16:40:45 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C55F143D45 for ; Thu, 6 Jul 2006 16:40:44 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66GeiS3099849 for ; Thu, 6 Jul 2006 16:40:44 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66GeiEs099844 for perforce@freebsd.org; Thu, 6 Jul 2006 16:40:44 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 16:40:44 GMT Message-Id: <200607061640.k66GeiEs099844@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100773 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 16:40:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=100773 Change 100773 by wkoszek@wkoszek_laptop on 2006/07/06 16:40:01 Change enable_intr() to intr_enable(). Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/autoconf.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/autoconf.c#2 (text+ko) ==== @@ -64,6 +64,7 @@ #include #include +#include #include static void configure_first(void *); @@ -98,7 +99,7 @@ * disabled in the interrupt controllers until interrupt handlers * are registered. */ - enable_intr(); + intr_enable(); /* initialize new bus architecture */ root_bus_configure(); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 16:53:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2283A16A4DE; Thu, 6 Jul 2006 16:53:18 +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 D911616A4E5 for ; Thu, 6 Jul 2006 16:53:17 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F2E143D5F for ; Thu, 6 Jul 2006 16:53:01 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Gr0rT008231 for ; Thu, 6 Jul 2006 16:53:00 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66Gr0p4008226 for perforce@freebsd.org; Thu, 6 Jul 2006 16:53:00 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 16:53:00 GMT Message-Id: <200607061653.k66Gr0p4008226@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100774 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 16:53:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=100774 Change 100774 by wkoszek@wkoszek_laptop on 2006/07/06 16:52:58 Add locore.S to files.mips, as this will be the most needed part at some stage probably. Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#4 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#4 (text+ko) ==== @@ -8,6 +8,7 @@ mips/mips/elf_machdep.c standard mips/mips/in_cksum.c optional inet mips/mips/intr.c standard +mips/mips/locore.S standard mips/mips/machdep.c standard mips/mips/mem.c optional mem mips/mips/pmap.c standard From owner-p4-projects@FreeBSD.ORG Thu Jul 6 17:01:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 714DC16A4E5; Thu, 6 Jul 2006 17:01:24 +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 3767216A4DE; Thu, 6 Jul 2006 17:01:24 +0000 (UTC) (envelope-from gonzo@pbxpress.com) Received: from mail.portaone.com (mail.portaone.com [65.61.200.231]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8C2043D46; Thu, 6 Jul 2006 17:01:23 +0000 (GMT) (envelope-from gonzo@pbxpress.com) Received: from dell.portaone.com (unknown [70.68.128.186]) by mail.portaone.com (Postfix) with ESMTP id 35E2F552C62; Thu, 6 Jul 2006 10:01:23 -0700 (PDT) Received: from leaf.pbxpress.com (www.pbxpress.com [142.179.71.212]) by dell.portaone.com (8.13.6/8.13.1) with ESMTP id k66H1M4Q010802; Thu, 6 Jul 2006 10:01:22 -0700 (PDT) (envelope-from gonzo@pbxpress.com) Received: from [192.168.0.160] (k3-gw.portaone.com [193.28.87.193]) (authenticated bits=0) by leaf.pbxpress.com (8.13.3/8.13.3) with ESMTP id k66H1qZd028844 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 6 Jul 2006 10:02:04 -0700 (PDT) (envelope-from gonzo@pbxpress.com) Message-ID: <44AD41C7.3080201@pbxpress.com> Date: Thu, 06 Jul 2006 20:00:55 +0300 From: Oleksandr Tymoshenko User-Agent: Thunderbird 1.5.0.4 (X11/20060605) MIME-Version: 1.0 To: "Wojciech A. Koszek" References: <200607061653.k66Gr0p4008226@repoman.freebsd.org> In-Reply-To: <200607061653.k66Gr0p4008226@repoman.freebsd.org> Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.0.4 X-Spam-Checker-Version: SpamAssassin 3.0.4 (2005-06-05) on leaf.pbxpress.com Cc: Perforce Change Reviews Subject: Re: PERFORCE change 100774 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 17:01:24 -0000 Wojciech A. Koszek wrote: > http://perforce.freebsd.org/chv.cgi?CH=100774 > > Change 100774 by wkoszek@wkoszek_laptop on 2006/07/06 16:52:58 > > Add locore.S to files.mips, as this will be the most needed part at > some stage probably. > > Affected files ... > > .. //depot/projects/mips2/src/sys/conf/files.mips#4 edit > > Differences ... > > ==== //depot/projects/mips2/src/sys/conf/files.mips#4 (text+ko) ==== > > @@ -8,6 +8,7 @@ > mips/mips/elf_machdep.c standard > mips/mips/in_cksum.c optional inet > mips/mips/intr.c standard > +mips/mips/locore.S standard > mips/mips/machdep.c standard > mips/mips/mem.c optional mem > mips/mips/pmap.c standard This requires no-obj, otherwise you'll get locore.o twice included for ld object files list. -- gonzo From owner-p4-projects@FreeBSD.ORG Thu Jul 6 17:30:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3FB3816A4DD; Thu, 6 Jul 2006 17:30:49 +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 1BE7D16A4DE for ; Thu, 6 Jul 2006 17:30:49 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C2C1843D49 for ; Thu, 6 Jul 2006 17:30:48 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66HUmSn011565 for ; Thu, 6 Jul 2006 17:30:48 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66HUmde011562 for perforce@freebsd.org; Thu, 6 Jul 2006 17:30:48 GMT (envelope-from imp@freebsd.org) Date: Thu, 6 Jul 2006 17:30:48 GMT Message-Id: <200607061730.k66HUmde011562@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100776 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 17:30:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=100776 Change 100776 by imp@imp_lighthouse on 2006/07/06 17:29:59 Add options for the two different AT91 boards we support. We'll need to revisit this in the future. Affected files ... .. //depot/projects/arm/src/sys/conf/options.arm#12 edit Differences ... ==== //depot/projects/arm/src/sys/conf/options.arm#12 (text+ko) ==== @@ -16,3 +16,5 @@ XSCALE_CACHE_READ_WRITE_ALLOCATE opt_global.h XSACLE_DISABLE_CCNT opt_timer.h VERBOSE_INIT_ARM opt_global.h +AT91_TSC opt_at91.h +AT91_KWIKBYTE opt_at91.h From owner-p4-projects@FreeBSD.ORG Thu Jul 6 17:44:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 374E116A4DE; Thu, 6 Jul 2006 17:44:07 +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 ED6FF16A4DA for ; Thu, 6 Jul 2006 17:44:06 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BAC6C43D45 for ; Thu, 6 Jul 2006 17:44:06 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Hi6ZM012869 for ; Thu, 6 Jul 2006 17:44:06 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66Hi6UA012866 for perforce@freebsd.org; Thu, 6 Jul 2006 17:44:06 GMT (envelope-from imp@freebsd.org) Date: Thu, 6 Jul 2006 17:44:06 GMT Message-Id: <200607061744.k66Hi6UA012866@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100778 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 17:44:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100778 Change 100778 by imp@imp_lighthouse on 2006/07/06 17:43:41 ifdef our stuff in. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#28 edit .. //depot/projects/arm/src/sys/arm/conf/KB920X#35 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#28 (text+ko) ==== @@ -45,6 +45,7 @@ #include "opt_msgbuf.h" #include "opt_ddb.h" +#include "opt_at91.h" #include __FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.8 2006/06/20 23:40:04 imp Exp $"); @@ -227,10 +228,12 @@ at91_pio_use_periph_a(AT91RM92_PIOB_BASE, AT91C_PB20_TXD1, 1); /* Pin assignment */ +#if AT91_TSC /* Assert PA24 low -- talk to rubidium */ at91_pio_use_gpio(AT91RM92_PIOA_BASE, AT91C_PIO_PA24); at91_pio_gpio_output(AT91RM92_PIOA_BASE, AT91C_PIO_PA24, 0); at91_pio_gpio_clear(AT91RM92_PIOA_BASE, AT91C_PIO_PA24); +#endif return (ramsize()); } ==== //depot/projects/arm/src/sys/arm/conf/KB920X#35 (text+ko) ==== @@ -25,6 +25,7 @@ options KERNVIRTADDR=0xc0000000 options PHYSADDR=0x20000000 options STARTUP_PAGETABLE_ADDR=0x20800000 +options AT91_TSC include "../at91/std.kb920x" #To statically compile in device wiring instead of /boot/device.hints #hints "GENERIC.hints" #Default places to look for devices. From owner-p4-projects@FreeBSD.ORG Thu Jul 6 17:45:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 10FF616A4E1; Thu, 6 Jul 2006 17:45:09 +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 DE9C916A4DE for ; Thu, 6 Jul 2006 17:45:08 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8A61B43D46 for ; Thu, 6 Jul 2006 17:45:08 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Hj87s012948 for ; Thu, 6 Jul 2006 17:45:08 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66Hj8FT012945 for perforce@freebsd.org; Thu, 6 Jul 2006 17:45:08 GMT (envelope-from imp@freebsd.org) Date: Thu, 6 Jul 2006 17:45:08 GMT Message-Id: <200607061745.k66Hj8FT012945@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100779 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 17:45:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=100779 Change 100779 by imp@imp_lighthouse on 2006/07/06 17:44:31 Diverge Affected files ... .. //depot/projects/arm/src/sys/arm/conf/TSC4370#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jul 6 17:46:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D491C16A4DF; Thu, 6 Jul 2006 17:46:10 +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 AF04816A4DD for ; Thu, 6 Jul 2006 17:46:10 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 690CF43D45 for ; Thu, 6 Jul 2006 17:46:10 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66HkAEM013016 for ; Thu, 6 Jul 2006 17:46:10 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66HkAbb013013 for perforce@freebsd.org; Thu, 6 Jul 2006 17:46:10 GMT (envelope-from imp@freebsd.org) Date: Thu, 6 Jul 2006 17:46:10 GMT Message-Id: <200607061746.k66HkAbb013013@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100780 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 17:46:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=100780 Change 100780 by imp@imp_lighthouse on 2006/07/06 17:45:26 back to being a better name Affected files ... .. //depot/projects/arm/src/sys/arm/conf/KB920X#36 edit Differences ... ==== //depot/projects/arm/src/sys/arm/conf/KB920X#36 (text+ko) ==== @@ -25,7 +25,7 @@ options KERNVIRTADDR=0xc0000000 options PHYSADDR=0x20000000 options STARTUP_PAGETABLE_ADDR=0x20800000 -options AT91_TSC +options AT91_KWIKBYTE include "../at91/std.kb920x" #To statically compile in device wiring instead of /boot/device.hints #hints "GENERIC.hints" #Default places to look for devices. From owner-p4-projects@FreeBSD.ORG Thu Jul 6 17:52:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0220116A4E0; Thu, 6 Jul 2006 17:52:19 +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 ACF4716A4DA for ; Thu, 6 Jul 2006 17:52:18 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 79B2A43D46 for ; Thu, 6 Jul 2006 17:52:18 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66HqI8F013689 for ; Thu, 6 Jul 2006 17:52:18 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66HqIH5013685 for perforce@freebsd.org; Thu, 6 Jul 2006 17:52:18 GMT (envelope-from bushman@freebsd.org) Date: Thu, 6 Jul 2006 17:52:18 GMT Message-Id: <200607061752.k66HqIH5013685@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 100781 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 17:52:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=100781 Change 100781 by bushman@bushman_nss_ldap_cached on 2006/07/06 17:51:22 getaddrinfo() test finished. It's much simpler than gethostby**() test - it's main purpose are correctness testing and snapshot equality testing. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#7 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getaddr.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getaddr.t#1 add Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#7 (text+ko) ==== @@ -1,11 +1,10 @@ # $FreeBSD$ -TESTS= test-getpw test-getgr test-gethostby test-getserv +TESTS= test-getaddr test-getpw test-getgr test-gethostby test-getserv CFLAGS+= -g -Wall .PHONY: tests tests: ${TESTS} -# for p in ${TESTS}; do ${.OBJDIR}/$$p; done .PHONY: clean clean: From owner-p4-projects@FreeBSD.ORG Thu Jul 6 18:03:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 265D216A4DF; Thu, 6 Jul 2006 18:03:33 +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 DEE8316A4DE for ; Thu, 6 Jul 2006 18:03:32 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9089343D45 for ; Thu, 6 Jul 2006 18:03:32 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66I3WGc015762 for ; Thu, 6 Jul 2006 18:03:32 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66I3WHo015759 for perforce@freebsd.org; Thu, 6 Jul 2006 18:03:32 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 18:03:32 GMT Message-Id: <200607061803.k66I3WHo015759@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100782 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 18:03:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=100782 Change 100782 by wkoszek@wkoszek_laptop on 2006/07/06 18:02:49 Add no-obj flag to locore.S. Hint from: Alexander Timoshenko Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#5 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#5 (text+ko) ==== @@ -8,7 +8,7 @@ mips/mips/elf_machdep.c standard mips/mips/in_cksum.c optional inet mips/mips/intr.c standard -mips/mips/locore.S standard +mips/mips/locore.S standard no-obj mips/mips/machdep.c standard mips/mips/mem.c optional mem mips/mips/pmap.c standard From owner-p4-projects@FreeBSD.ORG Thu Jul 6 18:04:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BCB3616A4E5; Thu, 6 Jul 2006 18:04:35 +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 9B75F16A4E1 for ; Thu, 6 Jul 2006 18:04:35 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8792F43D5A for ; Thu, 6 Jul 2006 18:04:34 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66I4YJH015930 for ; Thu, 6 Jul 2006 18:04:34 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66I4Xbp015924 for perforce@freebsd.org; Thu, 6 Jul 2006 18:04:33 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 18:04:33 GMT Message-Id: <200607061804.k66I4Xbp015924@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100783 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 18:04:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=100783 Change 100783 by wkoszek@wkoszek_laptop on 2006/07/06 18:04:00 Pretty minimal _start. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/locore.S#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#2 (text+ko) ==== @@ -28,3 +28,10 @@ #include "assym.s" #include __FBSDID("$FreeBSD$"); + +/* + * XXXMIPS: Fill this later. + */ +.globl _start +_start: + nop From owner-p4-projects@FreeBSD.ORG Thu Jul 6 18:30:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 367BC16A4DF; Thu, 6 Jul 2006 18:30:07 +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 139C816A4DA for ; Thu, 6 Jul 2006 18:30:07 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A882143D53 for ; Thu, 6 Jul 2006 18:30:06 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66IU6O6017168 for ; Thu, 6 Jul 2006 18:30:06 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66IU6ML017165 for perforce@freebsd.org; Thu, 6 Jul 2006 18:30:06 GMT (envelope-from jhb@freebsd.org) Date: Thu, 6 Jul 2006 18:30:06 GMT Message-Id: <200607061830.k66IU6ML017165@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100784 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 18:30:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100784 Change 100784 by jhb@jhb_mutex on 2006/07/06 18:29:47 Revert this change. It ends up tripping a panic because in the case of an "extra" thread exiting td_ksegrp will be NULL when we do PROC_UNLOCK(). If the proc mtx is contested and this thread has a regular user priority for it's base priority, then in sched_unlend_prio() when we go to fetch the most recent user priority from the ksegroup we panic. Affected files ... .. //depot/projects/smpng/sys/kern/kern_thread.c#91 edit Differences ... ==== //depot/projects/smpng/sys/kern/kern_thread.c#91 (text+ko) ==== @@ -579,6 +579,7 @@ ksegrp_unlink(kg); ksegrp_stash(kg); } + PROC_UNLOCK(p); td->td_ksegrp = NULL; PCPU_SET(deadthread, td); } else { @@ -601,9 +602,9 @@ * This includes an EX threaded process that is coming * here via exit1(). (exit1 dethreads the proc first). */ + PROC_UNLOCK(p); } - PROC_UNLOCK(p); td->td_state = TDS_INACTIVE; CTR1(KTR_PROC, "thread_exit: cpu_throw() thread %p", td); cpu_throw(td, choosethread()); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 20:19:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E0EEC16A4DE; Thu, 6 Jul 2006 20:19:44 +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 A534716A4E1 for ; Thu, 6 Jul 2006 20:19:44 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5478743D86 for ; Thu, 6 Jul 2006 20:19:31 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66KJNGD027740 for ; Thu, 6 Jul 2006 20:19:23 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66KJNB6027725 for perforce@freebsd.org; Thu, 6 Jul 2006 20:19:23 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 20:19:23 GMT Message-Id: <200607062019.k66KJNB6027725@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100788 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 20:19:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=100788 Change 100788 by wkoszek@wkoszek_laptop on 2006/07/06 20:19:01 Add some hacks to move on. Leave it for later. Every hack marked as XXXMIPS. Note that these are not MD pieces. Affected files ... .. //depot/projects/mips2/src/sys/kern/kern_proc.c#2 edit .. //depot/projects/mips2/src/sys/kern/vfs_bio.c#2 edit .. //depot/projects/mips2/src/sys/vm/vnode_pager.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/kern/kern_proc.c#2 (text+ko) ==== @@ -100,7 +100,13 @@ int kstack_pages = KSTACK_PAGES; SYSCTL_INT(_kern, OID_AUTO, kstack_pages, CTLFLAG_RD, &kstack_pages, 0, ""); +/* + * XXXMIPS: Change this until we know what's going on with sizeof(struct + * kinfo_proc). + */ +#if 0 CTASSERT(sizeof(struct kinfo_proc) == KINFO_PROC_SIZE); +#endif /* * Initialize global process hashing structures. ==== //depot/projects/mips2/src/sys/kern/vfs_bio.c#2 (text+ko) ==== @@ -3149,6 +3149,12 @@ void bufdone_finish(struct buf *bp) { + bp = NULL; +/* + * XXXMIPS: This was the easiest way to move on. + * Leave it for later, since kernel at this stage won't probably boot. + */ +#if 0 KASSERT(BUF_REFCNT(bp) > 0, ("biodone: bp %p not busy %d", bp, BUF_REFCNT(bp))); @@ -3243,11 +3249,12 @@ * have not set the page busy flag correctly!!! */ if (m->busy == 0) { + uint32_t mask = 0xffffffff; printf("biodone: page busy < 0, " "pindex: %d, foff: 0x(%x,%x), " "resid: %d, index: %d\n", (int) m->pindex, (int)(foff >> 32), - (int) foff & 0xffffffff, resid, i); + (int) foff & mask, resid, i); if (!vn_isdisk(vp, NULL)) printf(" iosize: %jd, lblkno: %jd, flags: 0x%x, npages: %d\n", (intmax_t)bp->b_vp->v_mount->mnt_stat.f_iosize, @@ -3285,6 +3292,7 @@ bqrelse(bp); } else bdone(bp); +#endif } /* @@ -3595,6 +3603,14 @@ static void vm_hold_load_pages(struct buf *bp, vm_offset_t from, vm_offset_t to) { + bp = NULL; + from = (vm_offset_t) 0; + to = (vm_offset_t) 0; + /* + * XXXMIPS: Hack this part to make it working on MIPS. + * Leave it for later. + */ +#if 0 vm_offset_t pg; vm_page_t p; int index; @@ -3628,6 +3644,7 @@ } VM_OBJECT_UNLOCK(kernel_object); bp->b_npages = index; +#endif } /* Return pages associated with this buf to the vm system */ ==== //depot/projects/mips2/src/sys/vm/vnode_pager.c#2 (text+ko) ==== @@ -1060,13 +1060,17 @@ for (i = 0; i < count; i++) rtvals[i] = VM_PAGER_AGAIN; - + /* + * XXXMIPS: Change this later. For not it causes problems. + */ +#if 0 if ((int64_t)m[0]->pindex < 0) { printf("vnode_pager_putpages: attempt to write meta-data!!! -- 0x%lx(%lx)\n", (long)m[0]->pindex, (u_long)m[0]->dirty); rtvals[0] = VM_PAGER_BAD; return VM_PAGER_BAD; } +#endif maxsize = count * PAGE_SIZE; ncount = count; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 20:58:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5293D16A4E1; Thu, 6 Jul 2006 20:58:15 +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 2B85B16A4DF for ; Thu, 6 Jul 2006 20:58:15 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F0C8243D45 for ; Thu, 6 Jul 2006 20:58:14 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66KwE7m046916 for ; Thu, 6 Jul 2006 20:58:14 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66KwEGW046913 for perforce@freebsd.org; Thu, 6 Jul 2006 20:58:14 GMT (envelope-from clem1@FreeBSD.org) Date: Thu, 6 Jul 2006 20:58:14 GMT Message-Id: <200607062058.k66KwEGW046913@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Cl閙ent Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 100789 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 20:58:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=100789 Change 100789 by clem1@clem1_ipv6vulns on 2006/07/06 20:57:29 New ipv6 attacking tools : o dsmurf6.c sends an icmp echo request with a multicast addr as dst. o ssmurf6.c sends an icmp echo request with a multicast addr as src. o tcpkill.c is an implementation of the icmp-attacks-against-tcp described by Fernando Gont. KAME is not vulnerable to these attacks whereas USAGI is vulnerable to ssmurf6.c. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/attacking-tools/smurf6/dsmurf6.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/attacking-tools/smurf6/ssmurf6.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/attacking-tools/tcp-kill/tcp-kill.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:06:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 655CB16A4DE; Thu, 6 Jul 2006 21:06:26 +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 2856E16A4DA for ; Thu, 6 Jul 2006 21:06:26 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A2A2E43D53 for ; Thu, 6 Jul 2006 21:06:25 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66L6Pcm048569 for ; Thu, 6 Jul 2006 21:06:25 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66L6Pui048566 for perforce@freebsd.org; Thu, 6 Jul 2006 21:06:25 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 21:06:25 GMT Message-Id: <200607062106.k66L6Pui048566@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100790 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:06:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=100790 Change 100790 by wkoszek@wkoszek_laptop on 2006/07/06 21:06:22 Start adding flags making MIPS kernel compilation successful. Affected files ... .. //depot/projects/mips2/src/sys/conf/Makefile.mips#3 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/Makefile.mips#3 (text+ko) ==== @@ -33,6 +33,11 @@ MKMODULESENV+= MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE_ARCH} +# +# XXXMIPS: Without it, you'll be bombed by warnings. +# +CFLAGS+=-fno-pic + %BEFORE_DEPEND %OBJS From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:14:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D93FC16A4E5; Thu, 6 Jul 2006 21:14:36 +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 B2E2D16A4E1 for ; Thu, 6 Jul 2006 21:14:36 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6E80943D49 for ; Thu, 6 Jul 2006 21:14:36 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66LEaFI048928 for ; Thu, 6 Jul 2006 21:14:36 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66LEaCK048925 for perforce@freebsd.org; Thu, 6 Jul 2006 21:14:36 GMT (envelope-from jb@freebsd.org) Date: Thu, 6 Jul 2006 21:14:36 GMT Message-Id: <200607062114.k66LEaCK048925@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100791 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:14:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=100791 Change 100791 by jb@jb_freebsd2 on 2006/07/06 21:13:54 Remove debugging printfs and #ifdef the UltraSparc T1 simulator support code. This unbreaks i386. Affected files ... .. //depot/projects/dtrace/src/lib/libstand/ufs.c#3 edit Differences ... ==== //depot/projects/dtrace/src/lib/libstand/ufs.c#3 (text+ko) ==== @@ -111,6 +111,7 @@ ufs_readdir }; +#if defined(__sparc64__) && defined(T1_SIMULATOR) typedef int32_t daddr32_t; typedef int32_t time32_t; typedef unsigned char uchar_t; @@ -238,6 +239,7 @@ uchar_t fs_space[1]; /* list of blocks for each rotation */ /* actually longer */ }; +#endif /* * In-core open file. @@ -277,6 +279,7 @@ * i_number. */ +#if defined(__sparc64__) && defined(T1_SIMULATOR) static void hdump(uint8_t *bp, int size) { int i; @@ -311,6 +314,7 @@ printf(" : %s\n", tmp); } } +#endif /* @@ -330,11 +334,6 @@ if (fs == NULL) panic("fs == NULL"); - printf("read_inode : inumber=0x%llx fsba=0x%llx dba=0x%llx\n", - (uint64_t)inumber, - (uint64_t)ino_to_fsba(fs, inumber), - (uint64_t)fsbtodb(fs, ino_to_fsba(fs, inumber)) ); - /* * Read inode and save it. */ @@ -580,21 +579,12 @@ file_block = lblkno(fs, fp->f_seekp); file_size = DIP(fp, di_size); block_size = sblksize(fs, file_size, file_block); -#if 0 - printf("buf_read_file: fs->f_seekp=0x%llx : off=0x%lx : file_block=0x%lx : block_size=0x%llx\n", - (uint64_t)fp->f_seekp, off, file_block, (uint64_t)block_size); - printf("\tfile_size=0x%llx : fs_bsize=0x%llx\n", (uint64_t)file_size, (uint64_t)fs->fs_bsize); - printf("fragroundup[blkoff[%lld]=%lld]=%lld\n", file_size, blkoff(fs, file_size), - fragroundup(fs, blkoff(fs, file_size))); - printf("fs->fs_qbmask=%llx fs->fs_qfmask=%llx fs->fs_fmask=%lx\n", fs->fs_qbmask, fs->fs_qfmask, fs->fs_fmask); -#endif +#if defined(__sparc64__) && defined(T1_SIMULATOR) if (block_size > 8192) { block_size=8192; printf("FORCE ROUND block_size\n"); } -#if 0 - printf("\tfp->f_buf_blkno = 0x%lx\n", fp->f_buf_blkno); #endif if (file_block != fp->f_buf_blkno) { if (fp->f_buf == (char *)0) @@ -603,27 +593,16 @@ rc = block_map(f, file_block, &disk_block); if (rc) return (rc); -#if 0 - printf("\tblock_map : disk_block = 0x%lx\n", disk_block); -#endif if (disk_block == 0) { bzero(fp->f_buf, block_size); fp->f_buf_size = block_size; } else { twiddle(); -#if 0 - printf("\tcalling dev_strategy for block read fsbtodb[0x%lx]=0x%lx\n", - disk_block, fsbtodb(fs, disk_block)); -#endif rc = (f->f_dev->dv_strategy)(f->f_devdata, F_READ, fsbtodb(fs, disk_block), block_size, fp->f_buf, &fp->f_buf_size); if (rc) return (rc); -#if 0 - printf("\treturned from block read with 0x%lx bytes\n", fp->f_buf_size); - hdump(fp->f_buf, fp->f_buf_size); -#endif } fp->f_buf_blkno = file_block; @@ -646,6 +625,7 @@ return (0); } +#if defined(__sparc64__) && defined(T1_SIMULATOR) static void test_disk(struct open_file *f) { @@ -666,14 +646,10 @@ if (rc || read_size != 512) printf("strategy failed\n"); -#if 0 - printf("%04d\n", i); - hdump(buf, 512); -#endif - } } +#endif static int search_directory(name, f, inumber_p) @@ -688,34 +664,17 @@ size_t buf_size; int namlen, length; int rc; -#if 0 - test_disk(f); -#endif length = strlen(name); -#if 0 - printf("search_directory: name=%s\n", name); -#endif fp->f_seekp = 0; while (fp->f_seekp < DIP(fp, di_size)) { int i; rc = buf_read_file(f, &buf, &buf_size); if (rc) return (rc); -#if 0 - printf("scan directory entries: @ 0x%llx (size=0x%llx)\n", - (uint64_t)buf, (uint64_t)buf_size); -#endif dp = (struct direct *)buf; edp = (struct direct *)(buf + buf_size); i = 0; -#if 0 - hdump(buf, buf_size); -#endif while (dp < edp) { -#if 0 - printf("\tdirent# %d (dp=0x%llx edp=0x%llx\n", i, - (uint64_t)dp, (uint64_t)edp); -#endif if (dp->d_ino == (ino_t)0) goto next; #if BYTE_ORDER == LITTLE_ENDIAN @@ -724,9 +683,6 @@ else #endif namlen = dp->d_namlen; -#if 0 - printf("namlen: %d dp->d_name: %s\n", namlen, dp->d_name); -#endif if (namlen == length && !strcmp(name, dp->d_name)) { /* found entry */ @@ -743,32 +699,19 @@ } static int sblock_try[] = SBLOCKSEARCH; + +#if defined(__sparc64__) && defined(T1_SIMULATOR) #define SOLARIS_SBLOCK_CONVERT 1 void map_sblock(struct fs *fsp) { struct solaris_fs sfs = *(struct solaris_fs *)fsp; -#if 0 - printf("fbsd fs_qfmask offset %lx solaris fs_qfmask offset %lx\n", - offsetof(struct fs, fs_qfmask), offsetof(struct solaris_fs, fs_qfmask)); - printf("fbsd fs_qbmask offset %lx solaris fs_qbmask offset %lx\n", - offsetof(struct fs, fs_qbmask), offsetof(struct solaris_fs, fs_qbmask)); - - printf(" fsp->fs_qbmask: %llx = sfs.fs_qbmask %08lx%08lx;\n", - fsp->fs_qbmask, sfs.fs_qbmask.val[0], sfs.fs_qbmask.val[1]); - printf(" fsp->fs_qfmask: %llx = sfs.fs_qfmask %08lx%08lx;\n", - fsp->fs_qfmask, sfs.fs_qfmask.val[0], sfs.fs_qfmask.val[1]); -#endif fsp->fs_qbmask = ((uint64_t)sfs.fs_qbmask.val[0]) << 32 | sfs.fs_qbmask.val[1]; fsp->fs_qfmask = ((uint64_t)sfs.fs_qfmask.val[0]) << 32 | sfs.fs_qfmask.val[1]; } - - - - +#endif - /* * Open a file. */ @@ -808,15 +751,6 @@ if (rc) goto out; - - - -#if 0 - printf("fs->fs_magic: %x fs->fs_bsize: %x fs->fs_sblockloc: %lx\n", - fs->fs_magic, fs->fs_bsize, fs->fs_sblockloc); - printf("sblock_try[i]: %x buf_size %lx\n", - sblock_try[i], buf_size); -#endif if ((fs->fs_magic == FS_UFS1_MAGIC || (fs->fs_magic == FS_UFS2_MAGIC && fs->fs_sblockloc == sblock_try[i])) && @@ -829,7 +763,7 @@ rc = EINVAL; goto out; } -#if 1 +#if defined(__sparc64__) && defined(T1_SIMULATOR) map_sblock(fs); #endif /* @@ -852,9 +786,6 @@ goto out; } -#if 0 - printf("read root inode \n"); -#endif cp = path = strdup(upath); if (path == NULL) { rc = ENOMEM; @@ -901,8 +832,6 @@ * symbolic link. */ parent_inumber = inumber; - printf("-- searching %s @ inode = 0x%x - found @ 0x%x\n", - ncp, parent_inumber, inumber); rc = search_directory(ncp, f, &inumber); *cp = c; if (rc) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:21:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D4C9116A4E0; Thu, 6 Jul 2006 21:21:46 +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 980EF16A4DD for ; Thu, 6 Jul 2006 21:21:46 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 320B443D46 for ; Thu, 6 Jul 2006 21:21:46 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66LLkdn049395 for ; Thu, 6 Jul 2006 21:21:46 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66LLjnt049392 for perforce@freebsd.org; Thu, 6 Jul 2006 21:21:45 GMT (envelope-from jb@freebsd.org) Date: Thu, 6 Jul 2006 21:21:45 GMT Message-Id: <200607062121.k66LLjnt049392@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100793 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:21:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=100793 Change 100793 by jb@jb_freebsd2 on 2006/07/06 21:21:33 Integrate the diagnostic change for the unacked ipis. Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/sun4v/pmap.c#6 integrate Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/sun4v/pmap.c#6 (text+ko) ==== @@ -1218,12 +1218,13 @@ pmap_ipi(pmap_t pmap, char *func, uint64_t arg1, uint64_t arg2) { - int i, cpu_count; + int i, cpu_count, retried; u_int cpus; cpumask_t cpumask, active, curactive; cpumask_t active_total, ackmask; uint16_t *cpulist; + retried = 0; if (!smp_started) return (0); @@ -1271,11 +1272,25 @@ (uint64_t)arg2, (uint64_t *)&ackmask); while (ackmask != curactive) { - DELAY(1); + membar(Sync); i++; - if (i > 1000000) - panic(" ackmask=0x%x active=0x%x\n", ackmask, curactive); + if (i > 10000000) { + uint64_t cpu_state; + printf("cpu with cpumask=0x%x appears to not be responding to ipis\n", + curactive & ~ackmask); + + hv_cpu_state((uint64_t)ffs64(curactive & ~ackmask), &cpu_state); + printf("cpu_state of %ld is %ld\n", ffs64(curactive & ~ackmask), cpu_state); + if (!retried) { + printf("I'm going to send off another ipi just to confirm that it isn't a memory barrier bug\n" + "and then I'm going to panic\n"); + + retried = 1; + goto retry; + } + panic(" ackmask=0x%x active=0x%x\n", ackmask, curactive); + } } active_total |= curactive; From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:41:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C298B16A519; Thu, 6 Jul 2006 21:41:39 +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 7B95016A508 for ; Thu, 6 Jul 2006 21:41:39 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ED72643DBA for ; Thu, 6 Jul 2006 21:41:12 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Lew9c050660 for ; Thu, 6 Jul 2006 21:40:58 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66LewNY050657 for perforce@freebsd.org; Thu, 6 Jul 2006 21:40:58 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 21:40:58 GMT Message-Id: <200607062140.k66LewNY050657@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100796 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:41:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=100796 Change 100796 by wkoszek@wkoszek_laptop on 2006/07/06 21:40:49 Add more stuf calls. Convert handmade _start to ENTRY(_start). Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/copystr.S#1 add .. //depot/projects/mips2/src/sys/mips/mips/exception.S#1 add .. //depot/projects/mips2/src/sys/mips/mips/locore.S#3 edit .. //depot/projects/mips2/src/sys/mips/mips/support.S#1 add .. //depot/projects/mips2/src/sys/mips/mips/swtch.S#1 add Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#3 (text+ko) ==== @@ -27,11 +27,11 @@ #include "assym.s" #include +#include __FBSDID("$FreeBSD$"); /* * XXXMIPS: Fill this later. */ -.globl _start -_start: +ENTRY(_start) nop From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:43:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E2D6916A4E2; Thu, 6 Jul 2006 21:43:11 +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 48ECD16A4E5 for ; Thu, 6 Jul 2006 21:43:11 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F38ED43D7E for ; Thu, 6 Jul 2006 21:43:02 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Lh2wh050864 for ; Thu, 6 Jul 2006 21:43:02 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66Lh2Jr050861 for perforce@freebsd.org; Thu, 6 Jul 2006 21:43:02 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 21:43:02 GMT Message-Id: <200607062143.k66Lh2Jr050861@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100798 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:43:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=100798 Change 100798 by wkoszek@wkoszek_laptop on 2006/07/06 21:42:02 Add files with stubcalls. Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#6 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#6 (text+ko) ==== @@ -1,17 +1,21 @@ # $FreeBSD$ mips/mips/autoconf.c standard mips/mips/busdma_machdep.c standard +mips/mips/copystr.S standard mips/mips/db_disasm.c optional ddb mips/mips/db_interface.c optional ddb mips/mips/db_trace.c optional ddb mips/mips/dump_machdep.c standard mips/mips/elf_machdep.c standard +mips/mips/exception.S standard mips/mips/in_cksum.c optional inet mips/mips/intr.c standard mips/mips/locore.S standard no-obj mips/mips/machdep.c standard mips/mips/mem.c optional mem mips/mips/pmap.c standard +mips/mips/support.S standard +mips/mips/swtch.S standard mips/mips/sys_machdep.c standard mips/mips/trap.c standard mips/mips/uio_machdep.c standard From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:50:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A601A16A4E8; Thu, 6 Jul 2006 21:50:57 +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 7E15F16A4E6 for ; Thu, 6 Jul 2006 21:50:57 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4E7B343D45 for ; Thu, 6 Jul 2006 21:50:57 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Lovm6051420 for ; Thu, 6 Jul 2006 21:50:57 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66LouiR051417 for perforce@freebsd.org; Thu, 6 Jul 2006 21:50:56 GMT (envelope-from jhb@freebsd.org) Date: Thu, 6 Jul 2006 21:50:56 GMT Message-Id: <200607062150.k66LouiR051417@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100800 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:50:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=100800 Change 100800 by jhb@jhb_mutex on 2006/07/06 21:49:56 Cleanup. Affected files ... .. //depot/projects/smpng/sys/kern/kern_prot.c#96 edit .. //depot/projects/smpng/sys/kern/kern_thread.c#92 edit Differences ... ==== //depot/projects/smpng/sys/kern/kern_prot.c#96 (text+ko) ==== @@ -65,7 +65,6 @@ #include #include #include -#include #include @@ -303,7 +302,7 @@ u_int ngrp; int error; - ngrp = MIN(uap->gidsetsize, NGROUPS); + ngrp = MIN(uap->gidsetsize, NGROUPS); error = kern_getgroups(td, &ngrp, groups); if (error) return (error); ==== //depot/projects/smpng/sys/kern/kern_thread.c#92 (text+ko) ==== @@ -604,7 +604,6 @@ */ PROC_UNLOCK(p); } - td->td_state = TDS_INACTIVE; CTR1(KTR_PROC, "thread_exit: cpu_throw() thread %p", td); cpu_throw(td, choosethread()); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:50:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 02D8616A55F; Thu, 6 Jul 2006 21:50:58 +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 D36E816A556 for ; Thu, 6 Jul 2006 21:50:57 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A1D0343D45 for ; Thu, 6 Jul 2006 21:50:57 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66LovHI051426 for ; Thu, 6 Jul 2006 21:50:57 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66Lov6F051423 for perforce@freebsd.org; Thu, 6 Jul 2006 21:50:57 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 21:50:57 GMT Message-Id: <200607062150.k66Lov6F051423@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100801 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:50:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=100801 Change 100801 by wkoszek@wkoszek_laptop on 2006/07/06 21:50:26 Make value of KINFO_PROC_SIZE more or less correct. It failed CTASSERT from kern_proc.c for now, but it's what I got while cross-compiling. Affected files ... .. //depot/projects/mips2/src/sys/sys/user.h#5 edit Differences ... ==== //depot/projects/mips2/src/sys/sys/user.h#5 (text+ko) ==== @@ -94,8 +94,11 @@ #ifdef __i386__ #define KINFO_PROC_SIZE 768 #endif +/* + * XXXMIPS: I'm not sure, but after cross-compiling my test-case I saw 768. + */ #ifdef __mips__ -#define KINFO_PROC_SIZE 792 +#define KINFO_PROC_SIZE 768 #endif #ifdef __powerpc__ #define KINFO_PROC_SIZE 768 From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:50:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7ED6216A5CF; Thu, 6 Jul 2006 21:50:58 +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 44F0316A5CD for ; Thu, 6 Jul 2006 21:50:58 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 010DC43D45 for ; Thu, 6 Jul 2006 21:50:58 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66LovJp051433 for ; Thu, 6 Jul 2006 21:50:57 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66LovUl051430 for perforce@freebsd.org; Thu, 6 Jul 2006 21:50:57 GMT (envelope-from jhb@freebsd.org) Date: Thu, 6 Jul 2006 21:50:57 GMT Message-Id: <200607062150.k66LovUl051430@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100802 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:50:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=100802 Change 100802 by jhb@jhb_mutex on 2006/07/06 21:50:55 Update. Affected files ... .. //depot/projects/smpng/sys/notes#72 edit Differences ... ==== //depot/projects/smpng/sys/notes#72 (text+ko) ==== @@ -80,11 +80,10 @@ version of the current WITNESS check that doesn't bog the system down quite as bad. - compat ABI cleanups - - axe stackgap + + axe stackgap + svr4 + linux - - ibcs2 - - ibcs2_msg.c + + ibcs2 - push Giant down and mark all remaining syscalls MPSAFE + freebsd + compat32 From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:54:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C77A416A504; Thu, 6 Jul 2006 21:54:05 +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 A21E616A500 for ; Thu, 6 Jul 2006 21:54:05 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E485043D53 for ; Thu, 6 Jul 2006 21:54:04 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66Ls4BV051626 for ; Thu, 6 Jul 2006 21:54:04 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66Ls2kc051623 for perforce@freebsd.org; Thu, 6 Jul 2006 21:54:02 GMT (envelope-from jhb@freebsd.org) Date: Thu, 6 Jul 2006 21:54:02 GMT Message-Id: <200607062154.k66Ls2kc051623@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100803 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:54:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=100803 Change 100803 by jhb@jhb_mutex on 2006/07/06 21:53:53 IFC @100799 - loopback. Affected files ... .. //depot/projects/smpng/sys/Makefile#12 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#62 integrate .. //depot/projects/smpng/sys/amd64/conf/GENERIC#49 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#11 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#11 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#11 integrate .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#15 integrate .. //depot/projects/smpng/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/smpng/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/smpng/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/smpng/sys/arm/at91/uart_dev_at91usart.c#6 integrate .. //depot/projects/smpng/sys/bsm/audit_kevents.h#5 integrate .. //depot/projects/smpng/sys/bsm/audit_record.h#4 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#47 integrate .. //depot/projects/smpng/sys/compat/svr4/Makefile#3 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_ipc.c#18 integrate .. //depot/projects/smpng/sys/conf/files.ia64#55 integrate .. //depot/projects/smpng/sys/conf/kern.mk#17 integrate .. //depot/projects/smpng/sys/conf/kern.pre.mk#51 integrate .. //depot/projects/smpng/sys/conf/kmod.mk#59 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#69 integrate .. //depot/projects/smpng/sys/dev/ata/ata-lowlevel.c#35 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#43 integrate .. //depot/projects/smpng/sys/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/smpng/sys/dev/bktr/CHANGELOG.TXT#4 integrate .. //depot/projects/smpng/sys/dev/fdc/fdc.c#23 integrate .. //depot/projects/smpng/sys/dev/ic/nec765.h#4 integrate .. //depot/projects/smpng/sys/dev/isp/isp.c#40 integrate .. //depot/projects/smpng/sys/dev/isp/isp_pci.c#36 integrate .. //depot/projects/smpng/sys/dev/isp/ispmbox.h#21 integrate .. //depot/projects/smpng/sys/dev/isp/ispreg.h#8 integrate .. //depot/projects/smpng/sys/dev/isp/ispvar.h#30 integrate .. //depot/projects/smpng/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/smpng/sys/dev/ispfw/ispfw.c#12 integrate .. //depot/projects/smpng/sys/dev/mfi/mfi.c#9 integrate .. //depot/projects/smpng/sys/dev/mii/acphy.c#14 integrate .. //depot/projects/smpng/sys/dev/mii/amphy.c#13 integrate .. //depot/projects/smpng/sys/dev/mii/bmtphy.c#9 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#32 integrate .. //depot/projects/smpng/sys/dev/mii/ciphy.c#5 integrate .. //depot/projects/smpng/sys/dev/mii/e1000phy.c#13 integrate .. //depot/projects/smpng/sys/dev/mii/exphy.c#13 integrate .. //depot/projects/smpng/sys/dev/mii/inphy.c#8 integrate .. //depot/projects/smpng/sys/dev/mii/lxtphy.c#14 integrate .. //depot/projects/smpng/sys/dev/mii/mii_physubr.c#14 integrate .. //depot/projects/smpng/sys/dev/mii/mlphy.c#11 integrate .. //depot/projects/smpng/sys/dev/mii/nsgphy.c#16 integrate .. //depot/projects/smpng/sys/dev/mii/nsphy.c#13 integrate .. //depot/projects/smpng/sys/dev/mii/pnaphy.c#14 integrate .. //depot/projects/smpng/sys/dev/mii/qsphy.c#14 integrate .. //depot/projects/smpng/sys/dev/mii/rgephy.c#8 integrate .. //depot/projects/smpng/sys/dev/mii/rlphy.c#17 integrate .. //depot/projects/smpng/sys/dev/mii/ruephy.c#5 integrate .. //depot/projects/smpng/sys/dev/mii/tdkphy.c#16 integrate .. //depot/projects/smpng/sys/dev/mii/tlphy.c#15 integrate .. //depot/projects/smpng/sys/dev/mii/ukphy.c#12 integrate .. //depot/projects/smpng/sys/dev/mii/xmphy.c#15 integrate .. //depot/projects/smpng/sys/dev/puc/puc.c#29 integrate .. //depot/projects/smpng/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/smpng/sys/dev/puc/puc_pccard.c#8 integrate .. //depot/projects/smpng/sys/dev/puc/puc_pci.c#12 integrate .. //depot/projects/smpng/sys/dev/puc/pucdata.c#37 integrate .. //depot/projects/smpng/sys/dev/sio/sio.c#61 integrate .. //depot/projects/smpng/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/smpng/sys/dev/sound/pci/solo.c#17 integrate .. //depot/projects/smpng/sys/dev/usb/if_aue.c#42 integrate .. //depot/projects/smpng/sys/dev/usb/if_ural.c#16 integrate .. //depot/projects/smpng/sys/fs/devfs/devfs_vfsops.c#27 integrate .. //depot/projects/smpng/sys/fs/devfs/devfs_vnops.c#56 integrate .. //depot/projects/smpng/sys/fs/unionfs/union_vnops.c#31 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#30 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.c#30 integrate .. //depot/projects/smpng/sys/i386/conf/GENERIC#79 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#101 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_misc.c#27 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_msg.c#8 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_poll.h#3 delete .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_proto.h#12 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_syscall.h#11 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_sysent.c#13 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.h#9 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix_syscall.h#8 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix_sysent.c#9 integrate .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#13 integrate .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.xenix#7 integrate .. //depot/projects/smpng/sys/i386/linux/linux_proto.h#29 integrate .. //depot/projects/smpng/sys/i386/linux/linux_syscall.h#28 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysent.c#29 integrate .. //depot/projects/smpng/sys/i386/linux/syscalls.master#33 integrate .. //depot/projects/smpng/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/smpng/sys/ia64/ia64/trap.c#80 integrate .. //depot/projects/smpng/sys/ia64/include/ieeefp.h#5 integrate .. //depot/projects/smpng/sys/ia64/include/md_var.h#21 integrate .. //depot/projects/smpng/sys/kern/init_sysent.c#69 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#78 integrate .. //depot/projects/smpng/sys/kern/kern_prot.c#97 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#93 integrate .. //depot/projects/smpng/sys/kern/sched_4bsd.c#59 integrate .. //depot/projects/smpng/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/smpng/sys/kern/syscalls.c#69 integrate .. //depot/projects/smpng/sys/kern/syscalls.master#75 integrate .. //depot/projects/smpng/sys/kern/uipc_socket2.c#54 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#130 integrate .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#109 integrate .. //depot/projects/smpng/sys/modules/bktr/bktr_mem/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/streams/Makefile#4 integrate .. //depot/projects/smpng/sys/modules/svr4/Makefile#7 integrate .. //depot/projects/smpng/sys/net/bpf.c#61 integrate .. //depot/projects/smpng/sys/net/if.c#84 integrate .. //depot/projects/smpng/sys/net/if_atmsubr.c#21 integrate .. //depot/projects/smpng/sys/net/if_enc.c#3 integrate .. //depot/projects/smpng/sys/net/if_stf.c#36 integrate .. //depot/projects/smpng/sys/net/if_tun.c#46 integrate .. //depot/projects/smpng/sys/net/rtsock.c#54 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#14 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#4 integrate .. //depot/projects/smpng/sys/netinet/if_ether.c#49 integrate .. //depot/projects/smpng/sys/netinet/in_rmx.c#13 integrate .. //depot/projects/smpng/sys/netinet/ip_divert.c#48 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#74 integrate .. //depot/projects/smpng/sys/netinet/ip_ipsec.c#3 integrate .. //depot/projects/smpng/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/smpng/sys/netinet6/in6.c#33 integrate .. //depot/projects/smpng/sys/netinet6/in6_cksum.c#10 integrate .. //depot/projects/smpng/sys/netinet6/in6_rmx.c#10 integrate .. //depot/projects/smpng/sys/netinet6/in6_var.h#16 integrate .. //depot/projects/smpng/sys/nfsclient/bootp_subr.c#31 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_diskless.c#14 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/mmu_oea.c#5 integrate .. //depot/projects/smpng/sys/security/audit/audit.h#3 integrate .. //depot/projects/smpng/sys/security/audit/audit_arg.c#4 integrate .. //depot/projects/smpng/sys/security/audit/audit_bsm.c#4 integrate .. //depot/projects/smpng/sys/sys/syscall.h#68 integrate .. //depot/projects/smpng/sys/sys/syscall.mk#68 integrate .. //depot/projects/smpng/sys/sys/syscallsubr.h#41 integrate .. //depot/projects/smpng/sys/sys/sysproto.h#71 integrate Differences ... ==== //depot/projects/smpng/sys/Makefile#12 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#62 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.560 2006/06/27 04:28:22 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1979,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2145,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2582,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2796,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2977,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3030,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3052,45 +3033,33 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if ((*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; - if (rtval > 4) { - PMAP_UNLOCK(pmap); - break; - } + if (rtval > 4) + pvn = NULL; } PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3100,7 +3069,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3111,7 +3096,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3125,9 +3126,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3151,9 +3150,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3173,9 +3170,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/smpng/sys/amd64/conf/GENERIC#49 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#11 (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.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#11 (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.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#11 (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.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #include @@ -74,7 +74,7 @@ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ ==== //depot/projects/smpng/sys/amd64/linux32/syscalls.master#15 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). ==== //depot/projects/smpng/sys/arm/at91/at91_pio.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.1 2006/03/24 07:39:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); #include #include @@ -38,7 +38,9 @@ #include #include +#include #include +#include struct at91_pio_softc { @@ -103,7 +105,26 @@ static int at91_pio_probe(device_t dev) { - device_set_desc(dev, "PIO"); + const char *name; + + switch (device_get_unit(dev)) { + case 0: + name = "PIOA"; + break; + case 1: + name = "PIOB"; + break; + case 2: + name = "PIOC"; + break; + case 3: + name = "PIOD"; + break; + default: + name = "PIO"; + break; + } + device_set_desc(dev, name); return (0); } @@ -118,6 +139,9 @@ if (err) goto out; + device_printf(dev, "ABSR: %#x OSR: %#x PSR:%#x ODSR: %#x\n", + RD4(sc, PIO_ABSR), RD4(sc, PIO_OSR), RD4(sc, PIO_PSR), + RD4(sc, PIO_ODSR)); AT91_PIO_LOCK_INIT(sc); /* @@ -250,6 +274,69 @@ return (ENXIO); } +/* + * The following functions are called early in the boot process, so + * don't use bus_space, as that isn't yet available when we need to use + * them. + */ +void +at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ASR / 4] = periph_a_mask; + PIO[PIO_PDR / 4] = periph_a_mask; +} + +void +at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_BSR / 4] = periph_b_mask; + PIO[PIO_PDR / 4] = periph_b_mask; +} + +void +at91_pio_use_gpio(uint32_t pio, uint32_t gpio_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_PER / 4] = gpio_mask; +} + +void +at91_pio_gpio_input(uint32_t pio, uint32_t input_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ODR / 4] = input_enable_mask; +} + +void +at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_OER / 4] = output_enable_mask; +} + +void +at91_pio_gpio_set(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_SODR / 4] = data_mask; +} + +void +at91_pio_gpio_clear(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_CODR / 4] = data_mask; +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), ==== //depot/projects/smpng/sys/arm/at91/uart_dev_at91usart.c#6 (text) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.6 2006/05/13 23:41:16 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.7 2006/07/02 03:45:33 imp Exp $"); #include #include @@ -45,19 +45,29 @@ #include "uart_if.h" +#define DEFAULT_RCLK AT91C_MASTER_CLOCK +#define USART_BUFFER_SIZE 128 + /* * High-level UART interface. */ +struct at91_usart_rx { + bus_addr_t pa; + uint8_t buffer[USART_BUFFER_SIZE]; + bus_dmamap_t map; +}; + struct at91_usart_softc { struct uart_softc base; bus_dma_tag_t dmatag; /* bus dma tag for mbufs */ bus_dmamap_t tx_map; - bus_dmamap_t rx_map; + uint32_t flags; +#define HAS_TIMEOUT 1 + struct at91_usart_rx ping_pong[2]; + struct at91_usart_rx *ping; + struct at91_usart_rx *pong; }; -#define DEFAULT_RCLK AT91C_MASTER_CLOCK -#define USART_BUFFER_SIZE 128 - #define RD4(bas, reg) \ bus_space_read_4((bas)->bst, (bas)->bsh, uart_regofs(bas, reg)) #define WR4(bas, reg, value) \ @@ -72,6 +82,9 @@ } \ } while (0); +#define BAUD2DIVISOR(b) \ + ((((DEFAULT_RCLK * 10) / ((b) * 16)) + 5) / 10) + /* * Low-level UART interface. */ @@ -147,16 +160,19 @@ } /* - * Or in the stop bits. Note: The hardware supports - * 1.5 stop bits in async mode, but there's no way to - * specify that AFAICT. + * Or in the stop bits. Note: The hardware supports 1.5 stop + * bits in async mode, but there's no way to specify that + * AFAICT. Instead, rely on the convention documented at + * http://www.lammertbies.nl/comm/info/RS-232_specs.html which + * states that 1.5 stop bits are used for 5 bit bytes and + * 2 stop bits only for longer bytes. */ - if (stopbits > 1) + if (stopbits == 1) + mr |= USART_MR_NBSTOP_1; + else if (databits > 5) mr |= USART_MR_NBSTOP_2; else - mr |= USART_MR_NBSTOP_2; - /* else if (stopbits == 1.5) - mr |= USART_MR_NBSTOP_1_5; */ + mr |= USART_MR_NBSTOP_1_5; /* * We want normal plumbing mode too, none of this fancy @@ -167,6 +183,13 @@ mr &= ~USART_MR_MSBF; /* lsb first */ mr &= ~USART_MR_CKLO_SCK; /* Don't drive SCK */ + WR4(bas, USART_MR, mr); + + /* + * Set the baud rate + */ + WR4(bas, USART_BRGR, BAUD2DIVISOR(baudrate)); + /* XXX Need to take possible synchronous mode into account */ return (0); } @@ -188,25 +211,19 @@ } /* - * Initialize this device (I think as the console) + * Initialize this device for use as a console. */ static void at91_usart_init(struct uart_bas *bas, int baudrate, int databits, int stopbits, int parity) { - int cr; at91_usart_param(bas, baudrate, databits, stopbits, parity); - /* Turn on rx and tx */ - cr = USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX; - WR4(bas, USART_CR, cr); + /* Reset the rx and tx buffers and turn on rx and tx */ + WR4(bas, USART_CR, USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX); WR4(bas, USART_CR, USART_CR_RXEN | USART_CR_TXEN); - WR4(bas, USART_IER, USART_CSR_TIMEOUT | - USART_CSR_TXRDY | USART_CSR_RXRDY | - USART_CSR_RXBRK | USART_CSR_ENDRX | USART_CSR_ENDTX); - /* Set the receive timeout to be 1.5 character times. */ - WR4(bas, USART_RTOR, 12); + WR4(bas, USART_IDR, 0xffffffff); } /* @@ -227,8 +244,8 @@ at91_usart_putc(struct uart_bas *bas, int c) { - while (!(RD4(bas, USART_CSR) & - USART_CSR_TXRDY)); + while (!(RD4(bas, USART_CSR) & USART_CSR_TXRDY)) + continue; WR4(bas, USART_THR, c); } @@ -252,8 +269,8 @@ { int c; - while (!(RD4(bas, USART_CSR) & USART_CSR_RXRDY)) - ; + while (!(RD4(bas, USART_CSR) & USART_CSR_RXRDY)) + continue; c = RD4(bas, USART_RHR); c &= 0xff; return (c); @@ -291,14 +308,35 @@ return (0); } +#ifndef SKYEYE_WORKAROUNDS +static void +at91_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error) +{ + if (error != 0) + return; + *(bus_addr_t *)arg = segs[0].ds_addr; +} +#endif + static int at91_usart_bus_attach(struct uart_softc *sc) { - int err; + int err, i; + uint32_t cr; struct at91_usart_softc *atsc; atsc = (struct at91_usart_softc *)sc; + /* + * See if we have a TIMEOUT bit. We disable all interrupts to + * minimize interference. + */ + WR4(&sc->sc_bas, USART_IDR, 0xffffffff); + WR4(&sc->sc_bas, USART_IER, USART_CSR_TIMEOUT); + if (RD4(&sc->sc_bas, USART_IMR) & USART_CSR_TIMEOUT) + atsc->flags |= HAS_TIMEOUT; + WR4(&sc->sc_bas, USART_IDR, 0xffffffff); + sc->sc_txfifosz = USART_BUFFER_SIZE; sc->sc_rxfifosz = USART_BUFFER_SIZE; sc->sc_hwiflow = 0; @@ -314,25 +352,62 @@ err = bus_dmamap_create(atsc->dmatag, 0, &atsc->tx_map); if (err != 0) goto errout; - err = bus_dmamap_create(atsc->dmatag, 0, &atsc->rx_map); - if (err != 0) - goto errout; + if (atsc->flags & HAS_TIMEOUT) { + for (i = 0; i < 2; i++) { + err = bus_dmamap_create(atsc->dmatag, 0, + &atsc->ping_pong[i].map); + if (err != 0) + goto errout; + err = bus_dmamap_load(atsc->dmatag, + atsc->ping_pong[i].map, + atsc->ping_pong[i].buffer, sc->sc_rxfifosz, + at91_getaddr, &atsc->ping_pong[i].pa, 0); + if (err != 0) + goto errout; + bus_dmamap_sync(atsc->dmatag, atsc->ping_pong[i].map, + BUS_DMASYNC_PREREAD); + } + atsc->ping = &atsc->ping_pong[0]; + atsc->pong = &atsc->ping_pong[1]; + } + + /* + * Prime the pump with the RX buffer. We use two 64 byte bounce + * buffers here to avoid data overflow. + */ + + /* Turn on rx and tx */ + cr = USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX; + WR4(&sc->sc_bas, USART_CR, cr); + WR4(&sc->sc_bas, USART_CR, USART_CR_RXEN | USART_CR_TXEN); + + /* + * Setup the PDC to receive data. We use the ping-pong buffers + * so that we can more easily bounce between the two and so that + * we get an interrupt 1/2 way through the software 'fifo' we have + * to avoid overruns. + */ + if (atsc->flags & HAS_TIMEOUT) { + WR4(&sc->sc_bas, PDC_RPR, atsc->ping->pa); + WR4(&sc->sc_bas, PDC_RCR, sc->sc_rxfifosz); + WR4(&sc->sc_bas, PDC_RNPR, atsc->pong->pa); + WR4(&sc->sc_bas, PDC_RNCR, sc->sc_rxfifosz); + WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_RXTEN); + + /* Set the receive timeout to be 1.5 character times. */ + WR4(&sc->sc_bas, USART_RTOR, 12); + WR4(&sc->sc_bas, USART_CR, USART_CR_STTTO); + WR4(&sc->sc_bas, USART_IER, USART_CSR_TIMEOUT | + USART_CSR_RXBUFF | USART_CSR_ENDRX); + } else { + WR4(&sc->sc_bas, USART_IER, USART_CSR_RXRDY); + } + WR4(&sc->sc_bas, USART_IER, USART_CSR_RXBRK); errout:; // XXX bad return (err); } -#ifndef SKYEYE_WORKAROUNDS -static void -at91_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error) -{ - if (error != 0) - return; - *(bus_addr_t *)arg = segs[0].ds_addr; -} -#endif - - static int at91_usart_bus_transmit(struct uart_softc *sc) { @@ -359,6 +434,7 @@ WR4(&sc->sc_bas, PDC_TPR, addr); WR4(&sc->sc_bas, PDC_TCR, sc->sc_txdatasz); WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_TXTEN); + WR4(&sc->sc_bas, USART_IER, USART_CSR_ENDTX); uart_unlock(sc->sc_hwmtx); #else for (int i = 0; i < sc->sc_txdatasz; i++) @@ -387,9 +463,7 @@ } while (!atomic_cmpset_32(&sc->sc_hwsig, old, new)); bas = &sc->sc_bas; uart_lock(sc->sc_hwmtx); - cr = RD4(bas, USART_CR); - cr &= ~(USART_CR_DTREN | USART_CR_DTRDIS | USART_CR_RTSEN | - USART_CR_RTSDIS); + cr = 0; if (new & SER_DTR) cr |= USART_CR_DTREN; else @@ -405,16 +479,14 @@ static int at91_usart_bus_receive(struct uart_softc *sc) { - - uart_lock(sc->sc_hwmtx); - uart_rx_put(sc, at91_usart_getc(&sc->sc_bas, NULL)); - uart_unlock(sc->sc_hwmtx); + return (0); } static int at91_usart_bus_param(struct uart_softc *sc, int baudrate, int databits, int stopbits, int parity) { + return (at91_usart_param(&sc->sc_bas, baudrate, databits, stopbits, parity)); } @@ -422,8 +494,9 @@ at91_usart_bus_ipend(struct uart_softc *sc) { int csr = RD4(&sc->sc_bas, USART_CSR); - int ipend = 0; + int ipend = 0, i, len; struct at91_usart_softc *atsc; + struct at91_usart_rx *p; atsc = (struct at91_usart_softc *)sc; if (csr & USART_CSR_ENDTX) { @@ -432,12 +505,85 @@ bus_dmamap_unload(atsc->dmatag, atsc->tx_map); } uart_lock(sc->sc_hwmtx); - if (csr & USART_CSR_TXRDY && sc->sc_txbusy) - ipend |= SER_INT_TXIDLE; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jul 6 21:58:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CD74716A4E2; Thu, 6 Jul 2006 21:58:10 +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 A9FC116A4DA for ; Thu, 6 Jul 2006 21:58:10 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6135B43D55 for ; Thu, 6 Jul 2006 21:58:10 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66LwAIO051878 for ; Thu, 6 Jul 2006 21:58:10 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66LwA1b051875 for perforce@freebsd.org; Thu, 6 Jul 2006 21:58:10 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 21:58:10 GMT Message-Id: <200607062158.k66LwA1b051875@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100804 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 21:58:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=100804 Change 100804 by wkoszek@wkoszek_laptop on 2006/07/06 21:57:16 We don't need that many configuration options. Leave only the mostly needed. Affected files ... .. //depot/projects/mips2/src/sys/mips/conf/QEMU#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/conf/QEMU#3 (text+ko) ==== @@ -29,30 +29,30 @@ makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols #makeoptions CONF_CFLAGS=-mcpu=mips4k -options DDB +#options DDB options KDB options SCHED_4BSD #4BSD scheduler options INET #InterNETworking -options INET6 #IPv6 communications protocols +#options INET6 #IPv6 communications protocols options FFS #Berkeley Fast Filesystem options SOFTUPDATES #Enable FFS soft updates support options UFS_ACL #Support for access control lists options UFS_DIRHASH #Improve performance on big directories options MD_ROOT #MD is a potential root device options ROOTDEVNAME=\"ufs:md0\" -options NFSCLIENT #Network Filesystem Client -options NFSSERVER #Network Filesystem Server -options NFS_ROOT #NFS usable as /, requires NFSCLIENT +#options NFSCLIENT #Network Filesystem Client +#options NFSSERVER #Network Filesystem Server +#options NFS_ROOT #NFS usable as /, requires NFSCLIENT #options MSDOSFS #MSDOS Filesystem -options CD9660 #ISO 9660 Filesystem +#options CD9660 #ISO 9660 Filesystem #options PROCFS #Process filesystem (requires PSEUDOFS) -options PSEUDOFS #Pseudo-filesystem framework +#options PSEUDOFS #Pseudo-filesystem framework options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI #options KTRACE #ktrace(1) support -options SYSVSHM #SYSV-style shared memory -options SYSVMSG #SYSV-style message queues -options SYSVSEM #SYSV-style semaphores +#options SYSVSHM #SYSV-style shared memory +#options SYSVMSG #SYSV-style message queues +#options SYSVSEM #SYSV-style semaphores options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions options KBD_INSTALL_CDEV # install a CDEV entry in /dev device genclock From owner-p4-projects@FreeBSD.ORG Thu Jul 6 22:03:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7FE2516A4E1; Thu, 6 Jul 2006 22:03:17 +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 56D7716A4E0 for ; Thu, 6 Jul 2006 22:03:17 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 12D9343D45 for ; Thu, 6 Jul 2006 22:03:17 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66M3Gvc053417 for ; Thu, 6 Jul 2006 22:03:16 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66M3GJA053414 for perforce@freebsd.org; Thu, 6 Jul 2006 22:03:16 GMT (envelope-from jhb@freebsd.org) Date: Thu, 6 Jul 2006 22:03:16 GMT Message-Id: <200607062203.k66M3GJA053414@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100805 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 22:03:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=100805 Change 100805 by jhb@jhb_mutex on 2006/07/06 22:02:26 Revert, this is fine in CVS. Affected files ... .. //depot/projects/smpng/sys/i386/linux/linux_machdep.c#34 edit Differences ... ==== //depot/projects/smpng/sys/i386/linux/linux_machdep.c#34 (text+ko) ==== @@ -174,12 +174,12 @@ } case LINUX_MSGRCV: { struct linux_msgrcv_args a; - struct l_ipc_kludge tmp; a.msqid = args->arg1; a.msgsz = args->arg2; a.msgflg = args->arg3; if ((args->what >> 16) == 0) { + struct l_ipc_kludge tmp; int error; if (args->ptr == NULL) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 22:07:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2ED2F16A4E1; Thu, 6 Jul 2006 22:07:23 +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 BC9D216A4DF for ; Thu, 6 Jul 2006 22:07:22 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8CC2B43D46 for ; Thu, 6 Jul 2006 22:07:22 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66M7MqP053624 for ; Thu, 6 Jul 2006 22:07:22 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66M7MOO053621 for perforce@freebsd.org; Thu, 6 Jul 2006 22:07:22 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 22:07:22 GMT Message-Id: <200607062207.k66M7MOO053621@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100806 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 22:07:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=100806 Change 100806 by wkoszek@wkoszek_laptop on 2006/07/06 22:07:06 Disable intr_enable() and intr_disable() for now. Let other MIPS hackers to play with MIPS assembler. XXX: Remember to put files/functions names here, since otherwise it makes commit logs completely useless while looking at list of submits. Changed files: cpufunc.h Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#5 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#5 (text+ko) ==== @@ -42,32 +42,39 @@ static __inline register_t intr_disable(void) { - register_t ret, tmp; - + register_t ret; +#if 0 + register_t tmp; + __asm __volatile("mfc0 %0, $12\n" /* MIPS_COP_0_STATUS */ - "and %1, $%0, ~1\n" /* MIPS_SR_INT_IE */ + "and %1, %0, $~1\n" /* MIPS_SR_INT_IE */ "mtc0 %1, $12\n" /* MIPS_COP_0_STATUS */ : "=r" (ret), "=r" (tmp)); +#endif return (ret); } static __inline void intr_enable(void) { +#if 0 register_t tmp; __asm __volatile("mfc %0, $12\n" /* MIPS_COP_0_STATUS */ - "and %0, %0, 1\n" /* MIPS_SR_INT_IE */ + "or %0, %0, $1\n" /* MIPS_SR_INT_IE */ "mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ : "=r" (tmp)); +#endif } static __inline void intr_restore(register_t flag) { +#if 0 __asm __volatile("mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ : : "r" (flag)); +#endif } /* From owner-p4-projects@FreeBSD.ORG Thu Jul 6 22:14:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3EE1516A4E5; Thu, 6 Jul 2006 22:14:32 +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 1B07916A4DD for ; Thu, 6 Jul 2006 22:14:32 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E221E43D45 for ; Thu, 6 Jul 2006 22:14:31 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66MEVKm053896 for ; Thu, 6 Jul 2006 22:14:31 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66MEVgR053893 for perforce@freebsd.org; Thu, 6 Jul 2006 22:14:31 GMT (envelope-from jb@freebsd.org) Date: Thu, 6 Jul 2006 22:14:31 GMT Message-Id: <200607062214.k66MEVgR053893@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100807 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 22:14:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=100807 Change 100807 by jb@jb_freebsd2 on 2006/07/06 22:14:11 I don't understand how this code compiles in current. For sun4v, the bus accessor type was changed from u_int32_t to u_int8_t and now this code (rightly) won't compile. It shouldn't compile in current either. Affected files ... .. //depot/projects/dtrace/src/sys/dev/acpica/acpi_pci.c#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/dev/acpica/acpi_pci.c#4 (text+ko) ==== @@ -264,8 +264,10 @@ acpi_pci_probe(device_t dev) { +#ifdef DOODAD if (pcib_get_bus(dev) < 0) return (ENXIO); +#endif if (acpi_get_handle(dev) == NULL) return (ENXIO); device_set_desc(dev, "ACPI PCI bus"); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 22:15:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D61416A4EA; Thu, 6 Jul 2006 22:15:35 +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 0DABF16A4DD for ; Thu, 6 Jul 2006 22:15:35 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D4E1A43D46 for ; Thu, 6 Jul 2006 22:15:33 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66MFXra053973 for ; Thu, 6 Jul 2006 22:15:33 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66MFXu7053970 for perforce@freebsd.org; Thu, 6 Jul 2006 22:15:33 GMT (envelope-from jb@freebsd.org) Date: Thu, 6 Jul 2006 22:15:33 GMT Message-Id: <200607062215.k66MFXu7053970@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100808 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 22:15:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=100808 Change 100808 by jb@jb_freebsd2 on 2006/07/06 22:15:19 The last integration sucked in some work in progress. Make this file compile again on i386. Affected files ... .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_pci.c#8 edit Differences ... ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt_pci.c#8 (text+ko) ==== @@ -679,7 +679,7 @@ * Align at byte boundaries, * Limit to 32-bit addressing for request/reply queues. */ - if (mpt_dma_tag_create(mpt, /*parent*/bus_get_dma_tag(dev), + if (mpt_dma_tag_create(mpt, /*parent*/ NULL /* XXX bus_get_dma_tag(dev) */, /*alignment*/1, /*boundary*/0, /*lowaddr*/BUS_SPACE_MAXADDR, /*highaddr*/BUS_SPACE_MAXADDR, /*filter*/NULL, /*filterarg*/NULL, /*maxsize*/BUS_SPACE_MAXSIZE_32BIT, From owner-p4-projects@FreeBSD.ORG Thu Jul 6 22:17:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 37FCE16A4E1; Thu, 6 Jul 2006 22:17:37 +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 D34B116A4DF for ; Thu, 6 Jul 2006 22:17:36 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A649A43D49 for ; Thu, 6 Jul 2006 22:17:36 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66MHaTF054124 for ; Thu, 6 Jul 2006 22:17:36 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66MHa2P054121 for perforce@freebsd.org; Thu, 6 Jul 2006 22:17:36 GMT (envelope-from jb@freebsd.org) Date: Thu, 6 Jul 2006 22:17:36 GMT Message-Id: <200607062217.k66MHa2P054121@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100809 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 22:17:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=100809 Change 100809 by jb@jb_freebsd2 on 2006/07/06 22:17:00 Remove the percpu ktrace #ifdef that is not used anywhere in the tree. Move a pointer so that a couple of ints are next to each other. Affected files ... .. //depot/projects/dtrace/src/sys/sys/pcpu.h#9 edit Differences ... ==== //depot/projects/dtrace/src/sys/sys/pcpu.h#9 (text+ko) ==== @@ -68,15 +68,11 @@ cpumask_t pc_other_cpus; /* Mask of all other cpus */ SLIST_ENTRY(pcpu) pc_allcpu; struct lock_list_entry *pc_spinlocks; -#ifdef KTR_PERCPU - int pc_ktr_idx; /* Index into trace table */ - char *pc_ktr_buf; -#endif PCPU_MD_FIELDS; struct vmmeter pc_cnt; /* VM stats counters */ struct device *pc_device; + struct cyc_cpu *pc_cyclic; /* Cyclic subsystem data */ int pc_ncyclic; /* Number of cyclic timers enabled. */ - struct cyc_cpu *pc_cyclic; /* Cyclic subsystem data */ u_int pc_intr_actv; /* Used by DTrace. */ uintptr_t pc_dtrace_caller; /* Used by DTrace. */ uint64_t cpu_dtrace_chillmark; /* DTrace chill mark time */ From owner-p4-projects@FreeBSD.ORG Thu Jul 6 22:27:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D1C516A4EA; Thu, 6 Jul 2006 22:27:51 +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 28F0316A4E8 for ; Thu, 6 Jul 2006 22:27:51 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A897C43D6A for ; Thu, 6 Jul 2006 22:27:49 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66MRnkT054554 for ; Thu, 6 Jul 2006 22:27:49 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66MRnME054551 for perforce@freebsd.org; Thu, 6 Jul 2006 22:27:49 GMT (envelope-from jb@freebsd.org) Date: Thu, 6 Jul 2006 22:27:49 GMT Message-Id: <200607062227.k66MRnME054551@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100810 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 22:27:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100810 Change 100810 by jb@jb_freebsd2 on 2006/07/06 22:27:48 Change 'dtrace_load' to 'dtrace_boot' as the environment variable name so that it isn't confused with the load flag for the dtrace module on i386. Setting 'dtrace_boot=1' in loader.conf is the way to boot with DTrace modules and anonymous enablings on architectures that don't use the Forth menu. Affected files ... .. //depot/projects/dtrace/src/sys/boot/common/boot.c#5 edit .. //depot/projects/dtrace/src/sys/boot/forth/beastie.4th#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/boot/common/boot.c#5 (text+ko) ==== @@ -105,7 +105,7 @@ return(CMD_ERROR); /* Check if DTrace is to be loaded prior to boot. */ - if (getenv("dtrace_load")) { + if (getenv("dtrace_boot")) { /* * Load the DTrace modules. This would be better done * in 4th so that extra providers can be added easily. ==== //depot/projects/dtrace/src/sys/boot/forth/beastie.4th#4 (text+ko) ==== @@ -286,7 +286,7 @@ 0 boot then dup bootdtracekey @ = if - s" YES" s" dtrace_load" setenv + s" YES" s" dtrace_boot" setenv 0 boot then dup escapekey @ = if From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:00:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A6F5316A4E1; Thu, 6 Jul 2006 23:00:30 +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 833F816A4DA for ; Thu, 6 Jul 2006 23:00:30 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 282E643D46 for ; Thu, 6 Jul 2006 23:00:30 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66N0UKR056090 for ; Thu, 6 Jul 2006 23:00:30 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66N0TFU056084 for perforce@freebsd.org; Thu, 6 Jul 2006 23:00:29 GMT (envelope-from bms@freebsd.org) Date: Thu, 6 Jul 2006 23:00:29 GMT Message-Id: <200607062300.k66N0TFU056084@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100811 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:00:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=100811 Change 100811 by bms@bms_montagne on 2006/07/06 22:59:50 Bring in compile options for mips32. Leave -save-temps enabled to allow us to more easily catch incorrect assembly inlining. Affected files ... .. //depot/projects/mips2/src/sys/conf/kern.mk#3 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/kern.mk#3 (text+ko) ==== @@ -82,11 +82,13 @@ .endif # -# For PowerPC we tell gcc to use floating point emulation. This avoids using -# floating point registers for integer operations which it has a tendency to do. +# For MIPS we also tell gcc to use floating point emulation. +# We also force a non-PIC kernel to be built (-mno-abicalls). # .if ${MACHINE_ARCH} == "mips" -CFLAGS+= -msoft-float +CFLAGS+= -msoft-float -mno-abicalls -mips32 +# XXX for debugging the build +CFLAGS+= -save-temps INLINE_LIMIT?= 15000 .endif From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:01:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 589DD16A4E1; Thu, 6 Jul 2006 23:01:32 +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 31FBA16A4DE for ; Thu, 6 Jul 2006 23:01:32 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E4B0F43D45 for ; Thu, 6 Jul 2006 23:01:31 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66N1VLs056205 for ; Thu, 6 Jul 2006 23:01:31 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66N1Vck056202 for perforce@freebsd.org; Thu, 6 Jul 2006 23:01:31 GMT (envelope-from bms@freebsd.org) Date: Thu, 6 Jul 2006 23:01:31 GMT Message-Id: <200607062301.k66N1Vck056202@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100812 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:01:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=100812 Change 100812 by bms@bms_montagne on 2006/07/06 23:00:30 Import linker script from earlier FreeBSD/mips work. Use the correct target for MIPS32. Affected files ... .. //depot/projects/mips2/src/sys/conf/ldscript.mips#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:01:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A5E6D16A609; Thu, 6 Jul 2006 23:01:32 +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 8082A16A5EC for ; Thu, 6 Jul 2006 23:01:32 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 51CB243D45 for ; Thu, 6 Jul 2006 23:01:32 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66N1WIu056211 for ; Thu, 6 Jul 2006 23:01:32 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66N1Vgf056208 for perforce@freebsd.org; Thu, 6 Jul 2006 23:01:31 GMT (envelope-from imp@freebsd.org) Date: Thu, 6 Jul 2006 23:01:31 GMT Message-Id: <200607062301.k66N1Vgf056208@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100813 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:01:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=100813 Change 100813 by imp@imp_lighthouse on 2006/07/06 23:00:51 Even when there's a timeout (especially?) you need to flush the cache properly. Why I didn't see this before now, I don't know. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#34 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#34 (text+ko) ==== @@ -568,6 +568,8 @@ // Not sure if there's a race here at fast baud rates // we need to worry about. WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_RXTDIS); + bus_dmamap_sync(atsc->dmatag, atsc->ping->map, + BUS_DMASYNC_POSTREAD); len = sc->sc_rxfifosz - RD4(&sc->sc_bas, PDC_RCR); for (i = 0; i < len; i++) uart_rx_put(sc, atsc->ping->buffer[i]); From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:03:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D285A16A4E1; Thu, 6 Jul 2006 23:03:35 +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 91EBD16A4DA for ; Thu, 6 Jul 2006 23:03:35 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 50F6B43D49 for ; Thu, 6 Jul 2006 23:03:35 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66N3Zuv058441 for ; Thu, 6 Jul 2006 23:03:35 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66N3YlD058438 for perforce@freebsd.org; Thu, 6 Jul 2006 23:03:34 GMT (envelope-from bms@freebsd.org) Date: Thu, 6 Jul 2006 23:03:34 GMT Message-Id: <200607062303.k66N3YlD058438@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100814 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:03:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=100814 Change 100814 by bms@bms_montagne on 2006/07/06 23:03:19 Cut kernel config down to the bare minimum for getting locore, pmap and uart up. Affected files ... .. //depot/projects/mips2/src/sys/mips/conf/QEMU#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/conf/QEMU#4 (text+ko) ==== @@ -15,55 +15,41 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/arm/conf/SIMICS,v 1.8 2005/10/04 14:39:33 cognet Exp $ +# $FreeBSD$ machine mips ident QEMU -options KERNPHYSADDR=0xc0000000 -options KERNVIRTADDR=0xc0000000 -options PHYSADDR=0xc0000000 +# Don't build any modules yet. +makeoptions MODULES_OVERRIDE="" + +options KERNPHYSADDR=0xc0000000 +options KERNVIRTADDR=0xc0000000 +options PHYSADDR=0xc0000000 include "../adm5120/std.adm5120" -#To statically compile in device wiring instead of /boot/device.hints + #hints "GENERIC.hints" #Default places to look for devices. makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols -#makeoptions CONF_CFLAGS=-mcpu=mips4k -#options DDB + +options DDB options KDB -options SCHED_4BSD #4BSD scheduler -options INET #InterNETworking -#options INET6 #IPv6 communications protocols -options FFS #Berkeley Fast Filesystem -options SOFTUPDATES #Enable FFS soft updates support -options UFS_ACL #Support for access control lists -options UFS_DIRHASH #Improve performance on big directories -options MD_ROOT #MD is a potential root device -options ROOTDEVNAME=\"ufs:md0\" -#options NFSCLIENT #Network Filesystem Client -#options NFSSERVER #Network Filesystem Server -#options NFS_ROOT #NFS usable as /, requires NFSCLIENT -#options MSDOSFS #MSDOS Filesystem -#options CD9660 #ISO 9660 Filesystem -#options PROCFS #Process filesystem (requires PSEUDOFS) -#options PSEUDOFS #Pseudo-filesystem framework -options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI -#options KTRACE #ktrace(1) support -#options SYSVSHM #SYSV-style shared memory -#options SYSVMSG #SYSV-style message queues -#options SYSVSEM #SYSV-style semaphores -options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions -options KBD_INSTALL_CDEV # install a CDEV entry in /dev +options SCHED_4BSD #4BSD scheduler +options INET #InterNETworking +options NFSCLIENT #Network Filesystem Client +options NFS_ROOT #NFS usable as /, requires NFSCLIENT +options PSEUDOFS #Pseudo-filesystem framework +options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions + +# Debugging for use in -current +#options INVARIANTS #Enable calls of extra sanity checking +#options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS +#options WITNESS #Enable checks to detect deadlocks and cycles +#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed + device genclock device loop device ether - -# Debugging for use in -current -#options INVARIANTS #Enable calls of extra sanity checking -#options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS -#options WITNESS #Enable checks to detect deadlocks and cycles -#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed - -device mem # Memory and kernel memory devices -device md +device mem +device md From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:05:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B19A416A4DE; Thu, 6 Jul 2006 23:05:38 +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 906D116A4DA for ; Thu, 6 Jul 2006 23:05:38 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 511D043D46 for ; Thu, 6 Jul 2006 23:05:38 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66N5cvl058562 for ; Thu, 6 Jul 2006 23:05:38 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66N5bGp058559 for perforce@freebsd.org; Thu, 6 Jul 2006 23:05:37 GMT (envelope-from bms@freebsd.org) Date: Thu, 6 Jul 2006 23:05:37 GMT Message-Id: <200607062305.k66N5bGp058559@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100815 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:05:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=100815 Change 100815 by bms@bms_montagne on 2006/07/06 23:04:42 Bring in stubs from old mips branch Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#2 (text+ko) ==== @@ -1,21 +1,21 @@ /*- - * Copyright (c) 2006 Fill this file and put your name here + * Copyright (c) 2002-2004 Juli Mallett * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer, - * without modification, immediately at the beginning of the file. - * 2. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT @@ -23,7 +23,217 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * + * $FreeBSD$ + */ + +#include "opt_ddb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef DDB +#include +#endif + +int cold = 1; +int clocks_running; + +static struct pcpu pcpu0; +struct pcpu *pcpup = &pcpu0; + +struct cpu_info cpu_info_store; + +struct kva_md_info kmi; + +vm_offset_t kstack0; + +void cpu_startup(void *); +SYSINIT(cpu, SI_SUB_CPU, SI_ORDER_FIRST, cpu_startup, NULL); + +void +mips_init(void) +{ + init_param2(physmem); + mips_cpu_init(); + pmap_bootstrap(); + + proc_linkup(&proc0, &ksegrp0, &thread0); + thread0.td_kstack = kstack0; + pcpu_init(pcpup, 0, sizeof(struct pcpu)); + pcpup->pc_curthread = &thread0; + cpu_thread_setup(curthread); + pcpup->pc_curpcb = curthread->td_pcb; + mutex_init(); +#ifdef DDB + kdb_init(); +#endif +} + +void +cpu_startup(void *dummy) +{ + cpu_identify(); + platform_identify(); + vm_ksubmap_init(&kmi); + bufinit(); + vm_pager_bufferinit(); +} + +/* Get current clock frequency for the given cpu id. */ +int +cpu_est_clockrate(int cpu_id, uint64_t *rate) +{ + return (ENXIO); +} + +void +cpu_halt(void) +{ + printf("Halting...\n"); + platform_halt(); +} + +void +cpu_idle(void) +{ + /* Insert code to halt (until next interrupt) for the idle loop */ +} + +void +cpu_reset(void) +{ + printf("Resetting...\n"); + platform_reset(); +} + +void +dumpsys(struct dumperinfo *dip) +{ +} + +/* + * Construct a PCB from a trapframe. This is called from kdb_trap() where + * we want to start a backtrace from the function that caused us to enter + * the debugger. We have the context in the trapframe, but base the trace + * on the PCB. The PCB doesn't have to be perfect, as long as it contains + * enough for a backtrace. */ +void +makectx(struct trapframe *tf, struct pcb *pcb) +{ + pcb->pcb_regs[PCB_REG_SR] = tf->tf_regs[TF_SR]; + pcb->pcb_regs[PCB_REG_RA] = tf->tf_regs[TF_RA]; + pcb->pcb_regs[PCB_REG_SP] = tf->tf_regs[TF_SP]; +} + + +int +get_mcontext(struct thread *td, mcontext_t *mcp, int clear_ret) +{ + return (0); +} + +int +set_mcontext(struct thread *td, const mcontext_t *mcp) +{ + return (0); +} + +int +fill_regs(struct thread *td, struct reg *regs) +{ + return (0); +} + +int +fill_dbregs(struct thread *td, struct dbreg *dbregs) +{ + return (0); +} + +int +fill_fpregs(struct thread *td, struct fpreg *fpregs) +{ + return (0); +} -#include -__FBSDID("$FreeBSD$"); +int +set_regs(struct thread *td, struct reg *regs) +{ + return (0); +} + +int +set_dbregs(struct thread *td, struct dbreg *dbregs) +{ + return (0); +} + +int +set_fpregs(struct thread *td, struct fpreg *fpregs) +{ + return (0); +} + +int +ptrace_set_pc(struct thread *td, u_long addr) +{ + return (0); +} + +int +ptrace_clear_single_step(struct thread *td) +{ + return (0); +} + +int +ptrace_single_step(struct thread *td) +{ + return (0); +} + +void +cpu_pcpu_init(struct pcpu *pcpu, int cpuid, size_t sz) +{ +} + +void +exec_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings) +{ +} + +intptr_t +casuptr(intptr_t *p, intptr_t old, intptr_t new) +{ + return (-1); +} From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:06:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C97B16A4E1; Thu, 6 Jul 2006 23:06:40 +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 5716A16A4DF for ; Thu, 6 Jul 2006 23:06:40 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F156D43D49 for ; Thu, 6 Jul 2006 23:06:39 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66N6dHZ058686 for ; Thu, 6 Jul 2006 23:06:39 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66N6dof058683 for perforce@freebsd.org; Thu, 6 Jul 2006 23:06:39 GMT (envelope-from bms@freebsd.org) Date: Thu, 6 Jul 2006 23:06:39 GMT Message-Id: <200607062306.k66N6dof058683@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100816 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:06:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=100816 Change 100816 by bms@bms_montagne on 2006/07/06 23:05:59 Add stubs for supervisor/user copy routines which haven't been implemented yet Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/support.S#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/support.S#2 (text+ko) ==== @@ -42,3 +42,21 @@ ENTRY(memmove) ENTRY(memset) ENTRY(user) +ENTRY(setjmp) +ENTRY(longjmp) + +ENTRY(subyte) +ENTRY(susword) +ENTRY(suswintr) +ENTRY(suword) +ENTRY(suword32) +ENTRY(suword64) + +ENTRY(fubyte) +ENTRY(fusword) +ENTRY(fuswintr) +ENTRY(fuword) +ENTRY(fuword32) + +ENTRY(copyin) +ENTRY(copyout) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:15:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ADD8916A4DF; Thu, 6 Jul 2006 23:15:52 +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 79D1816A4DA for ; Thu, 6 Jul 2006 23:15:52 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2852743D45 for ; Thu, 6 Jul 2006 23:15:52 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66NFq6q059084 for ; Thu, 6 Jul 2006 23:15:52 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66NFpr9059081 for perforce@freebsd.org; Thu, 6 Jul 2006 23:15:51 GMT (envelope-from bms@freebsd.org) Date: Thu, 6 Jul 2006 23:15:51 GMT Message-Id: <200607062315.k66NFpr9059081@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100817 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:15:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=100817 Change 100817 by bms@bms_montagne on 2006/07/06 23:15:12 Bring in definitions and low level support code from the old MIPS branch. This stuff is going to be needed to get DDB up and running which should be first priority apart from a serial driver and locore. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/_types.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/cache.h#1 add .. //depot/projects/mips2/src/sys/mips/include/cache_r4k.h#1 add .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#6 edit .. //depot/projects/mips2/src/sys/mips/include/cpuinfo.h#1 add .. //depot/projects/mips2/src/sys/mips/include/cpuregs.h#1 add .. //depot/projects/mips2/src/sys/mips/include/db_machdep.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/frame.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/kdb.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/locore.h#1 add .. //depot/projects/mips2/src/sys/mips/include/md_var.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/pcb.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/pcpu.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/pmap.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/pte.h#1 add .. //depot/projects/mips2/src/sys/mips/include/reg.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/regnum.h#1 add .. //depot/projects/mips2/src/sys/mips/include/tlb.h#1 add .. //depot/projects/mips2/src/sys/mips/include/trap.h#2 edit .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/pmap.c#2 edit .. //depot/projects/mips2/src/sys/mips/mips/trap.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/_types.h#2 (text+ko) ==== ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#6 (text+ko) ==== @@ -1,7 +1,5 @@ /*- - * Copyright (c) 2006 Olivier Houchard. - * Copyright (c) 1993 The Regents of the University of California. - * All rights reserved. + * Copyright (c) 2002-2004 Juli Mallett. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -11,14 +9,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) @@ -27,21 +22,39 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/cpufunc.h,v 1.148 2005/05/13 00:05:55 nectar Exp $ - */ - -/* - * Functions to provide access to special mips instructions. - * This in included in sys/systm.h, and that file should be - * used in preference to this. + * $FreeBSD$ */ #ifndef _MACHINE_CPUFUNC_H_ #define _MACHINE_CPUFUNC_H_ -static __inline register_t -intr_disable(void) +#ifdef _KERNEL + +#include +#include + +static __inline void +mips_barrier(void) +{ +<<<<<<< yours + __asm __volatile (".set noreorder\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + ".set reorder\n\t" + : : : "memory"); +} + +static __inline void +mips_tlbp(void) { + __asm __volatile ("tlbp"); + mips_barrier(); register_t ret; #if 0 register_t tmp; @@ -55,11 +68,18 @@ } static __inline void -intr_enable(void) +mips_tlbr(void) +{ + __asm __volatile ("tlbr"); + mips_barrier(); +} + +static __inline void +mips_tlbwi(void) { + __asm __volatile ("tlbwi"); + mips_barrier(); #if 0 - register_t tmp; - __asm __volatile("mfc %0, $12\n" /* MIPS_COP_0_STATUS */ "or %0, %0, $1\n" /* MIPS_SR_INT_IE */ "mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ @@ -68,23 +88,116 @@ } static __inline void -intr_restore(register_t flag) +mips_tlbwr(void) { + __asm __volatile ("tlbwr"); + mips_barrier(); +} +static __inline void +mips_wbflush(void) +{ + __asm __volatile ("sync" : : : "memory"); + mips_barrier(); #if 0 __asm __volatile("mtc0 %0, $12\n" /* MIPS_COP_0_STATUS */ : : "r" (flag)); #endif } -/* - * XXXMIPS: - */ +#define MIPS_RDRW64_COP0(n,r) \ +static __inline u_int64_t \ +mips_rd_ ## n (void) \ +{ \ + int v0; \ + __asm __volatile ("dmfc0 %[v0], $"__XSTRING(r)";" \ + : [v0] "=&r"(v0)); \ + mips_barrier(); \ + return (v0); \ +} \ +static __inline void \ +mips_wr_ ## n (u_int64_t a0) \ +{ \ + __asm __volatile ("dmtc0 %[a0], $"__XSTRING(r)";" \ + __XSTRING(COP0_SYNC)";" \ + "nop;" \ + "nop;" \ + : \ + : [a0] "r"(a0)); \ + mips_barrier(); \ +} struct __hack + +MIPS_RDRW64_COP0(entrylo0, MIPS_COP_0_TLB_LO0); +MIPS_RDRW64_COP0(entrylo1, MIPS_COP_0_TLB_LO1); +MIPS_RDRW64_COP0(entryhi, MIPS_COP_0_TLB_HI); +MIPS_RDRW64_COP0(pagemask, MIPS_COP_0_TLB_PG_MASK); +MIPS_RDRW64_COP0(xcontext, MIPS_COP_0_TLB_XCONTEXT); + +#undef MIPS_RDRW64_COP0 + +#define MIPS_RDRW32_COP0(n,r) \ +static __inline u_int32_t \ +mips_rd_ ## n (void) \ +{ \ + int v0; \ + __asm __volatile ("mfc0 %[v0], $"__XSTRING(r)";" \ + : [v0] "=&r"(v0)); \ + mips_barrier(); \ + return (v0); \ +} \ +static __inline void \ +mips_wr_ ## n (u_int32_t a0) \ +{ \ + __asm __volatile ("mtc0 %[a0], $"__XSTRING(r)";" \ + __XSTRING(COP0_SYNC)";" \ + "nop;" \ + "nop;" \ + : \ + : [a0] "r"(a0)); \ + mips_barrier(); \ +} struct __hack + +MIPS_RDRW32_COP0(compare, MIPS_COP_0_COMPARE); +MIPS_RDRW32_COP0(config, MIPS_COP_0_CONFIG); +MIPS_RDRW32_COP0(count, MIPS_COP_0_COUNT); +MIPS_RDRW32_COP0(index, MIPS_COP_0_TLB_INDEX); +MIPS_RDRW32_COP0(wired, MIPS_COP_0_TLB_WIRED); +MIPS_RDRW32_COP0(cause, MIPS_COP_0_CAUSE); +MIPS_RDRW32_COP0(status, MIPS_COP_0_STATUS); + +#undef MIPS_RDRW32_COP0 + +static __inline register_t +intr_disable(void) +{ + register_t s; + + s = mips_rd_status(); + mips_wr_status(s & ~MIPS_SR_IE); + + return (s); +} + +#define intr_restore(s) mips_wr_status((s)) + static __inline void breakpoint(void) { - __asm __volatile("break"); + __asm __volatile ("break"); +} + +static __inline void +mips_read_membar(void) +{ + /* Nil */ +} + +static __inline void +mips_write_membar(void) +{ + mips_wbflush(); } +#endif /* _KERNEL */ #endif /* !_MACHINE_CPUFUNC_H_ */ ==== //depot/projects/mips2/src/sys/mips/include/db_machdep.h#2 (text+ko) ==== @@ -1,94 +1,115 @@ -/*- - * Mach Operating System - * Copyright (c) 1991,1990 Carnegie Mellon University - * All Rights Reserved. +/* $NetBSD: db_machdep.h,v 1.14 2002/03/05 14:12:29 simonb Exp $ */ + +/* + * Copyright (c) 1997 Jonathan Stone (hereinafter referred to as the author) + * All rights reserved. * - * Permission to use, copy, modify and distribute this software and its - * documentation is hereby granted, provided that both the copyright - * notice and this permission notice appear in all copies of the - * software, derivative works or modified versions, and any portions - * thereof, and that both notices appear in supporting documentation. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by Jonathan Stone for + * the NetBSD Project. + * 4. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. * - * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" - * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR - * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. * - * Carnegie Mellon requests users of this software to return to - * - * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU - * School of Computer Science - * Carnegie Mellon University - * Pittsburgh PA 15213-3890 - * - * any improvements or extensions that they make and grant Carnegie Mellon - * the rights to redistribute these changes. - * - * $FreeBSD: src/sys/amd64/include/db_machdep.h,v 1.22 2005/01/05 20:17:20 imp Exp $ + * $FreeBSD$ */ +#ifndef _MIPS_DB_MACHDEP_H_ +#define _MIPS_DB_MACHDEP_H_ -#ifndef _MACHINE_DB_MACHDEP_H_ -#define _MACHINE_DB_MACHDEP_H_ - #include #include +#include /* register state */ +#include /* symbolic register indices */ -typedef vm_offset_t db_addr_t; /* address - unsigned */ + +#if 0 +typedef unsigned long db_addr_t; /* address - unsigned */ typedef long db_expr_t; /* expression - signed */ +#else +typedef unsigned int db_addr_t; /* address - unsigned */ +typedef int db_expr_t; /* expression - signed */ +#endif + +typedef struct frame db_regs_t; + +extern db_regs_t ddb_regs; /* register state */ + +#define PC_REGS() ((db_addr_t)ddb_regs.f_regs[PC]) + +#define PC_ADVANCE() do { \ + if ((db_get_value(ddb_regs.f_regs[PC], sizeof(int), FALSE) & \ + 0xfc00003f) == 0xd) \ + ddb_regs.f_regs[PC] += BKPT_SIZE; \ +} while(0) -#define PC_REGS() ((db_addr_t)kdb_thrctx->pcb_rip) +/* Similar to PC_ADVANCE(), except only advance on cpu_Debugger()'s bpt */ +#define PC_BREAK_ADVANCE() do { \ + if (db_get_value(ddb_regs.f_regs[PC], sizeof(int), FALSE) == 0xd) \ + ddb_regs.f_regs[PC] += BKPT_SIZE; \ +} while(0) -#define BKPT_INST 0xcc /* breakpoint instruction */ -#define BKPT_SIZE (1) /* size of breakpoint inst */ +#define BKPT_INST 0x0001000D +#define BKPT_SIZE (4) /* size of breakpoint inst */ #define BKPT_SET(inst) (BKPT_INST) -#define BKPT_SKIP \ -do { \ - kdb_frame->tf_rip += 1; \ - kdb_thrctx->pcb_rip += 1; \ -} while(0) +#define IS_BREAKPOINT_TRAP(type, code) ((type) == TrBp) +#define IS_WATCHPOINT_TRAP(type, code) (0) /* XXX mips3 watchpoint */ + +/* + * Interface to disassembly (shared with mdb) + */ +db_addr_t db_disasm_insn(int insn, db_addr_t loc, boolean_t altfmt); + -#define FIXUP_PC_AFTER_BREAK \ -do { \ - kdb_frame->tf_rip -= 1; \ - kdb_thrctx->pcb_rip -= 1; \ -} while(0); +/* + * Entrypoints to DDB for kernel, keyboard drivers, init hook + */ +void kdb_kbd_trap(db_regs_t *); +void db_set_ddb_regs(int type, struct trapframe *); +int kdbpeek(db_addr_t); -#define db_clear_single_step kdb_cpu_clear_singlestep -#define db_set_single_step kdb_cpu_set_singlestep +#define DB_SMALL_VALUE_MAX (0x7fffffff) +#define DB_SMALL_VALUE_MIN (-0x40001) -#define IS_BREAKPOINT_TRAP(type, code) ((type) == T_BPTFLT) /* - * Watchpoints are not supported. The debug exception type is in %dr6 - * and not yet in the args to this macro. + * MIPS cpus have no hardware single-step. */ -#define IS_WATCHPOINT_TRAP(type, code) 0 +#define SOFTWARE_SSTEP -#define I_CALL 0xe8 -#define I_CALLI 0xff -#define I_RET 0xc3 -#define I_IRET 0xcf +#define inst_trap_return(ins) ((ins)&0) -#define inst_trap_return(ins) (((ins)&0xff) == I_IRET) -#define inst_return(ins) (((ins)&0xff) == I_RET) -#define inst_call(ins) (((ins)&0xff) == I_CALL || \ - (((ins)&0xff) == I_CALLI && \ - ((ins)&0x3800) == 0x1000)) -#define inst_load(ins) 0 -#define inst_store(ins) 0 +boolean_t inst_branch(int inst); +boolean_t inst_call(int inst); +boolean_t inst_return(int inst); +boolean_t inst_load(int inst); +boolean_t inst_store(int inst); +boolean_t inst_unconditional_flow_transfer(int inst); +db_addr_t branch_taken(int inst, db_addr_t pc); +db_addr_t next_instr_address(db_addr_t pc, boolean_t bd); /* - * There no interesting addresses below _kstack = 0xefbfe000. There - * are small absolute values for GUPROF, but we don't want to see them. - * Treat "negative" addresses below _kstack as non-small to allow for - * future reductions of _kstack and to avoid sign extension problems. - * - * There is one interesting symbol above -db_maxoff = 0xffff0000, - * namely _APTD = 0xfffff000. Accepting this would mess up the - * printing of small negative offsets. The next largest symbol is - * _APTmap = 0xffc00000. Accepting this is OK (unless db_maxoff is - * set to >= 0x400000 - (max stack offset)). + * We have machine-dependent commands. */ -#define DB_SMALL_VALUE_MAX 0x7fffffff -#define DB_SMALL_VALUE_MIN (-0x400001) +#define DB_MACHINE_COMMANDS -#endif /* !_MACHINE_DB_MACHDEP_H_ */ +#endif /* _MIPS_DB_MACHDEP_H_ */ ==== //depot/projects/mips2/src/sys/mips/include/frame.h#2 (text+ko) ==== @@ -1,10 +1,5 @@ /*- - * Copyright (c) 2003 Peter Wemm. - * Copyright (c) 1990 The Regents of the University of California. - * All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * William Jolitz. + * Copyright (c) 2002-2004 Juli Mallett. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -14,14 +9,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) @@ -30,50 +22,63 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * from: @(#)frame.h 5.2 (Berkeley) 1/18/91 - * $FreeBSD: src/sys/amd64/include/frame.h,v 1.30 2005/12/22 22:16:05 jhb Exp $ + * $FreeBSD$ */ -#ifndef _MACHINE_FRAME_H_ -#define _MACHINE_FRAME_H_ 1 +#ifndef _MACHINE_FRAME_H_ +#define _MACHINE_FRAME_H_ + +#include /* - * System stack frames. + * trapframe argument passed to trap() */ -/* - * Exception/Trap Stack Frame - * - * The ordering of this is specifically so that we can take first 6 - * the syscall arguments directly from the beginning of the frame. - */ +#define TF_AST 0 +#define TF_V0 1 +#define TF_V1 2 +#define TF_A0 3 +#define TF_A1 4 +#define TF_A2 5 +#define TF_A3 6 +#define TF_T0 7 +#define TF_T1 8 +#define TF_T2 9 +#define TF_T3 10 + +#define TF_A4 11 +#define TF_A5 12 +#define TF_A6 13 +#define TF_A7 14 + +#define TF_TA0 11 +#define TF_TA1 12 +#define TF_TA2 13 +#define TF_TA3 14 + +#define TF_T8 15 +#define TF_T9 16 + +#define TF_RA 17 +#define TF_SR 18 +#define TF_MULLO 19 +#define TF_MULHI 20 +#define TF_EPC 21 /* may be changed by trap() call */ + +#define TF_SP 22 + +#define TF_NREGS 23 struct trapframe { - register_t tf_rdi; - register_t tf_rsi; - register_t tf_rdx; - register_t tf_rcx; - register_t tf_r8; - register_t tf_r9; - register_t tf_rax; - register_t tf_rbx; - register_t tf_rbp; - register_t tf_r10; - register_t tf_r11; - register_t tf_r12; - register_t tf_r13; - register_t tf_r14; - register_t tf_r15; - register_t tf_trapno; - register_t tf_addr; - register_t tf_flags; - /* below portion defined in hardware */ - register_t tf_err; - register_t tf_rip; - register_t tf_cs; - register_t tf_rflags; - register_t tf_rsp; - register_t tf_ss; + __register_t tf_regs[TF_NREGS]; + u_int32_t tf_ppl; /* previous priority level */ + int32_t tf_pad; /* for 8 byte aligned */ +}; + +struct frame { + __register_t f_regs[38]; + u_int32_t f_ppl; /* previous priority level */ + int32_t f_pad; /* for 8 byte aligned */ }; -#endif /* _MACHINE_FRAME_H_ */ +#endif /* !_MACHINE_FRAME_H_ */ ==== //depot/projects/mips2/src/sys/mips/include/kdb.h#2 (text+ko) ==== @@ -23,31 +23,26 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/kdb.h,v 1.3 2006/04/03 22:51:46 marcel Exp $ + * $FreeBSD: src/sys/alpha/include/kdb.h,v 1.2 2005/01/05 20:05:50 imp Exp $ */ #ifndef _MACHINE_KDB_H_ #define _MACHINE_KDB_H_ #include -#include - -#define KDB_STOPPEDPCB(pc) &stoppcbs[pc->pc_cpuid] static __inline void kdb_cpu_clear_singlestep(void) { - kdb_frame->tf_rflags &= ~PSL_T; } static __inline void kdb_cpu_set_singlestep(void) { - kdb_frame->tf_rflags |= PSL_T; } static __inline void -kdb_cpu_trap(int type, int code) +kdb_cpu_trap(int vector, int _) { } ==== //depot/projects/mips2/src/sys/mips/include/md_var.h#2 (text+ko) ==== @@ -1,6 +1,5 @@ /*- - * Copyright (c) 1995 Bruce D. Evans. - * All rights reserved. + * Copyright (c) 2003-2004 Juli Mallett. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -10,9 +9,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the author nor the names of contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE @@ -26,60 +22,25 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/md_var.h,v 1.77 2006/04/21 04:24:50 peter Exp $ + * $FreeBSD$ */ #ifndef _MACHINE_MD_VAR_H_ #define _MACHINE_MD_VAR_H_ -/* - * Miscellaneous machine-dependent declarations. - */ +extern vm_offset_t kstack0; +extern vm_paddr_t kstack0_phys; -extern long Maxmem; -extern u_int basemem; -extern int busdma_swi_pending; -extern u_int cpu_exthigh; -extern u_int cpu_feature; -extern u_int cpu_feature2; -extern u_int amd_feature; -extern u_int amd_feature2; -extern u_int cpu_fxsr; -extern u_int cpu_high; -extern u_int cpu_id; -extern u_int cpu_procinfo; -extern u_int cpu_procinfo2; -extern char cpu_vendor[]; -extern char kstack[]; -extern char sigcode[]; -extern int szsigcode; -extern uint64_t *vm_page_dump; -extern int vm_page_dump_size; +extern int mips_num_tlb_entries; -extern struct pcpu __pcpu[]; +extern int cpu_id; +extern int fpu_id; -typedef void alias_for_inthand_t(u_int cs, u_int ef, u_int esp, u_int ss); -struct thread; -struct reg; -struct fpreg; -struct dbreg; -struct dumperinfo; +void cpu_identify(void); +void mips_cpu_init(void); +void mips_init(void); -void busdma_swi(void); -void cpu_setregs(void); -void doreti_iret(void) __asm(__STRING(doreti_iret)); -void doreti_iret_fault(void) __asm(__STRING(doreti_iret_fault)); -void dump_add_page(vm_paddr_t); -void dump_drop_page(vm_paddr_t); -void initializecpu(void); -void fillw(int /*u_short*/ pat, void *base, size_t cnt); -void fpstate_drop(struct thread *td); -int is_physical_memory(vm_paddr_t addr); -int isa_nmi(int cd); -void pagecopy(void *from, void *to); -void pagezero(void *addr); -void setidt(int idx, alias_for_inthand_t *func, int typ, int dpl, int ist); -int user_dbreg_trap(void); -void minidumpsys(struct dumperinfo *); +/* Platform call-downs. */ +void platform_identify(void); #endif /* !_MACHINE_MD_VAR_H_ */ ==== //depot/projects/mips2/src/sys/mips/include/pcb.h#2 (text+ko) ==== @@ -1,10 +1,5 @@ /*- - * Copyright (c) 2003 Peter Wemm. - * Copyright (c) 1990 The Regents of the University of California. - * All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * William Jolitz. + * Copyright (c) 2003-2005 Juli Mallett. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -14,14 +9,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) @@ -30,56 +22,39 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * from: @(#)pcb.h 5.10 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/amd64/include/pcb.h,v 1.62 2005/09/27 21:11:35 peter Exp $ + * $FreeBSD$ */ -#ifndef _AMD64_PCB_H_ -#define _AMD64_PCB_H_ +#ifndef _MACHINE_PCB_H_ +#define _MACHINE_PCB_H_ + +#include /* - * AMD64 process control block + * Process Control Block. */ -#include - struct pcb { - register_t pcb_cr3; - register_t pcb_r15; - register_t pcb_r14; - register_t pcb_r13; - register_t pcb_r12; - register_t pcb_rbp; - register_t pcb_rsp; - register_t pcb_rbx; - register_t pcb_rip; - register_t pcb_fsbase; - register_t pcb_gsbase; - u_int32_t pcb_ds; - u_int32_t pcb_es; - u_int32_t pcb_fs; - u_int32_t pcb_gs; - u_int64_t pcb_dr0; - u_int64_t pcb_dr1; - u_int64_t pcb_dr2; - u_int64_t pcb_dr3; - u_int64_t pcb_dr6; - u_int64_t pcb_dr7; + __register_t pcb_regs[12]; +}; - struct savefpu pcb_save; - u_long pcb_flags; -#define PCB_DBREGS 0x02 /* process using debug registers */ -#define PCB_FPUINITDONE 0x08 /* fpu state is initialized */ -#define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */ -#define PCB_FULLCTX 0x80 /* full context restore on sysret */ +#define PCB_REG_S0 (0) +#define PCB_REG_S1 (1) +#define PCB_REG_S2 (2) +#define PCB_REG_S3 (3) +#define PCB_REG_S4 (4) +#define PCB_REG_S5 (5) +#define PCB_REG_S6 (6) +#define PCB_REG_S7 (7) +#define PCB_REG_S8 (8) +#define PCB_REG_SP (9) +#define PCB_REG_SR (10) +#define PCB_REG_RA (11) - caddr_t pcb_onfault; /* copyin/out fault recovery */ -}; - #ifdef _KERNEL -struct trapframe; +#define PCB_FSR(pcb) (0) void makectx(struct trapframe *, struct pcb *); -void savectx(struct pcb *); +int savectx(struct pcb *pcb); #endif -#endif /* _AMD64_PCB_H_ */ +#endif /* !_MACHINE_PCB_H_ */ ==== //depot/projects/mips2/src/sys/mips/include/pcpu.h#2 (text+ko) ==== @@ -1,4 +1,6 @@ /*- + * Copyright (c) 2002-2004 Juli Mallett + * Copyright (c) 1999 Luoqi Chen * Copyright (c) Peter Wemm * All rights reserved. * @@ -23,161 +25,27 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/pcpu.h,v 1.44 2005/03/11 22:16:09 peter Exp $ + * $FreeBSD$ */ -#ifndef _MACHINE_PCPU_H_ -#define _MACHINE_PCPU_H_ - -#ifndef _SYS_CDEFS_H_ -#error this file needs sys/cdefs.h as a prerequisite -#endif +#ifndef _MACHINE_PCPU_H_ +#define _MACHINE_PCPU_H_ #ifdef _KERNEL +#include -/* - * The SMP parts are setup in pmap.c and locore.s for the BSP, and - * mp_machdep.c sets up the data for the AP's to "see" when they awake. - * The reason for doing it via a struct is so that an array of pointers - * to each CPU's data can be set up for things like "check curproc on all - * other processors" - */ #define PCPU_MD_FIELDS \ - struct pcpu *pc_prvspace; /* Self-reference */ \ - struct pmap *pc_curpmap; \ - struct amd64tss *pc_tssp; \ - register_t pc_rsp0; \ - register_t pc_scratch_rsp; /* User %rsp in syscall */ \ - u_int pc_apic_id; \ - u_int pc_acpi_id /* ACPI CPU id */ + u_char pc_next_asid; /* next ASID to alloc */ \ + u_int pc_current_asidgen; /* ASID rollover check */ -#if defined(lint) - -extern struct pcpu *pcpup; - -#define PCPU_GET(member) (pcpup->pc_ ## member) -#define PCPU_PTR(member) (&pcpup->pc_ ## member) -#define PCPU_SET(member,value) (pcpup->pc_ ## member = (value)) - -#elif defined(__GNUCLIKE_ASM) && defined(__GNUCLIKE___TYPEOF) \ - && defined(__GNUCLIKE___OFFSETOF) +#define PCPUP (pcpup) -/* - * Evaluates to the byte offset of the per-cpu variable name. - */ -#define __pcpu_offset(name) \ - __offsetof(struct pcpu, name) +#define PCPU_GET(member) (PCPUP->pc_ ## member) +#define PCPU_PTR(member) (&PCPUP->pc_ ## member) +#define PCPU_SET(member,value) (PCPUP->pc_ ## member = (value)) -/* - * Evaluates to the type of the per-cpu variable name. - */ -#define __pcpu_type(name) \ - __typeof(((struct pcpu *)0)->name) - -/* - * Evaluates to the address of the per-cpu variable name. - */ -#define __PCPU_PTR(name) __extension__ ({ \ - __pcpu_type(name) *__p; \ - \ - __asm __volatile("movq %%gs:%1,%0; addq %2,%0" \ - : "=r" (__p) \ - : "m" (*(struct pcpu *)(__pcpu_offset(pc_prvspace))), \ - "i" (__pcpu_offset(name))); \ - \ - __p; \ -}) - -/* - * Evaluates to the value of the per-cpu variable name. - */ -#define __PCPU_GET(name) __extension__ ({ \ - __pcpu_type(name) __result; \ - \ - if (sizeof(__result) == 1) { \ - u_char __b; \ - __asm __volatile("movb %%gs:%1,%0" \ - : "=r" (__b) \ - : "m" (*(u_char *)(__pcpu_offset(name)))); \ - __result = *(__pcpu_type(name) *)&__b; \ - } else if (sizeof(__result) == 2) { \ - u_short __w; \ - __asm __volatile("movw %%gs:%1,%0" \ - : "=r" (__w) \ - : "m" (*(u_short *)(__pcpu_offset(name)))); \ - __result = *(__pcpu_type(name) *)&__w; \ - } else if (sizeof(__result) == 4) { \ - u_int __i; \ - __asm __volatile("movl %%gs:%1,%0" \ - : "=r" (__i) \ - : "m" (*(u_int *)(__pcpu_offset(name)))); \ - __result = *(__pcpu_type(name) *)&__i; \ - } else if (sizeof(__result) == 8) { \ - u_long __l; \ - __asm __volatile("movq %%gs:%1,%0" \ - : "=r" (__l) \ - : "m" (*(u_long *)(__pcpu_offset(name)))); \ - __result = *(__pcpu_type(name) *)&__l; \ - } else { \ - __result = *__PCPU_PTR(name); \ - } \ - \ - __result; \ -}) - -/* - * Sets the value of the per-cpu variable name to value val. - */ -#define __PCPU_SET(name, val) { \ - __pcpu_type(name) __val = (val); \ - \ - if (sizeof(__val) == 1) { \ - u_char __b; \ - __b = *(u_char *)&__val; \ - __asm __volatile("movb %1,%%gs:%0" \ - : "=m" (*(u_char *)(__pcpu_offset(name))) \ - : "r" (__b)); \ - } else if (sizeof(__val) == 2) { \ - u_short __w; \ - __w = *(u_short *)&__val; \ - __asm __volatile("movw %1,%%gs:%0" \ - : "=m" (*(u_short *)(__pcpu_offset(name))) \ - : "r" (__w)); \ - } else if (sizeof(__val) == 4) { \ - u_int __i; \ - __i = *(u_int *)&__val; \ - __asm __volatile("movl %1,%%gs:%0" \ - : "=m" (*(u_int *)(__pcpu_offset(name))) \ - : "r" (__i)); \ - } else if (sizeof(__val) == 8) { \ - u_long __l; \ - __l = *(u_long *)&__val; \ - __asm __volatile("movq %1,%%gs:%0" \ - : "=m" (*(u_long *)(__pcpu_offset(name))) \ - : "r" (__l)); \ - } else { \ - *__PCPU_PTR(name) = __val; \ - } \ -} +extern struct pcpu *pcpup; -#define PCPU_GET(member) __PCPU_GET(pc_ ## member) -#define PCPU_PTR(member) __PCPU_PTR(pc_ ## member) -#define PCPU_SET(member, val) __PCPU_SET(pc_ ## member, val) - -static __inline struct thread * -__curthread(void) -{ - struct thread *td; - - __asm __volatile("movq %%gs:0,%0" : "=r" (td)); - return (td); -} -#define curthread (__curthread()) - >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:16:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BA87516A4E0; Thu, 6 Jul 2006 23:16:54 +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 95B6116A4DE for ; Thu, 6 Jul 2006 23:16:54 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4951A43D45 for ; Thu, 6 Jul 2006 23:16:54 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66NGskg059175 for ; Thu, 6 Jul 2006 23:16:54 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66NGs6m059172 for perforce@freebsd.org; Thu, 6 Jul 2006 23:16:54 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 6 Jul 2006 23:16:54 GMT Message-Id: <200607062316.k66NGs6m059172@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 100818 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:16:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=100818 Change 100818 by gabor@gabor_spitfire on 2006/07/06 23:15:51 USE_LDCONFIG and INSTALL_SHLIB should also work with DESTDIR now. This still needs a thorough testing, however and might be refined later. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#11 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#11 (text+ko) ==== @@ -1342,17 +1342,25 @@ PREFIX?= ${LOCALBASE_REL} .endif -### FIXME: ldconfig in DESTDIR - .if defined(USE_LINUX_PREFIX) -LDCONFIG_CMD?= ${LINUXBASE}/sbin/ldconfig -r ${LINUXBASE} +.if !defined(DESTDIR) +LDCONFIG_CMD?= ${LINUXBASE_REL}/sbin/ldconfig -r ${LINUXBASE_REL} +.else +LDCONFIG_CMD?= ${CHROOT} ${DESTDIR} ${LINUXBASE_REL}/sbin/ldconfig -r ${LINUXBASE_REL} +.endif LDCONFIG_PLIST_EXEC_CMD?= ${LDCONFIG_CMD} LDCONFIG_PLIST_UNEXEC_CMD?= ${LDCONFIG_CMD} .else -LDCONFIG_CMD?= ${LDCONFIG} -m ${LDCONFIG_RUNLIST} +.if !defined(DESTDIR) +LDCONFIG_CMD?= ${LDCONFIG} -m ${LDCONFIG_RUNLIST} LDCONFIG_PLIST_EXEC_CMD?= ${LDCONFIG} -m ${LDCONFIG_PLIST} LDCONFIG_PLIST_UNEXEC_CMD?= ${LDCONFIG} -R +.else +LDCONFIG_CMD?= ${CHROOT} ${DESTDIR} ${LDCONFIG} -m ${LDCONFIG_RUNLIST} +LDCONFIG_PLIST_EXEC_CMD?= ${CHROOT} ${DESTDIR} ${LDCONFIG} -m ${LDCONFIG_PLIST} +LDCONFIG_PLIST_UNEXEC_CMD?= ${CHROOT} ${DESTDIR} ${LDCONFIG} -R .endif +.endif PKGCOMPATDIR?= ${LOCALBASE}/lib/compat/pkg @@ -2891,8 +2899,6 @@ # Put this as far down as possible so it will catch all PLIST_SUB definitions. -### FIXME: ldconfig in DESTDIR - .if defined(INSTALLS_SHLIB) LDCONFIG_DIRS?= %%PREFIX%%/lib LDCONFIG_PLIST!= ${ECHO_CMD} ${LDCONFIG_DIRS} | ${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} @@ -3740,10 +3746,18 @@ .if defined(USE_LDCONFIG) .if !defined(INSTALL_AS_USER) @${ECHO_MSG} "===> Running ldconfig" +.if !defined(DESTDIR) ${LDCONFIG} -m ${USE_LDCONFIG} .else + ${CHROOT} ${DESTDIR} ${LDCONFIG} -m ${USE_LDCONFIG} +.endif +.else @${ECHO_MSG} "===> Running ldconfig (errors are ignored)" +.if !defined(DESTDIR) -${LDCONFIG} -m ${USE_LDCONFIG} +.else + ${CHROOT} ${DESTDIR} -${LDCONFIG} -m ${USE_LDCONFIG} +.endif .endif .if ${USE_LDCONFIG:L} != "${PREFIX}/lib" @${ECHO_MSG} "===> Installing ldconfig configuration file" @@ -3761,10 +3775,18 @@ .if defined(USE_LDCONFIG32) .if !defined(INSTALL_AS_USER) @${ECHO_MSG} "===> Running ldconfig" +.if !defined(DESTDIR) ${LDCONFIG} -32 -m ${USE_LDCONFIG32} .else + ${CHROOT} ${DESTDIR} ${LDCONFIG} -32 -m ${USE_LDCONFIG32} +.endif +.else @${ECHO_MSG} "===> Running ldconfig (errors are ignored)" +.if !defined(DESTDIR) -${LDCONFIG} -32 -m ${USE_LDCONFIG32} +.else + ${CHROOT} ${DESTDIR} -${LDCONFIG} -32 -m ${USE_LDCONFIG32} +.endif .endif @${ECHO_MSG} "===> Installing 32-bit ldconfig configuration file" .if defined(NO_LDCONFIG_MTREE) From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:18:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CC3C216A4E0; Thu, 6 Jul 2006 23:18:57 +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 90BA016A4DE for ; Thu, 6 Jul 2006 23:18:57 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4F6A543D46 for ; Thu, 6 Jul 2006 23:18:57 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66NIvIh059278 for ; Thu, 6 Jul 2006 23:18:57 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66NIvHh059275 for perforce@freebsd.org; Thu, 6 Jul 2006 23:18:57 GMT (envelope-from bms@freebsd.org) Date: Thu, 6 Jul 2006 23:18:57 GMT Message-Id: <200607062318.k66NIvHh059275@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100819 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:18:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=100819 Change 100819 by bms@bms_montagne on 2006/07/06 23:17:58 typo Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#7 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#7 (text+ko) ==== @@ -36,7 +36,6 @@ static __inline void mips_barrier(void) { -<<<<<<< yours __asm __volatile (".set noreorder\n\t" "nop\n\t" "nop\n\t" From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:22:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F33BA16A4E0; Thu, 6 Jul 2006 23:22:01 +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 B78B516A4DE for ; Thu, 6 Jul 2006 23:22:01 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7570543D4C for ; Thu, 6 Jul 2006 23:22:01 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66NM1or059468 for ; Thu, 6 Jul 2006 23:22:01 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66NM1HB059465 for perforce@freebsd.org; Thu, 6 Jul 2006 23:22:01 GMT (envelope-from bms@freebsd.org) Date: Thu, 6 Jul 2006 23:22:01 GMT Message-Id: <200607062322.k66NM1HB059465@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100820 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:22:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=100820 Change 100820 by bms@bms_montagne on 2006/07/06 23:21:22 add omitted file Affected files ... .. //depot/projects/mips2/src/sys/mips/include/hwfunc.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jul 6 23:25:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 183F416A4E2; Thu, 6 Jul 2006 23:25:06 +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 E94B616A4E0 for ; Thu, 6 Jul 2006 23:25:05 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AD85E43D46 for ; Thu, 6 Jul 2006 23:25:05 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k66NP5X9059603 for ; Thu, 6 Jul 2006 23:25:05 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k66NP5fT059600 for perforce@freebsd.org; Thu, 6 Jul 2006 23:25:05 GMT (envelope-from wkoszek@FreeBSD.org) Date: Thu, 6 Jul 2006 23:25:05 GMT Message-Id: <200607062325.k66NP5fT059600@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100821 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Jul 2006 23:25:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=100821 Change 100821 by wkoszek@wkoszek_laptop on 2006/07/06 23:24:26 Since now mips_tlbp() is void. It doesn't return ret also. Comment both after bms@ changes. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#8 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#8 (text+ko) ==== @@ -54,16 +54,16 @@ { __asm __volatile ("tlbp"); mips_barrier(); +#if 0 register_t ret; -#if 0 register_t tmp; __asm __volatile("mfc0 %0, $12\n" /* MIPS_COP_0_STATUS */ "and %1, %0, $~1\n" /* MIPS_SR_INT_IE */ "mtc0 %1, $12\n" /* MIPS_COP_0_STATUS */ : "=r" (ret), "=r" (tmp)); + return (ret); #endif - return (ret); } static __inline void From owner-p4-projects@FreeBSD.ORG Fri Jul 7 00:00:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C13EB16A4E1; Fri, 7 Jul 2006 00:00:52 +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 9D33816A4DA for ; Fri, 7 Jul 2006 00:00:52 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6C9FB43D46 for ; Fri, 7 Jul 2006 00:00:52 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6700qG8061274 for ; Fri, 7 Jul 2006 00:00:52 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6700qSM061271 for perforce@freebsd.org; Fri, 7 Jul 2006 00:00:52 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 00:00:52 GMT Message-Id: <200607070000.k6700qSM061271@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100825 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 00:00:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=100825 Change 100825 by wkoszek@wkoszek_laptop on 2006/07/07 00:00:33 Add stubs to db_trace.c Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/db_trace.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/db_trace.c#2 (text+ko) ==== @@ -27,3 +27,58 @@ #include __FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if 0 +static void +db_stack_trace_cmd(db_expr_t addr, db_expr_t count) +{ +} +#endif + +void +db_md_list_watchpoints() +{ +} + +int +db_md_clr_watchpoint(db_expr_t addr, db_expr_t size) +{ + return (0); +} + +int +db_md_set_watchpoint(db_expr_t addr, db_expr_t size) +{ + return (0); +} + +int +db_trace_thread(struct thread *thr, int count) +{ + return (0); +} + +void +db_trace_self(void) +{ + db_trace_thread(curthread, -1); +} + +void +stack_save(struct stack *st) +{ +} From owner-p4-projects@FreeBSD.ORG Fri Jul 7 01:35:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C3E6916A4E0; Fri, 7 Jul 2006 01:35:52 +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 9E14216A4DE for ; Fri, 7 Jul 2006 01:35:52 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F46443D46 for ; Fri, 7 Jul 2006 01:35:51 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k671ZpU6075487 for ; Fri, 7 Jul 2006 01:35:51 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k671ZoDg075484 for perforce@freebsd.org; Fri, 7 Jul 2006 01:35:50 GMT (envelope-from imp@freebsd.org) Date: Fri, 7 Jul 2006 01:35:50 GMT Message-Id: <200607070135.k671ZoDg075484@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100827 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 01:35:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=100827 Change 100827 by imp@imp_lighthouse on 2006/07/07 01:35:16 Start of a driver for the TC (Time Counter) device. This oddball little unit won't be used much in TCS's application, so most of the driver will be #ifdef TSC for our high-precision timecounter. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91.c#18 edit .. //depot/projects/arm/src/sys/arm/at91/at91_tc.c#1 add .. //depot/projects/arm/src/sys/arm/at91/at91_tcreg.h#1 add .. //depot/projects/arm/src/sys/arm/at91/files.at91#8 edit .. //depot/projects/arm/src/sys/arm/conf/TSC4370#2 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91.c#18 (text+ko) ==== ==== //depot/projects/arm/src/sys/arm/at91/files.at91#8 (text) ==== @@ -9,6 +9,7 @@ arm/at91/at91_rtc.c standard arm/at91/at91_ssc.c optional at91_ssc arm/at91/at91_spi.c optional at91_spi +arm/at91/at91_tc.c optional at91_tc arm/at91/at91_twi.c optional at91_twi arm/at91/at91_udp.c optional at91_udp arm/at91/if_ate.c optional ate ==== //depot/projects/arm/src/sys/arm/conf/TSC4370#2 (text+ko) ==== @@ -95,9 +95,10 @@ device mem # Memory and kernel memory devices device md -device at91_twi # TWI: Two Wire Interface +device at91_twi # TWI: Two Wire Interface device at91_spi # SPI: device at91_ssc +device at91_tc # iic device iic device iicbus From owner-p4-projects@FreeBSD.ORG Fri Jul 7 02:18:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9035316A4DF; Fri, 7 Jul 2006 02:18:46 +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 49DFF16A4DA for ; Fri, 7 Jul 2006 02:18:46 +0000 (UTC) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CB89F43D49 for ; Fri, 7 Jul 2006 02:18:45 +0000 (GMT) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k672IjuD079146 for ; Fri, 7 Jul 2006 02:18:45 GMT (envelope-from swhitman@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k672IjrU079142 for perforce@freebsd.org; Fri, 7 Jul 2006 02:18:45 GMT (envelope-from swhitman@FreeBSD.org) Date: Fri, 7 Jul 2006 02:18:45 GMT Message-Id: <200607070218.k672IjrU079142@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swhitman@FreeBSD.org using -f From: Spencer Whitman To: Perforce Change Reviews Cc: Subject: PERFORCE change 100829 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 02:18:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=100829 Change 100829 by swhitman@swhitman_joethecat on 2006/07/07 02:18:24 More commenting and debugging. Started the #define macro function. Affected files ... .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#7 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#8 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.h#6 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#6 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/string.c#6 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/test.c#5 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/test.h#1 add Differences ... ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#7 (text+ko) ==== @@ -47,11 +47,14 @@ static TAILQ_HEAD(,iarg) iarg = TAILQ_HEAD_INITIALIZER(iarg); static void cppfile(struct h *h, struct ref *r); -static void cpp_expand(struct cppfilestate *cfs, struct ref *r, const char *s, const char *e); +static void cpp_expand(struct cppfilestate *cfs, struct ref *r, + const char *s, const char *e); -typedef void (cpp_func)(struct cppfilestate *, const char *, const char *, const char *); +typedef void (cpp_func)(struct cppfilestate *, const char *, const char *, + const char *); -#define CPP_ARGS struct cppfilestate *cfs __unused, const char *h __unused, const char *b __unused, const char *e __unused +#define CPP_ARGS struct cppfilestate *cfs __unused, const char *h __unused, \ + const char *b __unused, const char *e __unused const char *mag_line, *mag_file; @@ -153,7 +156,6 @@ if (s == e) return; D(0x10, "expand <%V>\n", String(s, e)); - /* XXX HERE */ Lexer(cfs->h->tokens, s, e); } @@ -219,6 +221,14 @@ } static void +cpp_define(CPP_ARGS) +{ + /* struct cppfilestate *cfs __unused, const char *h __unused, + const char *b __unused, const char *e __unused */ + printf("#define of %V\n",String(b,e)); +} + +static void cppchunk(struct cppfilestate *cfs, const char *s, const char *e) { /* NOTE: cfs-> is uninitalized for first call to cppchunk */ @@ -227,7 +237,6 @@ return; } if (cfs->s != NULL) - /* XXX HERE */ cpp_expand(cfs, cfs->r, cfs->s, cfs->e); cfs->s = s; cfs->e = e; @@ -239,12 +248,12 @@ unsigned l; /* Length of key word */ cpp_func *func; } cpp_kw[] = { - { "define", 0, NULL }, + { "define", 0, cpp_define }, { "error", 0, cpp_error }, { "include", 0, cpp_include }, { "pragma", 0, cpp_pragma }, { "warning", 0, cpp_warning }, - { NULL, 0, NULL } + { NULL, 0, NULL } }; static void @@ -268,18 +277,20 @@ * pointing to a preparser function... */ if (p >= e || *p != '#') { - /* XXX off from cppfilestate is only used here and will always be - true */ + /* XXX "off" from cppfilestate is only used here so this will + always be true */ if (!cfs->off) - /* XXX HERE */ cppchunk(cfs, s, e); + return; } cppchunk(cfs, NULL, NULL); + /* We must be looking at a preparcessor macro */ assert(*p == '#'); cfs->hash = s; + /* Ignore unwanted whitespace */ p = skipspace(cfs, p + 1, e); e = trimspace(p, e); if (p == e) { @@ -288,6 +299,8 @@ } D(1, "line <%V>\n", String(p, e)); + + /* Scan thru the preprocessor keywords */ for (kw = cpp_kw; kw->q != NULL; kw++) { if (*p < *kw->q) break; @@ -298,11 +311,13 @@ if (memcmp(kw->q, p, kw->l)) continue; p += kw->l; + /* If it exists, execute cpp function */ if (kw->func != NULL) - kw->func(cfs, cfs->hash, p, e); + kw->func(cfs, cfs->hash, p, e); cfs->hash = NULL; return; } + cfs->hash = NULL; if (isdigit(p[0])) /* Ignore "# %d \"%s\" */ return; @@ -343,7 +358,6 @@ } if (q == e) { - /* XXX HERE */ cppline(&cfs, p, q); break; } @@ -402,7 +416,8 @@ h->r->sf = LoadFile(filename); /* set the head refrence s struct to that of the sourcefile's */ h->r->s = h->r->sf->s; + /* Preprocess the file */ cppfile(h, h->r); - /* XXX HERE */ + /* Add acumulated tokens to the lexer */ Lexer(h->tokens, NULL, NULL); } ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#8 (text+ko) ==== @@ -1,3 +1,4 @@ +#include #include #include @@ -9,7 +10,6 @@ #include #include #include -#include #include "k.h" @@ -179,7 +179,6 @@ } else errx(1, "Unknown filename suffix %Q", p); - /* XXX HERE */ Cpp(hf, argv[ch]); if (0) ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.h#6 (text+ko) ==== @@ -34,12 +34,12 @@ struct token { - unsigned tok; - const char *b, *e; - TAILQ_ENTRY(token) list; - const char *name; - struct symbol *sym; - struct token *chain; + unsigned tok; + const char *b, *e; /* pointers to token in original file */ + TAILQ_ENTRY(token) list; + const char *name; + struct symbol *sym; + struct token *chain; }; TAILQ_HEAD(tokenhead, token); ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#6 (text+ko) ==== @@ -1,4 +1,4 @@ -#include + #include #include #include @@ -62,6 +62,8 @@ t->tok = tok; t->b = b; t->e = e; + + /* Add this token to the token list */ if (tok == CSTR) { tt = TAILQ_LAST(&ts->tokens, tokenhead); if (tt != NULL && tt->tok == CSTR) { @@ -111,6 +113,7 @@ if (*ptr != '.') { /* Integer part */ if (*ptr == '0' && + /* Hex, use base 16 */ (ptr[1] == 'x' || ptr[1] == 'X') && isxdigit(ptr[2])) { ptr += 2; @@ -145,31 +148,36 @@ static const char * un_hash(const char *s, const char *e) { - const char *r; - char *p, *q; - int same = 1; - - q = p = malloc(1 + (e - s)); - assert(p != 0); - while (s < e) { - if (isspace(*s) || *s == '#') { - for (r = s; r < e && isspace(*r); r++) - continue; - if (r + 1 < e && *r == '#' && r[1] == '#') { - r += 2; - for (; r < e && isspace(*r); r++) - continue; - s = r; - same = 0; - } - } - *q++ = *s++; - } - *q = '\0'; - if (!same) - return (p); - free(p); - return (NULL); + const char *r; + char *p; /*, *q;*/ /* XXX Q seems unneccessary (just a memory leak) */ + int same = 1; + + /*q =*/ p = malloc(1 + (e - s)); + assert(p != 0); + + while (s < e) { + /* XXX Isn't stdc only one '#' ? */ + if (isspace(*s) || *s == '#') { + /* Skip the begining space */ + for (r = s; r < e && isspace(*r); r++) + continue; + /* If r is not at the end, and points to "##..." */ + if (r + 1 < e && *r == '#' && r[1] == '#') { + r += 2; + /* Skip spaces */ + for (; r < e && isspace(*r); r++) + continue; + s = r; + same = 0; + } + } + /**q++ = */ *s++; + } + /* *q = '\0'; */ + if (!same) + return (p); + free(p); + return (NULL); } void @@ -184,38 +192,50 @@ unsigned tok; struct token *t; + /* If there is no begining of the file, add whatever tokens we have so far */ if (b == NULL) { - /* XXX HERE */ add_token(ts, EOI, NULL, NULL); return; } + + /* Make sure e is well formed */ if (e == NULL) e = strchr(b, '\0'); assert(e != NULL); + if (1) { printf("LEX1 %V\n", String(b, e)); } + p = un_hash(b, e); if (p != NULL) { + /* There were spaces and/or ##s, skip ahead of them */ b = p; e = strchr(b, '\0'); assert(e != NULL); } + /* XXX The above doesn't seem to do anything? */ if (1) { printf("LEX2 %V\n", String(b, e)); } + + /* Lex everything */ while (b < e) { switch(*b) { - case '\n': case '\r': case '\v': case '\f': + case '\n': case '\r': case '\v': case '\f': case '\t': case ' ': + /* If newline, return, ?, ?, tab, or space move to the next char */ b++; continue; + case '\\': + /* Only continue if "\" is followed by "\n" */ if (b[1] == '\n') { b += 2; continue; } - break; + break; /* XXX Should this break here? I don't understand this case */ + case '/': if (b[1] == '*') { /* Ignore comments */ @@ -230,18 +250,18 @@ if (b[1] == '/') errx(1, "// comment"); break; - case '\t': - case ' ': - b++; - continue; + case '\'': + /* Add a char */ if (b[1] != '\\' && b[2] == '\'') { t = add_token(ts, CNUM, b, b + 3); t->name = String(b, b + 3); b += 3; continue; } + if (b[1] == '\\') { + /* Determine if it is a valid '\something' char */ i = BackSlash(b + 2, &p); if (i >= 0 && *p == '\'') { p++; @@ -252,32 +272,41 @@ } } break; + case '"': + /* Add a string */ s = StringEnd(b, e); assert(s != NULL); printf("Lex: \"%V\"\n", String(b, s)); t = add_token(ts, CSTR, b, s); b = s; continue; + case '#': + /* XXX Not quite sure what this case does */ printf("# %V\n", String(b, e)); u = strtoul(b + 1, &q, 0); if (q == NULL) errx(1, "Preproc b鴕k1"); + /* Skip whitespace and if char is >= LOW_TOKEN */ while (isspace(*q) && !isvert(*q)) q++; + if (*q != '"') printf("Preproc b鴕k2 (%02x) %V\n", *q, String(b, e)); + s = StringEnd(q, e); posf = String(q, s); while (s < e && !isvert(*s)) s++; b = s; continue; + case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': + /* Find the end of this number, and add it to the list */ s = NumberEnd(b); if (s != NULL) { t = add_token(ts, CNUM, b, s); @@ -286,15 +315,21 @@ continue; } break; + default: break; - } + } /* switch(*b) */ + tok = fixed_token(b, &s); + + /* If we saw normal token (?) add it to the list */ if (tok > 0) { t = add_token(ts, tok, b, s); b = s; continue; } + + /* Add this token to the end of the ident1 (XXX Not sure what that is) */ if (isident1(b[0])) { for (p = b + 1; isident(*p); p++) continue; @@ -303,6 +338,8 @@ b += (p - b); continue; } + + /* Failed to recognize what we saw, so exit */ strncpy(buf, b, 20); printf("Unknown: >>>>%V\n", buf); exit (0); ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/string.c#6 (text+ko) ==== @@ -199,6 +199,7 @@ int i; const char *p, *s; + /* Return the address of the end of the string */ for (p = ptr + 1; p < ep;) { if (*p == '"') return (p + 1); ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/test.c#5 (text+ko) ==== @@ -1,4 +1,4 @@ - +#include "test.h" int main(int argc, char **argv) From owner-p4-projects@FreeBSD.ORG Fri Jul 7 04:37:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AB6D916A4EB; Fri, 7 Jul 2006 04:37:52 +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 68ECE16A4E9 for ; Fri, 7 Jul 2006 04:37:52 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C7DB943D49 for ; Fri, 7 Jul 2006 04:37:51 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k674bpRC093328 for ; Fri, 7 Jul 2006 04:37:51 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k674blcu093323 for perforce@freebsd.org; Fri, 7 Jul 2006 04:37:47 GMT (envelope-from marcel@freebsd.org) Date: Fri, 7 Jul 2006 04:37:47 GMT Message-Id: <200607070437.k674blcu093323@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 100837 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 04:37:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=100837 Change 100837 by marcel@marcel_nfs on 2006/07/07 04:37:24 IFC @100834 Affected files ... .. //depot/projects/busdma/Makefile#3 integrate .. //depot/projects/busdma/amd64/amd64/pmap.c#3 integrate .. //depot/projects/busdma/amd64/conf/GENERIC#4 integrate .. //depot/projects/busdma/amd64/conf/NOTES#4 integrate .. //depot/projects/busdma/amd64/linux32/linux32_proto.h#4 integrate .. //depot/projects/busdma/amd64/linux32/linux32_syscall.h#4 integrate .. //depot/projects/busdma/amd64/linux32/linux32_sysent.c#4 integrate .. //depot/projects/busdma/amd64/linux32/syscalls.master#4 integrate .. //depot/projects/busdma/arm/arm/elf_trampoline.c#3 integrate .. //depot/projects/busdma/arm/at91/at91_pio.c#2 integrate .. //depot/projects/busdma/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/busdma/arm/at91/at91_piovar.h#1 branch .. //depot/projects/busdma/arm/at91/files.at91#2 integrate .. //depot/projects/busdma/arm/at91/uart_dev_at91usart.c#3 integrate .. //depot/projects/busdma/bsm/audit_kevents.h#2 integrate .. //depot/projects/busdma/bsm/audit_record.h#3 integrate .. //depot/projects/busdma/cam/cam_xpt.c#3 integrate .. //depot/projects/busdma/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/busdma/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/busdma/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/busdma/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/busdma/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/busdma/compat/linprocfs/linprocfs.c#4 integrate .. //depot/projects/busdma/compat/linux/linux_ioctl.c#3 integrate .. //depot/projects/busdma/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/busdma/compat/linux/linux_misc.c#3 integrate .. //depot/projects/busdma/compat/linux/linux_util.h#3 integrate .. //depot/projects/busdma/compat/ndis/kern_ndis.c#2 integrate .. //depot/projects/busdma/compat/svr4/Makefile#2 integrate .. //depot/projects/busdma/compat/svr4/svr4_ipc.c#2 integrate .. //depot/projects/busdma/compat/svr4/svr4_misc.c#2 integrate .. //depot/projects/busdma/compat/svr4/svr4_proto.h#2 integrate .. //depot/projects/busdma/compat/svr4/svr4_syscall.h#2 integrate .. //depot/projects/busdma/compat/svr4/svr4_syscallnames.c#2 integrate .. //depot/projects/busdma/compat/svr4/svr4_sysent.c#2 integrate .. //depot/projects/busdma/compat/svr4/syscalls.master#2 integrate .. //depot/projects/busdma/conf/NOTES#4 integrate .. //depot/projects/busdma/conf/files#4 integrate .. //depot/projects/busdma/conf/files.amd64#4 integrate .. //depot/projects/busdma/conf/files.i386#4 integrate .. //depot/projects/busdma/conf/files.ia64#2 integrate .. //depot/projects/busdma/conf/kern.mk#4 integrate .. //depot/projects/busdma/conf/kern.pre.mk#2 integrate .. //depot/projects/busdma/conf/kmod.mk#3 integrate .. //depot/projects/busdma/conf/options#4 integrate .. //depot/projects/busdma/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/busdma/dev/ata/ata-all.h#2 integrate .. //depot/projects/busdma/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/busdma/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/busdma/dev/ata/ata-pci.h#2 integrate .. //depot/projects/busdma/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/busdma/dev/ath/if_ath.c#4 integrate .. //depot/projects/busdma/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/busdma/dev/ath/if_athvar.h#4 integrate .. //depot/projects/busdma/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/busdma/dev/bge/if_bge.c#3 integrate .. //depot/projects/busdma/dev/bge/if_bgereg.h#3 integrate .. //depot/projects/busdma/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/busdma/dev/fdc/fdc.c#2 integrate .. //depot/projects/busdma/dev/ic/nec765.h#2 integrate .. //depot/projects/busdma/dev/isp/isp.c#2 integrate .. //depot/projects/busdma/dev/isp/isp_pci.c#3 integrate .. //depot/projects/busdma/dev/isp/ispmbox.h#2 integrate .. //depot/projects/busdma/dev/isp/ispreg.h#2 integrate .. //depot/projects/busdma/dev/isp/ispvar.h#3 integrate .. //depot/projects/busdma/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/busdma/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/busdma/dev/mfi/mfi.c#3 integrate .. //depot/projects/busdma/dev/mii/acphy.c#2 integrate .. //depot/projects/busdma/dev/mii/amphy.c#2 integrate .. //depot/projects/busdma/dev/mii/bmtphy.c#2 integrate .. //depot/projects/busdma/dev/mii/brgphy.c#3 integrate .. //depot/projects/busdma/dev/mii/ciphy.c#3 integrate .. //depot/projects/busdma/dev/mii/e1000phy.c#3 integrate .. //depot/projects/busdma/dev/mii/exphy.c#2 integrate .. //depot/projects/busdma/dev/mii/inphy.c#2 integrate .. //depot/projects/busdma/dev/mii/lxtphy.c#2 integrate .. //depot/projects/busdma/dev/mii/mii_physubr.c#3 integrate .. //depot/projects/busdma/dev/mii/mlphy.c#2 integrate .. //depot/projects/busdma/dev/mii/nsgphy.c#3 integrate .. //depot/projects/busdma/dev/mii/nsphy.c#2 integrate .. //depot/projects/busdma/dev/mii/pnaphy.c#2 integrate .. //depot/projects/busdma/dev/mii/qsphy.c#2 integrate .. //depot/projects/busdma/dev/mii/rgephy.c#3 integrate .. //depot/projects/busdma/dev/mii/rlphy.c#2 integrate .. //depot/projects/busdma/dev/mii/ruephy.c#2 integrate .. //depot/projects/busdma/dev/mii/tdkphy.c#3 integrate .. //depot/projects/busdma/dev/mii/tlphy.c#2 integrate .. //depot/projects/busdma/dev/mii/ukphy.c#2 integrate .. //depot/projects/busdma/dev/mii/xmphy.c#2 integrate .. //depot/projects/busdma/dev/mpt/mpt.c#3 integrate .. //depot/projects/busdma/dev/mpt/mpt.h#4 integrate .. //depot/projects/busdma/dev/mpt/mpt_cam.c#4 integrate .. //depot/projects/busdma/dev/mpt/mpt_pci.c#4 integrate .. //depot/projects/busdma/dev/nfe/if_nfe.c#1 branch .. //depot/projects/busdma/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/busdma/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/busdma/dev/puc/puc.c#2 integrate .. //depot/projects/busdma/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/busdma/dev/puc/puc_pccard.c#2 integrate .. //depot/projects/busdma/dev/puc/puc_pci.c#2 integrate .. //depot/projects/busdma/dev/puc/pucdata.c#3 integrate .. //depot/projects/busdma/dev/re/if_re.c#3 integrate .. //depot/projects/busdma/dev/sio/sio.c#3 integrate .. //depot/projects/busdma/dev/sk/if_sk.c#3 integrate .. //depot/projects/busdma/dev/sound/pci/solo.c#2 integrate .. //depot/projects/busdma/dev/usb/if_aue.c#2 integrate .. //depot/projects/busdma/dev/usb/if_ural.c#3 integrate .. //depot/projects/busdma/dev/usb/uplcom.c#3 integrate .. //depot/projects/busdma/dev/usb/usbdevs#3 integrate .. //depot/projects/busdma/fs/devfs/devfs_vfsops.c#2 integrate .. //depot/projects/busdma/fs/devfs/devfs_vnops.c#2 integrate .. //depot/projects/busdma/fs/pseudofs/pseudofs_vnops.c#2 integrate .. //depot/projects/busdma/fs/udf/udf_vfsops.c#3 integrate .. //depot/projects/busdma/fs/unionfs/union_vnops.c#2 integrate .. //depot/projects/busdma/geom/geom_gpt.c#3 integrate .. //depot/projects/busdma/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/busdma/geom/raid3/g_raid3.c#3 integrate .. //depot/projects/busdma/i386/conf/GENERIC#3 integrate .. //depot/projects/busdma/i386/conf/NOTES#4 integrate .. //depot/projects/busdma/i386/conf/XBOX#3 integrate .. //depot/projects/busdma/i386/i386/pmap.c#3 integrate .. //depot/projects/busdma/i386/ibcs2/ibcs2_misc.c#2 integrate .. //depot/projects/busdma/i386/ibcs2/ibcs2_msg.c#2 integrate .. //depot/projects/busdma/i386/ibcs2/ibcs2_poll.h#2 delete .. //depot/projects/busdma/i386/ibcs2/ibcs2_proto.h#2 integrate .. //depot/projects/busdma/i386/ibcs2/ibcs2_syscall.h#2 integrate .. //depot/projects/busdma/i386/ibcs2/ibcs2_sysent.c#2 integrate .. //depot/projects/busdma/i386/ibcs2/ibcs2_xenix.h#2 integrate .. //depot/projects/busdma/i386/ibcs2/ibcs2_xenix_syscall.h#2 integrate .. //depot/projects/busdma/i386/ibcs2/ibcs2_xenix_sysent.c#2 integrate .. //depot/projects/busdma/i386/ibcs2/syscalls.master#2 integrate .. //depot/projects/busdma/i386/ibcs2/syscalls.xenix#2 integrate .. //depot/projects/busdma/i386/linux/linux_proto.h#4 integrate .. //depot/projects/busdma/i386/linux/linux_syscall.h#4 integrate .. //depot/projects/busdma/i386/linux/linux_sysent.c#4 integrate .. //depot/projects/busdma/i386/linux/syscalls.master#4 integrate .. //depot/projects/busdma/ia64/conf/GENERIC#3 integrate .. //depot/projects/busdma/ia64/disasm/disasm.h#2 integrate .. //depot/projects/busdma/ia64/disasm/disasm_decode.c#2 integrate .. //depot/projects/busdma/ia64/disasm/disasm_extract.c#2 integrate .. //depot/projects/busdma/ia64/disasm/disasm_format.c#2 integrate .. //depot/projects/busdma/ia64/disasm/disasm_int.h#2 integrate .. //depot/projects/busdma/ia64/ia64/emulate.c#1 branch .. //depot/projects/busdma/ia64/ia64/machdep.c#2 integrate .. //depot/projects/busdma/ia64/ia64/pmap.c#3 integrate .. //depot/projects/busdma/ia64/ia64/trap.c#3 integrate .. //depot/projects/busdma/ia64/include/ieeefp.h#2 integrate .. //depot/projects/busdma/ia64/include/md_var.h#2 integrate .. //depot/projects/busdma/kern/init_sysent.c#2 integrate .. //depot/projects/busdma/kern/kern_acl.c#2 integrate .. //depot/projects/busdma/kern/kern_descrip.c#2 integrate .. //depot/projects/busdma/kern/kern_fork.c#2 integrate .. //depot/projects/busdma/kern/kern_ktrace.c#2 integrate .. //depot/projects/busdma/kern/kern_linker.c#3 integrate .. //depot/projects/busdma/kern/kern_module.c#3 integrate .. //depot/projects/busdma/kern/kern_prot.c#2 integrate .. //depot/projects/busdma/kern/kern_thread.c#2 integrate .. //depot/projects/busdma/kern/sched_4bsd.c#3 integrate .. //depot/projects/busdma/kern/sched_core.c#2 integrate .. //depot/projects/busdma/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/busdma/kern/subr_firmware.c#3 integrate .. //depot/projects/busdma/kern/syscalls.c#2 integrate .. //depot/projects/busdma/kern/syscalls.master#2 integrate .. //depot/projects/busdma/kern/sysv_sem.c#3 integrate .. //depot/projects/busdma/kern/uipc_socket2.c#3 integrate .. //depot/projects/busdma/kern/uipc_usrreq.c#3 integrate .. //depot/projects/busdma/kern/vfs_init.c#3 integrate .. //depot/projects/busdma/kern/vfs_mount.c#3 integrate .. //depot/projects/busdma/kern/vfs_subr.c#3 integrate .. //depot/projects/busdma/kern/vfs_syscalls.c#3 integrate .. //depot/projects/busdma/kern/vfs_vnops.c#3 integrate .. //depot/projects/busdma/modules/Makefile#4 integrate .. //depot/projects/busdma/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/busdma/modules/netgraph/Makefile#2 integrate .. //depot/projects/busdma/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/busdma/modules/nfe/Makefile#1 branch .. //depot/projects/busdma/modules/streams/Makefile#2 integrate .. //depot/projects/busdma/modules/svr4/Makefile#2 integrate .. //depot/projects/busdma/net/bpf.c#4 integrate .. //depot/projects/busdma/net/if.c#3 integrate .. //depot/projects/busdma/net/if_atmsubr.c#2 integrate .. //depot/projects/busdma/net/if_enc.c#1 branch .. //depot/projects/busdma/net/if_gif.c#3 integrate .. //depot/projects/busdma/net/if_stf.c#3 integrate .. //depot/projects/busdma/net/if_tun.c#3 integrate .. //depot/projects/busdma/net/if_types.h#2 integrate .. //depot/projects/busdma/net/if_vlan.c#3 integrate .. //depot/projects/busdma/net/rtsock.c#2 integrate .. //depot/projects/busdma/net80211/ieee80211_freebsd.c#3 integrate .. //depot/projects/busdma/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#2 integrate .. //depot/projects/busdma/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 integrate .. //depot/projects/busdma/netgraph/ng_tag.c#1 branch .. //depot/projects/busdma/netgraph/ng_tag.h#1 branch .. //depot/projects/busdma/netinet/if_ether.c#3 integrate .. //depot/projects/busdma/netinet/in_pcb.c#3 integrate .. //depot/projects/busdma/netinet/in_rmx.c#2 integrate .. //depot/projects/busdma/netinet/ip_divert.c#2 integrate .. //depot/projects/busdma/netinet/ip_fw2.c#4 integrate .. //depot/projects/busdma/netinet/ip_ipsec.c#3 integrate .. //depot/projects/busdma/netinet/ip_output.c#3 integrate .. //depot/projects/busdma/netinet/libalias/libalias.3#2 integrate .. //depot/projects/busdma/netinet/tcp_input.c#3 integrate .. //depot/projects/busdma/netinet/tcp_syncache.c#3 integrate .. //depot/projects/busdma/netinet/tcp_usrreq.c#3 integrate .. //depot/projects/busdma/netinet/tcp_var.h#3 integrate .. //depot/projects/busdma/netinet6/in6.c#3 integrate .. //depot/projects/busdma/netinet6/in6_cksum.c#2 integrate .. //depot/projects/busdma/netinet6/in6_pcb.c#2 integrate .. //depot/projects/busdma/netinet6/in6_rmx.c#2 integrate .. //depot/projects/busdma/netinet6/in6_var.h#2 integrate .. //depot/projects/busdma/netinet6/ipsec.c#2 integrate .. //depot/projects/busdma/netinet6/raw_ip6.c#2 integrate .. //depot/projects/busdma/netipsec/ipsec.h#2 integrate .. //depot/projects/busdma/netipsec/ipsec_input.c#3 integrate .. //depot/projects/busdma/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/busdma/netipsec/ipsec_output.c#2 integrate .. //depot/projects/busdma/netipsec/xform_ipip.c#2 integrate .. //depot/projects/busdma/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/busdma/nfsclient/nfs_diskless.c#2 integrate .. //depot/projects/busdma/nfsserver/nfs_srvcache.c#2 integrate .. //depot/projects/busdma/nfsserver/nfsrvcache.h#2 integrate .. //depot/projects/busdma/pc98/conf/GENERIC#4 integrate .. //depot/projects/busdma/pci/agp_i810.c#3 integrate .. //depot/projects/busdma/pci/if_rlreg.h#3 integrate .. //depot/projects/busdma/powerpc/conf/GENERIC#3 integrate .. //depot/projects/busdma/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/busdma/security/audit/audit.h#2 integrate .. //depot/projects/busdma/security/audit/audit_arg.c#3 integrate .. //depot/projects/busdma/security/audit/audit_bsm.c#3 integrate .. //depot/projects/busdma/sparc64/conf/GENERIC#3 integrate .. //depot/projects/busdma/sys/gpt.h#2 integrate .. //depot/projects/busdma/sys/rwlock.h#2 integrate .. //depot/projects/busdma/sys/syscall.h#2 integrate .. //depot/projects/busdma/sys/syscall.mk#2 integrate .. //depot/projects/busdma/sys/syscallsubr.h#3 integrate .. //depot/projects/busdma/sys/sysproto.h#2 integrate .. //depot/projects/busdma/vm/vm_page.c#3 integrate .. //depot/projects/busdma/vm/vm_pageq.c#2 integrate Differences ... ==== //depot/projects/busdma/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/busdma/amd64/amd64/pmap.c#3 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1979,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2145,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2582,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2674,7 +2668,7 @@ PHYS_TO_DMAP(VM_PAGE_TO_PHYS(dstmpde)); pde = &pde[pmap_pde_index(addr)]; if (*pde == 0) { - *pde = srcptepaddr; + *pde = srcptepaddr & ~PG_W; dst_pmap->pm_stats.resident_count += NBPDR / PAGE_SIZE; } else @@ -2697,11 +2691,6 @@ * we only virtual copy managed pages */ if ((ptetemp & PG_MANAGED) != 0) { - /* - * We have to check after allocpte for the - * pte still being around... allocpte can - * block. - */ dstmpte = pmap_allocpte(dst_pmap, addr, M_NOWAIT); if (dstmpte == NULL) @@ -2713,14 +2702,16 @@ pmap_try_insert_pv_entry(dst_pmap, addr, PHYS_TO_VM_PAGE(ptetemp & PG_FRAME))) { /* - * Clear the modified and + * Clear the wired, modified, and * accessed (referenced) bits * during the copy. */ - *dst_pte = ptetemp & ~(PG_M | PG_A); + *dst_pte = ptetemp & ~(PG_W | PG_M | + PG_A); dst_pmap->pm_stats.resident_count++; } else - pmap_unwire_pte_hold(dst_pmap, addr, dstmpte); + pmap_unwire_pte_hold(dst_pmap, addr, + dstmpte); if (dstmpte->wire_count >= srcmpte->wire_count) break; } @@ -2799,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2980,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3033,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3055,45 +3033,33 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if ((*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; - if (rtval > 4) { - PMAP_UNLOCK(pmap); - break; - } + if (rtval > 4) + pvn = NULL; } PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3103,7 +3069,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3114,7 +3096,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3128,9 +3126,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3154,9 +3150,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3176,9 +3170,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/busdma/amd64/conf/GENERIC#4 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/busdma/amd64/conf/NOTES#4 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.56 2006/06/12 20:38:17 jhb Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.57 2006/06/26 23:41:06 obrien Exp $ # # @@ -223,6 +223,7 @@ # (requires miibus) # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters +# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) # nve: nVidia nForce MCP on-board Ethernet Networking # ral: Ralink Technology IEEE 802.11 wireless adapter # ural: Ralink Technology RT2500USB IEEE 802.11 wireless adapter @@ -233,6 +234,7 @@ options ED_SIC device iwi device ipw +device nfe # nVidia nForce MCP on-board Ethernet Networking device nve # nVidia nForce MCP on-board Ethernet Networking device ral device ural ==== //depot/projects/busdma/amd64/linux32/linux32_proto.h#4 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/busdma/amd64/linux32/linux32_syscall.h#4 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/busdma/amd64/linux32/linux32_sysent.c#4 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #include @@ -41,8 +41,8 @@ { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_STAT }, /* 18 = linux_stat */ { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_LSEEK }, /* 19 = linux_lseek */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_GETPID }, /* 20 = linux_getpid */ - { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ - { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ + { SYF_MPSAFE | AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ + { SYF_MPSAFE | AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_SETUID }, /* 23 = linux_setuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_GETUID }, /* 24 = linux_getuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_SETTIMEOFDAY }, /* 25 = linux_stime */ @@ -65,16 +65,16 @@ { SYF_MPSAFE | AS(linux_pipe_args), (sy_call_t *)linux_pipe, AUE_PIPE }, /* 42 = linux_pipe */ { SYF_MPSAFE | AS(linux_times_args), (sy_call_t *)linux_times, AUE_NULL }, /* 43 = linux_times */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 44 = prof */ - { AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ + { SYF_MPSAFE | AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ { SYF_MPSAFE | AS(linux_setgid16_args), (sy_call_t *)linux_setgid16, AUE_SETGID }, /* 46 = linux_setgid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getgid16, AUE_GETGID }, /* 47 = linux_getgid16 */ { SYF_MPSAFE | AS(linux_signal_args), (sy_call_t *)linux_signal, AUE_NULL }, /* 48 = linux_signal */ { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_GETEUID }, /* 49 = linux_geteuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_GETEGID }, /* 50 = linux_getegid16 */ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ - { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ + { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ @@ -137,7 +137,7 @@ { SYF_MPSAFE | AS(linux_wait4_args), (sy_call_t *)linux_wait4, AUE_WAIT4 }, /* 114 = linux_wait4 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_swapoff, AUE_SWAPOFF }, /* 115 = linux_swapoff */ { SYF_MPSAFE | AS(linux_sysinfo_args), (sy_call_t *)linux_sysinfo, AUE_NULL }, /* 116 = linux_sysinfo */ - { AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ + { SYF_MPSAFE | AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ { SYF_MPSAFE | AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC }, /* 118 = fsync */ { SYF_MPSAFE | AS(linux_sigreturn_args), (sy_call_t *)linux_sigreturn, AUE_SIGRETURN }, /* 119 = linux_sigreturn */ { SYF_MPSAFE | AS(linux_clone_args), (sy_call_t *)linux_clone, AUE_RFORK }, /* 120 = linux_clone */ ==== //depot/projects/busdma/amd64/linux32/syscalls.master#4 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -75,10 +75,10 @@ 19 AUE_LSEEK MSTD { int linux_lseek(l_uint fdes, l_off_t off, \ l_int whence); } 20 AUE_GETPID MSTD { int linux_getpid(void); } -21 AUE_MOUNT STD { int linux_mount(char *specialfile, \ +21 AUE_MOUNT MSTD { int linux_mount(char *specialfile, \ char *dir, char *filesystemtype, \ l_ulong rwflag, void *data); } -22 AUE_UMOUNT STD { int linux_oldumount(char *path); } +22 AUE_UMOUNT MSTD { int linux_oldumount(char *path); } 23 AUE_SETUID MSTD { int linux_setuid16(l_uid16_t uid); } 24 AUE_GETUID MSTD { int linux_getuid16(void); } 25 AUE_SETTIMEOFDAY MSTD { int linux_stime(void); } @@ -103,7 +103,7 @@ 42 AUE_PIPE MSTD { int linux_pipe(l_ulong *pipefds); } 43 AUE_NULL MSTD { int linux_times(struct l_times_argv *buf); } 44 AUE_NULL UNIMPL prof -45 AUE_NULL STD { int linux_brk(l_ulong dsend); } +45 AUE_NULL MSTD { int linux_brk(l_ulong dsend); } 46 AUE_SETGID MSTD { int linux_setgid16(l_gid16_t gid); } 47 AUE_GETGID MSTD { int linux_getgid16(void); } 48 AUE_NULL MSTD { int linux_signal(l_int sig, \ @@ -111,9 +111,9 @@ 49 AUE_GETEUID MSTD { int linux_geteuid16(void); } 50 AUE_GETEGID MSTD { int linux_getegid16(void); } 51 AUE_ACCT MNOPROTO { int acct(char *path); } -52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); } +52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -212,7 +212,7 @@ struct l_rusage *rusage); } 115 AUE_SWAPOFF MSTD { int linux_swapoff(void); } 116 AUE_NULL MSTD { int linux_sysinfo(struct l_sysinfo *info); } -117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \ +117 AUE_NULL MSTD { int linux_ipc(l_uint what, l_int arg1, \ l_int arg2, l_int arg3, void *ptr, \ l_long arg5); } 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } ==== //depot/projects/busdma/arm/arm/elf_trampoline.c#3 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.8 2006/06/18 22:46:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.11 2006/06/23 22:45:35 cognet Exp $"); #include #include #include @@ -131,6 +131,8 @@ } } +static void arm9_setup(void); + void _start(void) { @@ -174,7 +176,6 @@ __start(); } -#ifdef KZIP static void get_cachetype_cp15() { @@ -255,6 +256,7 @@ } +#ifdef KZIP static unsigned char *orig_input, *i_input, *i_output; @@ -348,8 +350,8 @@ int d) { Elf32_Ehdr *eh; - Elf32_Phdr phdr[512] /* XXX */, *php; - Elf32_Shdr shdr[512] /* XXX */; + Elf32_Phdr phdr[64] /* XXX */, *php; + Elf32_Shdr shdr[64] /* XXX */; int i,j; void *entry_point; int symtabindex = -1; ==== //depot/projects/busdma/arm/at91/at91_pio.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.1 2006/03/24 07:39:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); #include #include @@ -38,7 +38,9 @@ #include #include +#include #include +#include struct at91_pio_softc { @@ -103,7 +105,26 @@ static int at91_pio_probe(device_t dev) { - device_set_desc(dev, "PIO"); + const char *name; + + switch (device_get_unit(dev)) { + case 0: + name = "PIOA"; + break; + case 1: + name = "PIOB"; + break; + case 2: + name = "PIOC"; + break; + case 3: + name = "PIOD"; + break; + default: + name = "PIO"; + break; + } + device_set_desc(dev, name); return (0); } @@ -118,6 +139,9 @@ if (err) goto out; + device_printf(dev, "ABSR: %#x OSR: %#x PSR:%#x ODSR: %#x\n", + RD4(sc, PIO_ABSR), RD4(sc, PIO_OSR), RD4(sc, PIO_PSR), + RD4(sc, PIO_ODSR)); AT91_PIO_LOCK_INIT(sc); /* @@ -250,6 +274,69 @@ return (ENXIO); } +/* + * The following functions are called early in the boot process, so + * don't use bus_space, as that isn't yet available when we need to use + * them. + */ +void +at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ASR / 4] = periph_a_mask; + PIO[PIO_PDR / 4] = periph_a_mask; +} + +void +at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_BSR / 4] = periph_b_mask; + PIO[PIO_PDR / 4] = periph_b_mask; +} + +void +at91_pio_use_gpio(uint32_t pio, uint32_t gpio_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_PER / 4] = gpio_mask; +} + +void +at91_pio_gpio_input(uint32_t pio, uint32_t input_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ODR / 4] = input_enable_mask; +} + +void +at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_OER / 4] = output_enable_mask; +} + +void +at91_pio_gpio_set(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_SODR / 4] = data_mask; +} + +void +at91_pio_gpio_clear(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_CODR / 4] = data_mask; +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), ==== //depot/projects/busdma/arm/at91/files.at91#2 (text) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/arm/at91/files.at91,v 1.3 2006/03/24 07:36:23 imp Exp $ +# $FreeBSD: src/sys/arm/at91/files.at91,v 1.5 2006/06/23 23:07:11 cognet Exp $ arm/arm/cpufunc_asm_arm9.S standard arm/arm/irq_dispatch.S standard arm/at91/at91.c standard ==== //depot/projects/busdma/arm/at91/uart_dev_at91usart.c#3 (text) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.6 2006/05/13 23:41:16 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.7 2006/07/02 03:45:33 imp Exp $"); #include #include @@ -45,19 +45,29 @@ #include "uart_if.h" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 7 04:53:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ABB9E16A4DF; Fri, 7 Jul 2006 04:53:23 +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 6BBDF16A4DD for ; Fri, 7 Jul 2006 04:53:23 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F3C5B43D49 for ; Fri, 7 Jul 2006 04:53:17 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k674rHNl002028 for ; Fri, 7 Jul 2006 04:53:17 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k674rCcY002023 for perforce@freebsd.org; Fri, 7 Jul 2006 04:53:12 GMT (envelope-from marcel@freebsd.org) Date: Fri, 7 Jul 2006 04:53:12 GMT Message-Id: <200607070453.k674rCcY002023@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 100839 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 04:53:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100839 Change 100839 by marcel@marcel_nfs on 2006/07/07 04:52:43 IFC @100834 Affected files ... .. //depot/projects/ia64/MAINTAINERS#54 integrate .. //depot/projects/ia64/Makefile#50 integrate .. //depot/projects/ia64/ObsoleteFiles.inc#7 integrate .. //depot/projects/ia64/UPDATING#88 integrate .. //depot/projects/ia64/bin/cp/cp.c#18 integrate .. //depot/projects/ia64/contrib/openbsm/FREEBSD-upgrade#2 integrate .. //depot/projects/ia64/contrib/openbsm/HISTORY#3 integrate .. //depot/projects/ia64/contrib/openbsm/VERSION#3 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/audit_kevents.h#2 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/audit_record.h#3 integrate .. //depot/projects/ia64/contrib/openbsm/bsm/libbsm.h#3 integrate .. //depot/projects/ia64/contrib/openbsm/config/ltmain.sh#2 integrate .. //depot/projects/ia64/contrib/openbsm/configure#3 integrate .. //depot/projects/ia64/contrib/openbsm/configure.ac#3 integrate .. //depot/projects/ia64/contrib/openbsm/etc/audit_event#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_notify.c#2 integrate .. //depot/projects/ia64/contrib/openbsm/libbsm/bsm_token.c#3 integrate .. //depot/projects/ia64/contrib/openbsm/man/audit.log.5#2 integrate .. //depot/projects/ia64/contrib/openbsm/test/bsm/generate.c#2 integrate .. //depot/projects/ia64/include/malloc_np.h#2 integrate .. //depot/projects/ia64/lib/libc/posix1e/mac_is_present.3#1 branch .. //depot/projects/ia64/lib/libc/stdlib/malloc.c#33 integrate .. //depot/projects/ia64/lib/libc/stdlib/tsearch.3#9 integrate .. //depot/projects/ia64/lib/libutil/pidfile.c#3 integrate .. //depot/projects/ia64/lib/msun/i387/Makefile.inc#5 integrate .. //depot/projects/ia64/lib/msun/i387/e_scalb.S#3 delete .. //depot/projects/ia64/lib/msun/i387/e_scalbf.S#3 delete .. //depot/projects/ia64/lib/msun/src/e_scalbf.c#6 integrate .. //depot/projects/ia64/lib/msun/src/s_tanh.c#3 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#160 integrate .. //depot/projects/ia64/sbin/dhclient/dhclient.c#5 integrate .. //depot/projects/ia64/sbin/gpt/add.c#9 integrate .. //depot/projects/ia64/sbin/gpt/gpt.8#9 integrate .. //depot/projects/ia64/sbin/gpt/gpt.c#20 integrate .. //depot/projects/ia64/sbin/gpt/gpt.h#14 integrate .. //depot/projects/ia64/sbin/gpt/label.c#2 integrate .. //depot/projects/ia64/sbin/gpt/remove.c#5 integrate .. //depot/projects/ia64/sbin/gpt/show.c#10 integrate .. //depot/projects/ia64/sbin/ifconfig/ifconfig.8#38 integrate .. //depot/projects/ia64/sbin/ifconfig/ifieee80211.c#15 integrate .. //depot/projects/ia64/share/man/man4/Makefile#95 integrate .. //depot/projects/ia64/share/man/man4/ata.4#20 integrate .. //depot/projects/ia64/share/man/man4/enc.4#1 branch .. //depot/projects/ia64/share/man/man4/fast_ipsec.4#4 integrate .. //depot/projects/ia64/share/man/man4/geom_fox.4#2 integrate .. //depot/projects/ia64/share/man/man4/nfe.4#1 branch .. //depot/projects/ia64/share/man/man4/ng_netflow.4#10 integrate .. //depot/projects/ia64/share/man/man4/ng_tag.4#1 branch .. //depot/projects/ia64/share/man/man4/re.4#13 integrate .. //depot/projects/ia64/share/man/man4/sched_core.4#2 integrate .. //depot/projects/ia64/share/man/man4/uplcom.4#10 integrate .. //depot/projects/ia64/share/man/man7/ports.7#18 integrate .. //depot/projects/ia64/sys/Makefile#12 integrate .. //depot/projects/ia64/sys/amd64/amd64/pmap.c#54 integrate .. //depot/projects/ia64/sys/amd64/conf/GENERIC#36 integrate .. //depot/projects/ia64/sys/amd64/conf/NOTES#20 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_proto.h#8 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_syscall.h#8 integrate .. //depot/projects/ia64/sys/amd64/linux32/linux32_sysent.c#8 integrate .. //depot/projects/ia64/sys/amd64/linux32/syscalls.master#8 integrate .. //depot/projects/ia64/sys/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/ia64/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/ia64/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/ia64/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/ia64/sys/arm/at91/files.at91#2 integrate .. //depot/projects/ia64/sys/arm/at91/uart_dev_at91usart.c#4 integrate .. //depot/projects/ia64/sys/bsm/audit_kevents.h#4 integrate .. //depot/projects/ia64/sys/bsm/audit_record.h#3 integrate .. //depot/projects/ia64/sys/cam/cam_xpt.c#31 integrate .. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_proto.h#18 integrate .. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_syscall.h#18 integrate .. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_syscalls.c#18 integrate .. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_sysent.c#18 integrate .. //depot/projects/ia64/sys/compat/freebsd32/syscalls.master#18 integrate .. //depot/projects/ia64/sys/compat/linprocfs/linprocfs.c#42 integrate .. //depot/projects/ia64/sys/compat/linux/linux_ioctl.c#38 integrate .. //depot/projects/ia64/sys/compat/linux/linux_ipc.c#16 integrate .. //depot/projects/ia64/sys/compat/linux/linux_misc.c#44 integrate .. //depot/projects/ia64/sys/compat/linux/linux_util.h#13 integrate .. //depot/projects/ia64/sys/compat/ndis/kern_ndis.c#15 integrate .. //depot/projects/ia64/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/ia64/sys/compat/svr4/svr4_ipc.c#9 integrate .. //depot/projects/ia64/sys/compat/svr4/svr4_misc.c#36 integrate .. //depot/projects/ia64/sys/compat/svr4/svr4_proto.h#8 integrate .. //depot/projects/ia64/sys/compat/svr4/svr4_syscall.h#7 integrate .. //depot/projects/ia64/sys/compat/svr4/svr4_syscallnames.c#7 integrate .. //depot/projects/ia64/sys/compat/svr4/svr4_sysent.c#7 integrate .. //depot/projects/ia64/sys/compat/svr4/syscalls.master#7 integrate .. //depot/projects/ia64/sys/conf/NOTES#103 integrate .. //depot/projects/ia64/sys/conf/files#143 integrate .. //depot/projects/ia64/sys/conf/files.amd64#38 integrate .. //depot/projects/ia64/sys/conf/files.i386#77 integrate .. //depot/projects/ia64/sys/conf/files.ia64#65 integrate .. //depot/projects/ia64/sys/conf/kern.mk#18 integrate .. //depot/projects/ia64/sys/conf/kern.pre.mk#38 integrate .. //depot/projects/ia64/sys/conf/kmod.mk#53 integrate .. //depot/projects/ia64/sys/conf/options#96 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/ia64/sys/dev/ata/ata-all.h#36 integrate .. //depot/projects/ia64/sys/dev/ata/ata-chipset.c#53 integrate .. //depot/projects/ia64/sys/dev/ata/ata-lowlevel.c#36 integrate .. //depot/projects/ia64/sys/dev/ata/ata-pci.h#34 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-cd.c#51 integrate .. //depot/projects/ia64/sys/dev/ath/if_ath.c#33 integrate .. //depot/projects/ia64/sys/dev/ath/if_athioctl.h#13 integrate .. //depot/projects/ia64/sys/dev/ath/if_athvar.h#20 integrate .. //depot/projects/ia64/sys/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/ia64/sys/dev/bge/if_bge.c#68 integrate .. //depot/projects/ia64/sys/dev/bge/if_bgereg.h#39 integrate .. //depot/projects/ia64/sys/dev/bktr/CHANGELOG.TXT#4 integrate .. //depot/projects/ia64/sys/dev/fdc/fdc.c#16 integrate .. //depot/projects/ia64/sys/dev/ic/nec765.h#4 integrate .. //depot/projects/ia64/sys/dev/isp/isp.c#29 integrate .. //depot/projects/ia64/sys/dev/isp/isp_pci.c#31 integrate .. //depot/projects/ia64/sys/dev/isp/ispmbox.h#16 integrate .. //depot/projects/ia64/sys/dev/isp/ispreg.h#6 integrate .. //depot/projects/ia64/sys/dev/isp/ispvar.h#23 integrate .. //depot/projects/ia64/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/ia64/sys/dev/ispfw/ispfw.c#11 integrate .. //depot/projects/ia64/sys/dev/mfi/mfi.c#4 integrate .. //depot/projects/ia64/sys/dev/mii/acphy.c#14 integrate .. //depot/projects/ia64/sys/dev/mii/amphy.c#12 integrate .. //depot/projects/ia64/sys/dev/mii/bmtphy.c#9 integrate .. //depot/projects/ia64/sys/dev/mii/brgphy.c#29 integrate .. //depot/projects/ia64/sys/dev/mii/ciphy.c#5 integrate .. //depot/projects/ia64/sys/dev/mii/e1000phy.c#11 integrate .. //depot/projects/ia64/sys/dev/mii/exphy.c#12 integrate .. //depot/projects/ia64/sys/dev/mii/inphy.c#8 integrate .. //depot/projects/ia64/sys/dev/mii/lxtphy.c#13 integrate .. //depot/projects/ia64/sys/dev/mii/mii_physubr.c#12 integrate .. //depot/projects/ia64/sys/dev/mii/mlphy.c#10 integrate .. //depot/projects/ia64/sys/dev/mii/nsgphy.c#15 integrate .. //depot/projects/ia64/sys/dev/mii/nsphy.c#12 integrate .. //depot/projects/ia64/sys/dev/mii/pnaphy.c#13 integrate .. //depot/projects/ia64/sys/dev/mii/qsphy.c#13 integrate .. //depot/projects/ia64/sys/dev/mii/rgephy.c#6 integrate .. //depot/projects/ia64/sys/dev/mii/rlphy.c#16 integrate .. //depot/projects/ia64/sys/dev/mii/ruephy.c#4 integrate .. //depot/projects/ia64/sys/dev/mii/tdkphy.c#14 integrate .. //depot/projects/ia64/sys/dev/mii/tlphy.c#12 integrate .. //depot/projects/ia64/sys/dev/mii/ukphy.c#11 integrate .. //depot/projects/ia64/sys/dev/mii/xmphy.c#13 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt.c#14 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt.h#13 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_cam.c#7 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_pci.c#23 integrate .. //depot/projects/ia64/sys/dev/nfe/if_nfe.c#1 branch .. //depot/projects/ia64/sys/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/ia64/sys/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/ia64/sys/dev/puc/puc.c#31 integrate .. //depot/projects/ia64/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/ia64/sys/dev/puc/puc_pccard.c#9 integrate .. //depot/projects/ia64/sys/dev/puc/puc_pci.c#12 integrate .. //depot/projects/ia64/sys/dev/puc/pucdata.c#35 integrate .. //depot/projects/ia64/sys/dev/re/if_re.c#29 integrate .. //depot/projects/ia64/sys/dev/sio/sio.c#72 integrate .. //depot/projects/ia64/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/ia64/sys/dev/sound/pci/solo.c#14 integrate .. //depot/projects/ia64/sys/dev/usb/if_aue.c#36 integrate .. //depot/projects/ia64/sys/dev/usb/if_ural.c#9 integrate .. //depot/projects/ia64/sys/dev/usb/uplcom.c#25 integrate .. //depot/projects/ia64/sys/dev/usb/usbdevs#75 integrate .. //depot/projects/ia64/sys/fs/devfs/devfs_vfsops.c#23 integrate .. //depot/projects/ia64/sys/fs/devfs/devfs_vnops.c#46 integrate .. //depot/projects/ia64/sys/fs/pseudofs/pseudofs_vnops.c#33 integrate .. //depot/projects/ia64/sys/fs/udf/udf_vfsops.c#26 integrate .. //depot/projects/ia64/sys/fs/unionfs/union_vnops.c#28 integrate .. //depot/projects/ia64/sys/geom/geom_gpt.c#32 integrate .. //depot/projects/ia64/sys/geom/mirror/g_mirror.c#20 integrate .. //depot/projects/ia64/sys/geom/raid3/g_raid3.c#19 integrate .. //depot/projects/ia64/sys/i386/conf/GENERIC#66 integrate .. //depot/projects/ia64/sys/i386/conf/NOTES#75 integrate .. //depot/projects/ia64/sys/i386/conf/XBOX#5 integrate .. //depot/projects/ia64/sys/i386/i386/pmap.c#94 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_misc.c#22 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_msg.c#5 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_poll.h#3 delete .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_proto.h#10 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_syscall.h#9 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_sysent.c#11 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_xenix.h#7 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_xenix_syscall.h#6 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_xenix_sysent.c#7 integrate .. //depot/projects/ia64/sys/i386/ibcs2/syscalls.master#9 integrate .. //depot/projects/ia64/sys/i386/ibcs2/syscalls.xenix#6 integrate .. //depot/projects/ia64/sys/i386/linux/linux_proto.h#18 integrate .. //depot/projects/ia64/sys/i386/linux/linux_syscall.h#18 integrate .. //depot/projects/ia64/sys/i386/linux/linux_sysent.c#19 integrate .. //depot/projects/ia64/sys/i386/linux/syscalls.master#17 integrate .. //depot/projects/ia64/sys/ia64/conf/GENERIC#49 integrate .. //depot/projects/ia64/sys/ia64/disasm/disasm.h#3 integrate .. //depot/projects/ia64/sys/ia64/disasm/disasm_decode.c#4 integrate .. //depot/projects/ia64/sys/ia64/disasm/disasm_extract.c#3 integrate .. //depot/projects/ia64/sys/ia64/disasm/disasm_format.c#3 integrate .. //depot/projects/ia64/sys/ia64/disasm/disasm_int.h#3 integrate .. //depot/projects/ia64/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/ia64/sys/ia64/ia64/machdep.c#119 integrate .. //depot/projects/ia64/sys/ia64/ia64/pmap.c#96 integrate .. //depot/projects/ia64/sys/ia64/ia64/trap.c#83 integrate .. //depot/projects/ia64/sys/ia64/include/ieeefp.h#5 integrate .. //depot/projects/ia64/sys/ia64/include/md_var.h#15 integrate .. //depot/projects/ia64/sys/kern/init_sysent.c#53 integrate .. //depot/projects/ia64/sys/kern/kern_acl.c#22 integrate .. //depot/projects/ia64/sys/kern/kern_descrip.c#85 integrate .. //depot/projects/ia64/sys/kern/kern_fork.c#64 integrate .. //depot/projects/ia64/sys/kern/kern_ktrace.c#33 integrate .. //depot/projects/ia64/sys/kern/kern_linker.c#39 integrate .. //depot/projects/ia64/sys/kern/kern_module.c#16 integrate .. //depot/projects/ia64/sys/kern/kern_prot.c#44 integrate .. //depot/projects/ia64/sys/kern/kern_thread.c#95 integrate .. //depot/projects/ia64/sys/kern/sched_4bsd.c#34 integrate .. //depot/projects/ia64/sys/kern/sched_core.c#2 integrate .. //depot/projects/ia64/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/ia64/sys/kern/subr_firmware.c#3 integrate .. //depot/projects/ia64/sys/kern/syscalls.c#54 integrate .. //depot/projects/ia64/sys/kern/syscalls.master#55 integrate .. //depot/projects/ia64/sys/kern/sysv_sem.c#27 integrate .. //depot/projects/ia64/sys/kern/uipc_socket2.c#44 integrate .. //depot/projects/ia64/sys/kern/uipc_usrreq.c#47 integrate .. //depot/projects/ia64/sys/kern/vfs_init.c#21 integrate .. //depot/projects/ia64/sys/kern/vfs_mount.c#50 integrate .. //depot/projects/ia64/sys/kern/vfs_subr.c#89 integrate .. //depot/projects/ia64/sys/kern/vfs_syscalls.c#73 integrate .. //depot/projects/ia64/sys/kern/vfs_vnops.c#55 integrate .. //depot/projects/ia64/sys/modules/Makefile#97 integrate .. //depot/projects/ia64/sys/modules/bktr/bktr_mem/Makefile#3 integrate .. //depot/projects/ia64/sys/modules/netgraph/Makefile#19 integrate .. //depot/projects/ia64/sys/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/ia64/sys/modules/nfe/Makefile#1 branch .. //depot/projects/ia64/sys/modules/streams/Makefile#4 integrate .. //depot/projects/ia64/sys/modules/svr4/Makefile#6 integrate .. //depot/projects/ia64/sys/net/bpf.c#44 integrate .. //depot/projects/ia64/sys/net/if.c#51 integrate .. //depot/projects/ia64/sys/net/if_atmsubr.c#20 integrate .. //depot/projects/ia64/sys/net/if_enc.c#1 branch .. //depot/projects/ia64/sys/net/if_gif.c#27 integrate .. //depot/projects/ia64/sys/net/if_stf.c#29 integrate .. //depot/projects/ia64/sys/net/if_tun.c#33 integrate .. //depot/projects/ia64/sys/net/if_types.h#9 integrate .. //depot/projects/ia64/sys/net/if_vlan.c#30 integrate .. //depot/projects/ia64/sys/net/rtsock.c#35 integrate .. //depot/projects/ia64/sys/net80211/ieee80211_freebsd.c#9 integrate .. //depot/projects/ia64/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#13 integrate .. //depot/projects/ia64/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#4 integrate .. //depot/projects/ia64/sys/netgraph/ng_tag.c#1 branch .. //depot/projects/ia64/sys/netgraph/ng_tag.h#1 branch .. //depot/projects/ia64/sys/netinet/if_ether.c#37 integrate .. //depot/projects/ia64/sys/netinet/in_pcb.c#46 integrate .. //depot/projects/ia64/sys/netinet/in_rmx.c#12 integrate .. //depot/projects/ia64/sys/netinet/ip_divert.c#34 integrate .. //depot/projects/ia64/sys/netinet/ip_fw2.c#57 integrate .. //depot/projects/ia64/sys/netinet/ip_ipsec.c#3 integrate .. //depot/projects/ia64/sys/netinet/ip_output.c#55 integrate .. //depot/projects/ia64/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/ia64/sys/netinet/tcp_input.c#70 integrate .. //depot/projects/ia64/sys/netinet/tcp_syncache.c#42 integrate .. //depot/projects/ia64/sys/netinet/tcp_usrreq.c#33 integrate .. //depot/projects/ia64/sys/netinet/tcp_var.h#33 integrate .. //depot/projects/ia64/sys/netinet6/in6.c#25 integrate .. //depot/projects/ia64/sys/netinet6/in6_cksum.c#10 integrate .. //depot/projects/ia64/sys/netinet6/in6_pcb.c#31 integrate .. //depot/projects/ia64/sys/netinet6/in6_rmx.c#11 integrate .. //depot/projects/ia64/sys/netinet6/in6_var.h#12 integrate .. //depot/projects/ia64/sys/netinet6/ipsec.c#23 integrate .. //depot/projects/ia64/sys/netinet6/raw_ip6.c#26 integrate .. //depot/projects/ia64/sys/netipsec/ipsec.h#9 integrate .. //depot/projects/ia64/sys/netipsec/ipsec_input.c#11 integrate .. //depot/projects/ia64/sys/netipsec/ipsec_osdep.h#3 integrate .. //depot/projects/ia64/sys/netipsec/ipsec_output.c#11 integrate .. //depot/projects/ia64/sys/netipsec/xform_ipip.c#13 integrate .. //depot/projects/ia64/sys/nfsclient/bootp_subr.c#25 integrate .. //depot/projects/ia64/sys/nfsclient/nfs_diskless.c#13 integrate .. //depot/projects/ia64/sys/nfsserver/nfs_srvcache.c#11 integrate .. //depot/projects/ia64/sys/nfsserver/nfsrvcache.h#5 integrate .. //depot/projects/ia64/sys/pc98/conf/GENERIC#56 integrate .. //depot/projects/ia64/sys/pci/agp_i810.c#27 integrate .. //depot/projects/ia64/sys/pci/if_rlreg.h#32 integrate .. //depot/projects/ia64/sys/powerpc/conf/GENERIC#35 integrate .. //depot/projects/ia64/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/ia64/sys/security/audit/audit.h#2 integrate .. //depot/projects/ia64/sys/security/audit/audit_arg.c#3 integrate .. //depot/projects/ia64/sys/security/audit/audit_bsm.c#3 integrate .. //depot/projects/ia64/sys/sparc64/conf/GENERIC#60 integrate .. //depot/projects/ia64/sys/sys/gpt.h#10 integrate .. //depot/projects/ia64/sys/sys/rwlock.h#4 integrate .. //depot/projects/ia64/sys/sys/syscall.h#53 integrate .. //depot/projects/ia64/sys/sys/syscall.mk#53 integrate .. //depot/projects/ia64/sys/sys/syscallsubr.h#22 integrate .. //depot/projects/ia64/sys/sys/sysproto.h#56 integrate .. //depot/projects/ia64/sys/vm/vm_page.c#77 integrate .. //depot/projects/ia64/sys/vm/vm_pageq.c#20 integrate .. //depot/projects/ia64/tools/kerneldoc/Doxyfile#1 branch .. //depot/projects/ia64/tools/kerneldoc/Makefile#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Dependencies#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-cam#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-geom#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-kern#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-linux#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Doxyfile-vm#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/Makefile#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/README#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/common-Doxyfile#1 branch .. //depot/projects/ia64/tools/kerneldoc/subsys/notreviewed.dox#1 branch .. //depot/projects/ia64/tools/tools/ath/athstats/athstats.c#2 integrate .. //depot/projects/ia64/tools/tools/net80211/wlanwatch/wlanwatch.c#2 integrate .. //depot/projects/ia64/usr.bin/calendar/calendars/calendar.freebsd#61 integrate .. //depot/projects/ia64/usr.bin/netstat/route.c#14 integrate .. //depot/projects/ia64/usr.bin/tail/extern.h#5 integrate .. //depot/projects/ia64/usr.bin/tail/forward.c#12 integrate .. //depot/projects/ia64/usr.bin/tail/tail.1#5 integrate .. //depot/projects/ia64/usr.bin/tail/tail.c#7 integrate .. //depot/projects/ia64/usr.sbin/kgmon/kgmon.c#7 integrate .. //depot/projects/ia64/usr.sbin/lpr/lpd/printjob.c#12 integrate .. //depot/projects/ia64/usr.sbin/mtree/misc.c#7 integrate .. //depot/projects/ia64/usr.sbin/mtree/mtree.8#15 integrate .. //depot/projects/ia64/usr.sbin/mtree/mtree.h#4 integrate .. //depot/projects/ia64/usr.sbin/mtree/spec.c#7 integrate .. //depot/projects/ia64/usr.sbin/mtree/test/test05.sh#1 branch .. //depot/projects/ia64/usr.sbin/mtree/verify.c#8 integrate .. //depot/projects/ia64/usr.sbin/newsyslog/newsyslog.c#33 integrate .. //depot/projects/ia64/usr.sbin/ngctl/config.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/connect.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/debug.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/list.c#6 integrate .. //depot/projects/ia64/usr.sbin/ngctl/main.c#10 integrate .. //depot/projects/ia64/usr.sbin/ngctl/mkpeer.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/msg.c#5 integrate .. //depot/projects/ia64/usr.sbin/ngctl/name.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/rmhook.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/show.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/shutdown.c#3 integrate .. //depot/projects/ia64/usr.sbin/ngctl/status.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/types.c#4 integrate .. //depot/projects/ia64/usr.sbin/ngctl/write.c#3 integrate .. //depot/projects/ia64/usr.sbin/sade/Makefile#1 branch .. //depot/projects/ia64/usr.sbin/sade/command.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/config.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/devices.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/disks.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/dispatch.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/dmenu.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/globals.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/help/partition.hlp#1 branch .. //depot/projects/ia64/usr.sbin/sade/help/slice.hlp#1 branch .. //depot/projects/ia64/usr.sbin/sade/install.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/keymap.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/label.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/list.h#1 branch .. //depot/projects/ia64/usr.sbin/sade/main.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/menus.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/misc.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/msg.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/rtermcap.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/sade.8#1 branch .. //depot/projects/ia64/usr.sbin/sade/sade.h#1 branch .. //depot/projects/ia64/usr.sbin/sade/system.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/termcap.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/usb.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/variable.c#1 branch .. //depot/projects/ia64/usr.sbin/sade/wizard.c#1 branch Differences ... ==== //depot/projects/ia64/MAINTAINERS#54 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.135 2006/06/03 01:52:11 scottl Exp $ +$FreeBSD: src/MAINTAINERS,v 1.137 2006/07/04 02:01:48 brooks Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -35,10 +35,6 @@ NEWCARD imp Pre-commit review requested. OLDCARD imp Pre-commit review requested. pci bus imp,jhb Pre-commit review requested. -telnet markm Heads-up appreciated. Try not to break it. -secure/* markm Heads-up appreciated. Try not to break it. -kerberos5 nectar Pre-commit review requested. -heimdal nectar Pre-commit review requested. cdboot jhb Pre-commit review requested. pxeboot jhb Pre-commit review requested. witness jhb Pre-commit review requested. @@ -63,8 +59,6 @@ Keep in sync with -STABLE. etc/sendmail gshapiro Pre-commit review requested. Keep in sync with -STABLE. -dhcp mbr Needs to pre-approve commits to contrib/isc-dhcp, so - changes can be made to the isc.org CVS repository. libfetch des Advance notification requested. fetch des Advance notification requested. libpam des Pre-commit review requested. @@ -91,8 +85,6 @@ libufs jmallett Willing to handle problems, help with work. fdc(4) joerg Just keep me informed of changes, try not to break it. sppp(4) joerg Just keep me informed of changes, try not to break it. -libc nectar Opportuntity for pre-commit review appreciated for - nsdispatch(3) and its consumers. unifdef(1) fanf Pre-commit review requested. ntp roberto Pre-commit review requested. inetd dwmalone Recommends pre-commit review. @@ -146,13 +138,7 @@ bin/dd/Makefile:MAINTAINER= green@FreeBSD.org games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch -sbin/dhclient/Makefile.inc:MAINTAINER= mbr -sys/compat/svr4/Makefile:MAINTAINER= newton@freebsd.org -sys/dev/bktr/CHANGELOG.TXT: * MAINTAINER = Roger Hardiman sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org -sys/modules/bktr/bktr_mem/Makefile:MAINTAINER= roger@freebsd.org -sys/modules/streams/Makefile:MAINTAINER= newton@atdot.dotat.org -sys/modules/svr4/Makefile:MAINTAINER= newton@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org usr.bin/locate/Makefile:MAINTAINER= wosch ==== //depot/projects/ia64/Makefile#50 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.333 2006/06/21 09:53:42 obrien Exp $ +# $FreeBSD: src/Makefile,v 1.334 2006/06/22 16:52:53 imp Exp $ # # The user-driven targets are: # @@ -206,9 +206,6 @@ @echo "'Rebuilding world', for how to upgrade your system." @echo "Define DESTDIR to where you want to install FreeBSD," @echo "including /, to override this warning and proceed as usual." - @echo "You may get the historical 'make world' behavior by defining" - @echo "HISTORICAL_MAKE_WORLD. You should understand the implications" - @echo "before doing this." @echo "" @echo "Bailing out now..." @false ==== //depot/projects/ia64/ObsoleteFiles.inc#7 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.37 2006/05/20 00:30:06 marcel Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.39 2006/07/06 11:43:53 delphij Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -2717,6 +2717,11 @@ OLD_FILES+=usr/games/worms OLD_FILES+=usr/games/wump +# 20060521: gethostbyaddr(3) ABI change +OLD_LIBS+=usr/lib/libroken.so.8 +OLD_LIBS+=lib/libatm.so.3 +OLD_LIBS+=lib/libc.so.6 +OLD_LIBS+=lib/libutil.so.5 # 20060413: shared library moved to /usr/lib OLD_LIBS+=lib/libgpib.so.1 # 20060127: revert libdisk to static-only ==== //depot/projects/ia64/UPDATING#88 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20060627: + The XBOX kernel now defaults to the nfe(4) driver instead of + the nve(4) driver. Please update your configuration + accordingly. + 20060511: The machdep.* sysctls and the adjkerntz utility have been modified a bit. The new adjkerntz utility uses the new @@ -580,4 +585,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.449 2006/05/15 15:47:45 keramida Exp $ +$FreeBSD: src/UPDATING,v 1.450 2006/06/27 20:22:32 rink Exp $ ==== //depot/projects/ia64/bin/cp/cp.c#18 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.52 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.53 2006/07/04 20:52:36 maxim Exp $"); /* * Cp copies source files to target files. @@ -476,6 +476,7 @@ } if (errno) err(1, "fts_read"); + fts_close(ftsp); return (rval); } ==== //depot/projects/ia64/contrib/openbsm/FREEBSD-upgrade#2 (text) ==== @@ -30,15 +30,15 @@ Normally, the CVS vendor import goes along the following lines: cd ~/p4/projects/trustedbsd/openbsm - cvs -d rwatson@repoman.FreeBSD.org:/home/ncvs -q import src/contrib/openbsm \ - TrustedBSD OPENBSM_1_0_ALPHA_1 + cvs -n -d rwatson@repoman.FreeBSD.org:/home/ncvs -q import \ + src/contrib/openbsm TrustedBSD OPENBSM_1_0_ALPHA_1 -Replacing the version string as required. Use the "-n" argument to CVS to -do a test run. +Replacing the version string as required. Remove the "-n" argument once +the import is tested in order to perform the actual import. Propagation of changes to src/sys/{bsm,security/audit} is something that requires careful coordination and attention to detail. These files are not on CVS vendor branches, but do have the same local vs. vendor merge issues. -$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.4 2006/03/05 13:30:37 rwatson Exp $ +$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.5 2006/06/27 17:55:38 rwatson Exp $ ==== //depot/projects/ia64/contrib/openbsm/HISTORY#3 (text) ==== @@ -1,3 +1,13 @@ +OpenBSM 1.0 alpha 7 + +- Adopted Solaris-compatible format for subject32_ex and subject64_ex + tokens, which previously did not correctly implement variable length + address storage. +- Prefer inttypes.h to stdint.h; enhance queue.h detection to test for + TAILQ_FOREACH_SAFE(), which is present in recent BSD queue.h's, but not + older ones. OpenBSM now builds on some FreeBSD 4.x version. +- New event types for extended attributes, ACLs, and scheduling. + OpenBSM 1.0 alpha 6 - Use AU_TO_WRITE and AU_NO_TO_WRITE for the 'keep' argument to au_close(); @@ -165,4 +175,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#12 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#15 $ ==== //depot/projects/ia64/contrib/openbsm/VERSION#3 (text) ==== @@ -1,1 +1,1 @@ -OPENBSM_1_0_ALPHA_6 +OPENBSM_1_0_ALPHA_7 ==== //depot/projects/ia64/contrib/openbsm/bsm/audit_kevents.h#2 (text) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_kevents.h#37 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_kevents.h#38 $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ @@ -383,7 +383,24 @@ #define AUE_ACL_DELETE_FD 403 /* FreeBSD. */ #define AUE_ACL_CHECK_FILE 404 /* FreeBSD. */ #define AUE_ACL_CHECK_FD 405 /* FreeBSD. */ -#define AUE_SYSARCH 406 /* FreeBSD. */ +#define AUE_ACL_GET_LINK 406 /* FreeBSD. */ +#define AUE_ACL_SET_LINK 407 /* FreeBSD. */ +#define AUE_ACL_DELETE_LINK 408 /* FreeBSD. */ +#define AUE_ACL_CHECK_LINK 409 /* FreeBSD. */ +#define AUE_SYSARCH 410 /* FreeBSD. */ +#define AUE_EXTATTRCTL 411 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FILE 412 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FILE 413 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FILE 414 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FILE 415 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FD 416 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FD 417 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FD 418 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FD 419 /* FreeBSD. */ +#define AUE_EXTATTR_GET_LINK 420 /* FreeBSD. */ +#define AUE_EXTATTR_SET_LINK 421 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_LINK 422 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_LINK 423 /* FreeBSD. */ /* * Darwin BSM uses a number of AUE_O_* definitions, which are aliased to the ==== //depot/projects/ia64/contrib/openbsm/bsm/audit_record.h#3 (text) ==== @@ -30,12 +30,14 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#17 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#19 $ */ #ifndef _BSM_AUDIT_RECORD_H_ #define _BSM_AUDIT_RECORD_H_ +#include /* struct timeval */ + /* * Token type identifiers. */ ==== //depot/projects/ia64/contrib/openbsm/bsm/libbsm.h#3 (text) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#20 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#21 $ */ #ifndef _LIBBSM_H_ @@ -43,7 +43,7 @@ #include #include -#include /* Required for audit.h. */ +#include /* Required for audit.h. */ #include /* Required for clock_t on Linux. */ #include ==== //depot/projects/ia64/contrib/openbsm/config/ltmain.sh#2 (text) ==== @@ -43,8 +43,8 @@ PROGRAM=ltmain.sh PACKAGE=libtool -VERSION=1.5.20 -TIMESTAMP=" (1.1220.2.287 2005/08/31 18:54:15)" +VERSION=1.5.22 +TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)" # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. @@ -132,6 +132,8 @@ show="$echo" show_help= execute_dlfiles= +duplicate_deps=no +preserve_args= lo2o="s/\\.lo\$/.${objext}/" o2lo="s/\\.${objext}\$/.lo/" @@ -139,6 +141,43 @@ # Shell function definitions: # This seems to be the best place for them +# func_mktempdir [string] +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, STRING is the basename for that directory. +func_mktempdir () +{ + my_template="${TMPDIR-/tmp}/${1-$progname}" + + if test "$run" = ":"; then + # Return a directory name, but don't create it in dry-run mode + my_tmpdir="${my_template}-$$" + else + + # If mktemp works, use that first and foremost + my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` + + if test ! -d "$my_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + my_tmpdir="${my_template}-${RANDOM-0}$$" + + save_mktempdir_umask=`umask` + umask 0077 + $mkdir "$my_tmpdir" + umask $save_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$my_tmpdir" || { + $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2 + exit $EXIT_FAILURE + } + fi + + $echo "X$my_tmpdir" | $Xsed +} + + # func_win32_libid arg # return the library type of file 'arg' # @@ -157,12 +196,11 @@ if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then win32_nmres=`eval $NM -f posix -A $1 | \ - sed -n -e '1,100{/ I /{x;/import/!{s/^/import/;h;p;};x;};}'` - if test "X$win32_nmres" = "Ximport" ; then - win32_libid_type="x86 archive import" - else - win32_libid_type="x86 archive static" - fi + $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'` + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac fi ;; *DLL*) @@ -188,6 +226,20 @@ # arg is usually of the form 'gcc ...' func_infer_tag () { + # FreeBSD-specific: where we install compilers with non-standard names + tag_compilers_CC="*cc cc* *gcc gcc*" + tag_compilers_CXX="*c++ c++* *g++ g++*" + base_compiler=`set -- "$@"; echo $1` + + # If $tagname isn't set, then try to infer if the default "CC" tag applies + if test -z "$tagname"; then + for zp in $tag_compilers_CC; do + case $base_compiler in + $zp) tagname="CC"; break;; + esac + done + fi + if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do @@ -228,7 +280,22 @@ break ;; esac - fi + + # FreeBSD-specific: try compilers based on inferred tag + if test -z "$tagname"; then + eval "tag_compilers=\$tag_compilers_${z}" + if test -n "$tag_compilers"; then + for zp in $tag_compilers; do + case $base_compiler in + $zp) tagname=$z; break;; + esac + done + if test -n "$tagname"; then + break + fi + fi + fi + fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command @@ -295,9 +362,9 @@ $run ${rm}r "$my_xdir" $show "$mkdir $my_xdir" $run $mkdir "$my_xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$my_xdir"; then - exit $status + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then + exit $exit_status fi case $host in *-darwin*) @@ -352,6 +419,8 @@ # Darwin sucks eval std_shrext=\"$shrext_cmds\" +disable_libs=no + # Parse our command line options once, thoroughly. while test "$#" -gt 0 do @@ -468,7 +537,11 @@ preserve_args="$preserve_args $arg" ;; - --tag) prevopt="--tag" prev=tag ;; + --tag) + prevopt="--tag" + prev=tag + preserve_args="$preserve_args --tag" + ;; --tag=*) set tag "$optarg" ${1+"$@"} shift @@ -500,6 +573,18 @@ exit $EXIT_FAILURE fi +case $disable_libs in +no) + ;; +shared) + build_libtool_libs=no + build_old_libs=yes + ;; +static) + build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` + ;; +esac + # If this variable is set in any of the actions, the command in it # will be execed at the end. This prevents here-documents from being # left over by shells. @@ -856,9 +941,9 @@ if test ! -d "${xdir}$objdir"; then $show "$mkdir ${xdir}$objdir" $run $mkdir ${xdir}$objdir - status=$? - if test "$status" -ne 0 && test ! -d "${xdir}$objdir"; then - exit $status + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "${xdir}$objdir"; then + exit $exit_status fi fi @@ -1061,6 +1146,7 @@ no_install=no objs= non_pic_objects= + notinst_path= # paths that contain not-installed libtool libraries precious_files_regex= prefer_static_libs=no preload=no @@ -1089,14 +1175,15 @@ if test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi + prefer_static_libs=yes else if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi + prefer_static_libs=built fi build_libtool_libs=no build_old_libs=yes - prefer_static_libs=yes break ;; esac @@ -1271,6 +1358,11 @@ if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" fi else # Only an error if not doing a dry-run. @@ -1354,8 +1446,8 @@ prev= continue ;; - darwin_framework) - compiler_flags="$compiler_flags $arg" + darwin_framework|darwin_framework_skip) + test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" prev= @@ -1419,13 +1511,17 @@ continue ;; - -framework|-arch) - prev=darwin_framework - compiler_flags="$compiler_flags $arg" + -framework|-arch|-isysroot) + case " $CC " in + *" ${arg} ${1} "* | *" ${arg} ${1} "*) + prev=darwin_framework_skip ;; + *) compiler_flags="$compiler_flags $arg" + prev=darwin_framework ;; + esac compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" - continue - ;; + continue + ;; -inst-prefix-dir) prev=inst_prefix @@ -1453,7 +1549,8 @@ absdir=`cd "$dir" && pwd` if test -z "$absdir"; then $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit $EXIT_FAILURE + absdir="$dir" + notinst_path="$notinst_path $dir" fi dir="$absdir" ;; @@ -1467,10 +1564,15 @@ esac case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; *) dllsearchpath="$dllsearchpath:$dir";; esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + *) dllsearchpath="$dllsearchpath:$testbindir";; + esac ;; esac continue @@ -1479,11 +1581,11 @@ -l*) if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then case $host in - *-*-cygwin* | *-*-pw32* | *-*-beos*) + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*) # These systems don't actually have a C or math library (as such) continue ;; - *-*-mingw* | *-*-os2*) + *-*-os2*) # These systems don't actually have a C library (as such) test "X$arg" = "X-lc" && continue ;; @@ -1495,6 +1597,15 @@ # Rhapsody C and math libraries are in the System framework deplibs="$deplibs -framework System" continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test "X$arg" = "X-lc" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test "X$arg" = "X-lc" && continue + ;; esac elif test "X$arg" = "X-lc_r"; then case $host in @@ -1522,6 +1633,7 @@ compiler_flags="$compiler_flags $arg" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" + deplibs="$deplibs $arg" continue ;; @@ -1536,7 +1648,12 @@ # +DA*, +DD* enable 64-bit mode on the HP compiler # -q* pass through compiler args for the IBM compiler # -m* pass through architecture-specific compiler args for GCC - -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*) + # -m*, -t[45]*, -txscale* pass through architecture-specific + # compiler args for GCC + # -pg pass through profiling flag for GCC + # @file GCC response files + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \ + -t[45]*|-txscale*|@*) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. @@ -1548,9 +1665,7 @@ esac compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" - if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" - fi + compiler_flags="$compiler_flags $arg" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 7 05:09:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CF39116A4E6; Fri, 7 Jul 2006 05:09:50 +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 A8E8F16A4DE for ; Fri, 7 Jul 2006 05:09:50 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EB28943D5D for ; Fri, 7 Jul 2006 05:09:42 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6759grr007318 for ; Fri, 7 Jul 2006 05:09:42 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6759cUY007312 for perforce@freebsd.org; Fri, 7 Jul 2006 05:09:38 GMT (envelope-from marcel@freebsd.org) Date: Fri, 7 Jul 2006 05:09:38 GMT Message-Id: <200607070509.k6759cUY007312@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 100840 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 05:09:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100840 Change 100840 by marcel@marcel_nfs on 2006/07/07 05:09:29 IFC @100834 Affected files ... .. //depot/projects/tty/MAINTAINERS#21 integrate .. //depot/projects/tty/Makefile#19 integrate .. //depot/projects/tty/ObsoleteFiles.inc#7 integrate .. //depot/projects/tty/UPDATING#30 integrate .. //depot/projects/tty/bin/cp/cp.c#7 integrate .. //depot/projects/tty/contrib/openbsm/FREEBSD-upgrade#2 integrate .. //depot/projects/tty/contrib/openbsm/HISTORY#3 integrate .. //depot/projects/tty/contrib/openbsm/VERSION#3 integrate .. //depot/projects/tty/contrib/openbsm/bsm/audit_kevents.h#2 integrate .. //depot/projects/tty/contrib/openbsm/bsm/audit_record.h#3 integrate .. //depot/projects/tty/contrib/openbsm/bsm/libbsm.h#3 integrate .. //depot/projects/tty/contrib/openbsm/config/ltmain.sh#2 integrate .. //depot/projects/tty/contrib/openbsm/configure#3 integrate .. //depot/projects/tty/contrib/openbsm/configure.ac#3 integrate .. //depot/projects/tty/contrib/openbsm/etc/audit_event#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_notify.c#2 integrate .. //depot/projects/tty/contrib/openbsm/libbsm/bsm_token.c#3 integrate .. //depot/projects/tty/contrib/openbsm/man/audit.log.5#2 integrate .. //depot/projects/tty/contrib/openbsm/test/bsm/generate.c#2 integrate .. //depot/projects/tty/include/malloc_np.h#2 integrate .. //depot/projects/tty/lib/libc/posix1e/mac_is_present.3#1 branch .. //depot/projects/tty/lib/libc/stdlib/malloc.c#16 integrate .. //depot/projects/tty/lib/libc/stdlib/tsearch.3#4 integrate .. //depot/projects/tty/lib/libutil/pidfile.c#3 integrate .. //depot/projects/tty/lib/msun/i387/Makefile.inc#3 integrate .. //depot/projects/tty/lib/msun/i387/e_scalb.S#3 delete .. //depot/projects/tty/lib/msun/i387/e_scalbf.S#3 delete .. //depot/projects/tty/lib/msun/src/e_scalbf.c#5 integrate .. //depot/projects/tty/lib/msun/src/s_tanh.c#2 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#38 integrate .. //depot/projects/tty/sbin/dhclient/dhclient.c#7 integrate .. //depot/projects/tty/sbin/gpt/add.c#7 integrate .. //depot/projects/tty/sbin/gpt/gpt.8#9 integrate .. //depot/projects/tty/sbin/gpt/gpt.c#6 integrate .. //depot/projects/tty/sbin/gpt/gpt.h#6 integrate .. //depot/projects/tty/sbin/gpt/label.c#2 integrate .. //depot/projects/tty/sbin/gpt/remove.c#5 integrate .. //depot/projects/tty/sbin/gpt/show.c#6 integrate .. //depot/projects/tty/sbin/ifconfig/ifconfig.8#19 integrate .. //depot/projects/tty/sbin/ifconfig/ifieee80211.c#11 integrate .. //depot/projects/tty/share/man/man4/Makefile#28 integrate .. //depot/projects/tty/share/man/man4/ata.4#12 integrate .. //depot/projects/tty/share/man/man4/enc.4#1 branch .. //depot/projects/tty/share/man/man4/fast_ipsec.4#4 integrate .. //depot/projects/tty/share/man/man4/geom_fox.4#2 integrate .. //depot/projects/tty/share/man/man4/nfe.4#1 branch .. //depot/projects/tty/share/man/man4/ng_netflow.4#8 integrate .. //depot/projects/tty/share/man/man4/ng_tag.4#1 branch .. //depot/projects/tty/share/man/man4/re.4#9 integrate .. //depot/projects/tty/share/man/man4/sched_core.4#2 integrate .. //depot/projects/tty/share/man/man4/uplcom.4#7 integrate .. //depot/projects/tty/share/man/man7/ports.7#10 integrate .. //depot/projects/tty/sys/Makefile#10 integrate .. //depot/projects/tty/sys/amd64/amd64/pmap.c#19 integrate .. //depot/projects/tty/sys/amd64/conf/GENERIC#21 integrate .. //depot/projects/tty/sys/amd64/conf/NOTES#16 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_proto.h#9 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_syscall.h#9 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_sysent.c#9 integrate .. //depot/projects/tty/sys/amd64/linux32/syscalls.master#9 integrate .. //depot/projects/tty/sys/arm/arm/elf_trampoline.c#6 integrate .. //depot/projects/tty/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/tty/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/tty/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/tty/sys/arm/at91/files.at91#2 integrate .. //depot/projects/tty/sys/arm/at91/uart_dev_at91usart.c#3 integrate .. //depot/projects/tty/sys/bsm/audit_kevents.h#4 integrate .. //depot/projects/tty/sys/bsm/audit_record.h#3 integrate .. //depot/projects/tty/sys/cam/cam_xpt.c#17 integrate .. //depot/projects/tty/sys/compat/freebsd32/freebsd32_proto.h#12 integrate .. //depot/projects/tty/sys/compat/freebsd32/freebsd32_syscall.h#12 integrate .. //depot/projects/tty/sys/compat/freebsd32/freebsd32_syscalls.c#12 integrate .. //depot/projects/tty/sys/compat/freebsd32/freebsd32_sysent.c#12 integrate .. //depot/projects/tty/sys/compat/freebsd32/syscalls.master#12 integrate .. //depot/projects/tty/sys/compat/linprocfs/linprocfs.c#17 integrate .. //depot/projects/tty/sys/compat/linux/linux_ioctl.c#16 integrate .. //depot/projects/tty/sys/compat/linux/linux_ipc.c#12 integrate .. //depot/projects/tty/sys/compat/linux/linux_misc.c#20 integrate .. //depot/projects/tty/sys/compat/linux/linux_util.h#7 integrate .. //depot/projects/tty/sys/compat/ndis/kern_ndis.c#12 integrate .. //depot/projects/tty/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_ipc.c#7 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_misc.c#16 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_proto.h#6 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_syscall.h#6 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_syscallnames.c#6 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_sysent.c#6 integrate .. //depot/projects/tty/sys/compat/svr4/syscalls.master#6 integrate .. //depot/projects/tty/sys/conf/NOTES#36 integrate .. //depot/projects/tty/sys/conf/files#47 integrate .. //depot/projects/tty/sys/conf/files.amd64#28 integrate .. //depot/projects/tty/sys/conf/files.i386#33 integrate .. //depot/projects/tty/sys/conf/files.ia64#25 integrate .. //depot/projects/tty/sys/conf/kern.mk#11 integrate .. //depot/projects/tty/sys/conf/kern.pre.mk#12 integrate .. //depot/projects/tty/sys/conf/kmod.mk#18 integrate .. //depot/projects/tty/sys/conf/options#34 integrate .. //depot/projects/tty/sys/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/tty/sys/dev/ata/ata-all.h#23 integrate .. //depot/projects/tty/sys/dev/ata/ata-chipset.c#30 integrate .. //depot/projects/tty/sys/dev/ata/ata-lowlevel.c#18 integrate .. //depot/projects/tty/sys/dev/ata/ata-pci.h#22 integrate .. //depot/projects/tty/sys/dev/ata/atapi-cd.c#20 integrate .. //depot/projects/tty/sys/dev/ath/if_ath.c#19 integrate .. //depot/projects/tty/sys/dev/ath/if_athioctl.h#9 integrate .. //depot/projects/tty/sys/dev/ath/if_athvar.h#15 integrate .. //depot/projects/tty/sys/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/tty/sys/dev/bge/if_bge.c#29 integrate .. //depot/projects/tty/sys/dev/bge/if_bgereg.h#21 integrate .. //depot/projects/tty/sys/dev/bktr/CHANGELOG.TXT#3 integrate .. //depot/projects/tty/sys/dev/fdc/fdc.c#7 integrate .. //depot/projects/tty/sys/dev/ic/nec765.h#3 integrate .. //depot/projects/tty/sys/dev/isp/isp.c#10 integrate .. //depot/projects/tty/sys/dev/isp/isp_pci.c#13 integrate .. //depot/projects/tty/sys/dev/isp/ispmbox.h#8 integrate .. //depot/projects/tty/sys/dev/isp/ispreg.h#5 integrate .. //depot/projects/tty/sys/dev/isp/ispvar.h#10 integrate .. //depot/projects/tty/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/tty/sys/dev/ispfw/ispfw.c#7 integrate .. //depot/projects/tty/sys/dev/mfi/mfi.c#4 integrate .. //depot/projects/tty/sys/dev/mii/acphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/amphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/bmtphy.c#6 integrate .. //depot/projects/tty/sys/dev/mii/brgphy.c#14 integrate .. //depot/projects/tty/sys/dev/mii/ciphy.c#5 integrate .. //depot/projects/tty/sys/dev/mii/e1000phy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/exphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/inphy.c#5 integrate .. //depot/projects/tty/sys/dev/mii/lxtphy.c#8 integrate .. //depot/projects/tty/sys/dev/mii/mii_physubr.c#9 integrate .. //depot/projects/tty/sys/dev/mii/mlphy.c#6 integrate .. //depot/projects/tty/sys/dev/mii/nsgphy.c#9 integrate .. //depot/projects/tty/sys/dev/mii/nsphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/pnaphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/qsphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/rgephy.c#6 integrate .. //depot/projects/tty/sys/dev/mii/rlphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/ruephy.c#4 integrate .. //depot/projects/tty/sys/dev/mii/tdkphy.c#8 integrate .. //depot/projects/tty/sys/dev/mii/tlphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/ukphy.c#7 integrate .. //depot/projects/tty/sys/dev/mii/xmphy.c#7 integrate .. //depot/projects/tty/sys/dev/mpt/mpt.c#10 integrate .. //depot/projects/tty/sys/dev/mpt/mpt.h#12 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_cam.c#7 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_pci.c#14 integrate .. //depot/projects/tty/sys/dev/nfe/if_nfe.c#1 branch .. //depot/projects/tty/sys/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/tty/sys/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/tty/sys/dev/puc/puc.c#13 integrate .. //depot/projects/tty/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/tty/sys/dev/puc/puc_pccard.c#6 integrate .. //depot/projects/tty/sys/dev/puc/puc_pci.c#9 integrate .. //depot/projects/tty/sys/dev/puc/pucdata.c#14 integrate .. //depot/projects/tty/sys/dev/re/if_re.c#19 integrate .. //depot/projects/tty/sys/dev/sio/sio.c#21 integrate .. //depot/projects/tty/sys/dev/sk/if_sk.c#4 integrate .. //depot/projects/tty/sys/dev/sound/pci/solo.c#9 integrate .. //depot/projects/tty/sys/dev/usb/if_aue.c#16 integrate .. //depot/projects/tty/sys/dev/usb/if_ural.c#11 integrate .. //depot/projects/tty/sys/dev/usb/uplcom.c#13 integrate .. //depot/projects/tty/sys/dev/usb/usbdevs#23 integrate .. //depot/projects/tty/sys/fs/devfs/devfs_vfsops.c#12 integrate .. //depot/projects/tty/sys/fs/devfs/devfs_vnops.c#16 integrate .. //depot/projects/tty/sys/fs/pseudofs/pseudofs_vnops.c#13 integrate .. //depot/projects/tty/sys/fs/udf/udf_vfsops.c#15 integrate .. //depot/projects/tty/sys/fs/unionfs/union_vnops.c#11 integrate .. //depot/projects/tty/sys/geom/geom_gpt.c#14 integrate .. //depot/projects/tty/sys/geom/mirror/g_mirror.c#12 integrate .. //depot/projects/tty/sys/geom/raid3/g_raid3.c#11 integrate .. //depot/projects/tty/sys/i386/conf/GENERIC#26 integrate .. //depot/projects/tty/sys/i386/conf/NOTES#30 integrate .. //depot/projects/tty/sys/i386/conf/XBOX#5 integrate .. //depot/projects/tty/sys/i386/i386/pmap.c#24 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_misc.c#11 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_msg.c#5 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_poll.h#3 delete .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_proto.h#7 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_syscall.h#7 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_sysent.c#8 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_xenix.h#5 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_xenix_syscall.h#5 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_xenix_sysent.c#6 integrate .. //depot/projects/tty/sys/i386/ibcs2/syscalls.master#7 integrate .. //depot/projects/tty/sys/i386/ibcs2/syscalls.xenix#5 integrate .. //depot/projects/tty/sys/i386/linux/linux_proto.h#14 integrate .. //depot/projects/tty/sys/i386/linux/linux_syscall.h#14 integrate .. //depot/projects/tty/sys/i386/linux/linux_sysent.c#15 integrate .. //depot/projects/tty/sys/i386/linux/syscalls.master#14 integrate .. //depot/projects/tty/sys/ia64/conf/GENERIC#16 integrate .. //depot/projects/tty/sys/ia64/disasm/disasm.h#3 integrate .. //depot/projects/tty/sys/ia64/disasm/disasm_decode.c#4 integrate .. //depot/projects/tty/sys/ia64/disasm/disasm_extract.c#3 integrate .. //depot/projects/tty/sys/ia64/disasm/disasm_format.c#3 integrate .. //depot/projects/tty/sys/ia64/disasm/disasm_int.h#3 integrate .. //depot/projects/tty/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/tty/sys/ia64/ia64/machdep.c#19 integrate .. //depot/projects/tty/sys/ia64/ia64/pmap.c#20 integrate .. //depot/projects/tty/sys/ia64/ia64/trap.c#18 integrate .. //depot/projects/tty/sys/ia64/include/ieeefp.h#3 integrate .. //depot/projects/tty/sys/ia64/include/md_var.h#10 integrate .. //depot/projects/tty/sys/kern/init_sysent.c#18 integrate .. //depot/projects/tty/sys/kern/kern_acl.c#6 integrate .. //depot/projects/tty/sys/kern/kern_descrip.c#19 integrate .. //depot/projects/tty/sys/kern/kern_fork.c#16 integrate .. //depot/projects/tty/sys/kern/kern_ktrace.c#17 integrate .. //depot/projects/tty/sys/kern/kern_linker.c#14 integrate .. //depot/projects/tty/sys/kern/kern_module.c#9 integrate .. //depot/projects/tty/sys/kern/kern_prot.c#14 integrate .. //depot/projects/tty/sys/kern/kern_thread.c#19 integrate .. //depot/projects/tty/sys/kern/sched_4bsd.c#15 integrate .. //depot/projects/tty/sys/kern/sched_core.c#2 integrate .. //depot/projects/tty/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/tty/sys/kern/subr_firmware.c#3 integrate .. //depot/projects/tty/sys/kern/syscalls.c#18 integrate .. //depot/projects/tty/sys/kern/syscalls.master#19 integrate .. //depot/projects/tty/sys/kern/sysv_sem.c#14 integrate .. //depot/projects/tty/sys/kern/uipc_socket2.c#19 integrate .. //depot/projects/tty/sys/kern/uipc_usrreq.c#17 integrate .. //depot/projects/tty/sys/kern/vfs_init.c#10 integrate .. //depot/projects/tty/sys/kern/vfs_mount.c#24 integrate .. //depot/projects/tty/sys/kern/vfs_subr.c#29 integrate .. //depot/projects/tty/sys/kern/vfs_syscalls.c#24 integrate .. //depot/projects/tty/sys/kern/vfs_vnops.c#17 integrate .. //depot/projects/tty/sys/modules/Makefile#31 integrate .. //depot/projects/tty/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/tty/sys/modules/netgraph/Makefile#11 integrate .. //depot/projects/tty/sys/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/tty/sys/modules/nfe/Makefile#1 branch .. //depot/projects/tty/sys/modules/streams/Makefile#3 integrate .. //depot/projects/tty/sys/modules/svr4/Makefile#4 integrate .. //depot/projects/tty/sys/net/bpf.c#21 integrate .. //depot/projects/tty/sys/net/if.c#25 integrate .. //depot/projects/tty/sys/net/if_atmsubr.c#13 integrate .. //depot/projects/tty/sys/net/if_enc.c#1 branch .. //depot/projects/tty/sys/net/if_gif.c#14 integrate .. //depot/projects/tty/sys/net/if_stf.c#15 integrate .. //depot/projects/tty/sys/net/if_tun.c#15 integrate .. //depot/projects/tty/sys/net/if_types.h#9 integrate .. //depot/projects/tty/sys/net/if_vlan.c#16 integrate .. //depot/projects/tty/sys/net/rtsock.c#15 integrate .. //depot/projects/tty/sys/net80211/ieee80211_freebsd.c#7 integrate .. //depot/projects/tty/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#9 integrate .. //depot/projects/tty/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#4 integrate .. //depot/projects/tty/sys/netgraph/ng_tag.c#1 branch .. //depot/projects/tty/sys/netgraph/ng_tag.h#1 branch .. //depot/projects/tty/sys/netinet/if_ether.c#17 integrate .. //depot/projects/tty/sys/netinet/in_pcb.c#19 integrate .. //depot/projects/tty/sys/netinet/in_rmx.c#8 integrate .. //depot/projects/tty/sys/netinet/ip_divert.c#15 integrate .. //depot/projects/tty/sys/netinet/ip_fw2.c#30 integrate .. //depot/projects/tty/sys/netinet/ip_ipsec.c#3 integrate .. //depot/projects/tty/sys/netinet/ip_output.c#22 integrate .. //depot/projects/tty/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/tty/sys/netinet/tcp_input.c#26 integrate .. //depot/projects/tty/sys/netinet/tcp_syncache.c#18 integrate .. //depot/projects/tty/sys/netinet/tcp_usrreq.c#18 integrate .. //depot/projects/tty/sys/netinet/tcp_var.h#20 integrate .. //depot/projects/tty/sys/netinet6/in6.c#14 integrate .. //depot/projects/tty/sys/netinet6/in6_cksum.c#8 integrate .. //depot/projects/tty/sys/netinet6/in6_pcb.c#13 integrate .. //depot/projects/tty/sys/netinet6/in6_rmx.c#7 integrate .. //depot/projects/tty/sys/netinet6/in6_var.h#10 integrate .. //depot/projects/tty/sys/netinet6/ipsec.c#12 integrate .. //depot/projects/tty/sys/netinet6/raw_ip6.c#13 integrate .. //depot/projects/tty/sys/netipsec/ipsec.h#7 integrate .. //depot/projects/tty/sys/netipsec/ipsec_input.c#9 integrate .. //depot/projects/tty/sys/netipsec/ipsec_osdep.h#3 integrate .. //depot/projects/tty/sys/netipsec/ipsec_output.c#8 integrate .. //depot/projects/tty/sys/netipsec/xform_ipip.c#9 integrate .. //depot/projects/tty/sys/nfsclient/bootp_subr.c#12 integrate .. //depot/projects/tty/sys/nfsclient/nfs_diskless.c#12 integrate .. //depot/projects/tty/sys/nfsserver/nfs_srvcache.c#7 integrate .. //depot/projects/tty/sys/nfsserver/nfsrvcache.h#5 integrate .. //depot/projects/tty/sys/pc98/conf/GENERIC#19 integrate .. //depot/projects/tty/sys/pci/agp_i810.c#13 integrate .. //depot/projects/tty/sys/pci/if_rlreg.h#16 integrate .. //depot/projects/tty/sys/powerpc/conf/GENERIC#16 integrate .. //depot/projects/tty/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/tty/sys/security/audit/audit.h#2 integrate .. //depot/projects/tty/sys/security/audit/audit_arg.c#3 integrate .. //depot/projects/tty/sys/security/audit/audit_bsm.c#3 integrate .. //depot/projects/tty/sys/sparc64/conf/GENERIC#21 integrate .. //depot/projects/tty/sys/sys/gpt.h#5 integrate .. //depot/projects/tty/sys/sys/rwlock.h#3 integrate .. //depot/projects/tty/sys/sys/syscall.h#18 integrate .. //depot/projects/tty/sys/sys/syscall.mk#18 integrate .. //depot/projects/tty/sys/sys/syscallsubr.h#16 integrate .. //depot/projects/tty/sys/sys/sysproto.h#19 integrate .. //depot/projects/tty/sys/vm/vm_page.c#17 integrate .. //depot/projects/tty/sys/vm/vm_pageq.c#12 integrate .. //depot/projects/tty/tools/kerneldoc/Doxyfile#1 branch .. //depot/projects/tty/tools/kerneldoc/Makefile#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Dependencies#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-cam#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-crypto#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-dev_pci#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-dev_sound#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-dev_usb#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-geom#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-i4b#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-kern#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-libkern#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-linux#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-net80211#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-netgraph#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-netinet#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-netinet6#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-netipsec#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-opencrypto#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-vm#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/Makefile#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/README#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/common-Doxyfile#1 branch .. //depot/projects/tty/tools/kerneldoc/subsys/notreviewed.dox#1 branch .. //depot/projects/tty/tools/tools/ath/athstats/athstats.c#2 integrate .. //depot/projects/tty/tools/tools/net80211/wlanwatch/wlanwatch.c#2 integrate .. //depot/projects/tty/usr.bin/calendar/calendars/calendar.freebsd#19 integrate .. //depot/projects/tty/usr.bin/netstat/route.c#9 integrate .. //depot/projects/tty/usr.bin/tail/extern.h#3 integrate .. //depot/projects/tty/usr.bin/tail/forward.c#6 integrate .. //depot/projects/tty/usr.bin/tail/tail.1#4 integrate .. //depot/projects/tty/usr.bin/tail/tail.c#5 integrate .. //depot/projects/tty/usr.sbin/kgmon/kgmon.c#3 integrate .. //depot/projects/tty/usr.sbin/lpr/lpd/printjob.c#4 integrate .. //depot/projects/tty/usr.sbin/mtree/misc.c#6 integrate .. //depot/projects/tty/usr.sbin/mtree/mtree.8#10 integrate .. //depot/projects/tty/usr.sbin/mtree/mtree.h#4 integrate .. //depot/projects/tty/usr.sbin/mtree/spec.c#7 integrate .. //depot/projects/tty/usr.sbin/mtree/test/test05.sh#1 branch .. //depot/projects/tty/usr.sbin/mtree/verify.c#8 integrate .. //depot/projects/tty/usr.sbin/newsyslog/newsyslog.c#13 integrate .. //depot/projects/tty/usr.sbin/ngctl/config.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/connect.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/debug.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/list.c#6 integrate .. //depot/projects/tty/usr.sbin/ngctl/main.c#7 integrate .. //depot/projects/tty/usr.sbin/ngctl/mkpeer.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/msg.c#5 integrate .. //depot/projects/tty/usr.sbin/ngctl/name.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/rmhook.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/show.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/shutdown.c#3 integrate .. //depot/projects/tty/usr.sbin/ngctl/status.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/types.c#4 integrate .. //depot/projects/tty/usr.sbin/ngctl/write.c#3 integrate .. //depot/projects/tty/usr.sbin/sade/Makefile#1 branch .. //depot/projects/tty/usr.sbin/sade/command.c#1 branch .. //depot/projects/tty/usr.sbin/sade/config.c#1 branch .. //depot/projects/tty/usr.sbin/sade/devices.c#1 branch .. //depot/projects/tty/usr.sbin/sade/disks.c#1 branch .. //depot/projects/tty/usr.sbin/sade/dispatch.c#1 branch .. //depot/projects/tty/usr.sbin/sade/dmenu.c#1 branch .. //depot/projects/tty/usr.sbin/sade/globals.c#1 branch .. //depot/projects/tty/usr.sbin/sade/help/partition.hlp#1 branch .. //depot/projects/tty/usr.sbin/sade/help/slice.hlp#1 branch .. //depot/projects/tty/usr.sbin/sade/install.c#1 branch .. //depot/projects/tty/usr.sbin/sade/keymap.c#1 branch .. //depot/projects/tty/usr.sbin/sade/label.c#1 branch .. //depot/projects/tty/usr.sbin/sade/list.h#1 branch .. //depot/projects/tty/usr.sbin/sade/main.c#1 branch .. //depot/projects/tty/usr.sbin/sade/menus.c#1 branch .. //depot/projects/tty/usr.sbin/sade/misc.c#1 branch .. //depot/projects/tty/usr.sbin/sade/msg.c#1 branch .. //depot/projects/tty/usr.sbin/sade/rtermcap.c#1 branch .. //depot/projects/tty/usr.sbin/sade/sade.8#1 branch .. //depot/projects/tty/usr.sbin/sade/sade.h#1 branch .. //depot/projects/tty/usr.sbin/sade/system.c#1 branch .. //depot/projects/tty/usr.sbin/sade/termcap.c#1 branch .. //depot/projects/tty/usr.sbin/sade/usb.c#1 branch .. //depot/projects/tty/usr.sbin/sade/variable.c#1 branch .. //depot/projects/tty/usr.sbin/sade/wizard.c#1 branch Differences ... ==== //depot/projects/tty/MAINTAINERS#21 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.135 2006/06/03 01:52:11 scottl Exp $ +$FreeBSD: src/MAINTAINERS,v 1.137 2006/07/04 02:01:48 brooks Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -35,10 +35,6 @@ NEWCARD imp Pre-commit review requested. OLDCARD imp Pre-commit review requested. pci bus imp,jhb Pre-commit review requested. -telnet markm Heads-up appreciated. Try not to break it. -secure/* markm Heads-up appreciated. Try not to break it. -kerberos5 nectar Pre-commit review requested. -heimdal nectar Pre-commit review requested. cdboot jhb Pre-commit review requested. pxeboot jhb Pre-commit review requested. witness jhb Pre-commit review requested. @@ -63,8 +59,6 @@ Keep in sync with -STABLE. etc/sendmail gshapiro Pre-commit review requested. Keep in sync with -STABLE. -dhcp mbr Needs to pre-approve commits to contrib/isc-dhcp, so - changes can be made to the isc.org CVS repository. libfetch des Advance notification requested. fetch des Advance notification requested. libpam des Pre-commit review requested. @@ -91,8 +85,6 @@ libufs jmallett Willing to handle problems, help with work. fdc(4) joerg Just keep me informed of changes, try not to break it. sppp(4) joerg Just keep me informed of changes, try not to break it. -libc nectar Opportuntity for pre-commit review appreciated for - nsdispatch(3) and its consumers. unifdef(1) fanf Pre-commit review requested. ntp roberto Pre-commit review requested. inetd dwmalone Recommends pre-commit review. @@ -146,13 +138,7 @@ bin/dd/Makefile:MAINTAINER= green@FreeBSD.org games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch -sbin/dhclient/Makefile.inc:MAINTAINER= mbr -sys/compat/svr4/Makefile:MAINTAINER= newton@freebsd.org -sys/dev/bktr/CHANGELOG.TXT: * MAINTAINER = Roger Hardiman sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org -sys/modules/bktr/bktr_mem/Makefile:MAINTAINER= roger@freebsd.org -sys/modules/streams/Makefile:MAINTAINER= newton@atdot.dotat.org -sys/modules/svr4/Makefile:MAINTAINER= newton@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org usr.bin/locate/Makefile:MAINTAINER= wosch ==== //depot/projects/tty/Makefile#19 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.333 2006/06/21 09:53:42 obrien Exp $ +# $FreeBSD: src/Makefile,v 1.334 2006/06/22 16:52:53 imp Exp $ # # The user-driven targets are: # @@ -206,9 +206,6 @@ @echo "'Rebuilding world', for how to upgrade your system." @echo "Define DESTDIR to where you want to install FreeBSD," @echo "including /, to override this warning and proceed as usual." - @echo "You may get the historical 'make world' behavior by defining" - @echo "HISTORICAL_MAKE_WORLD. You should understand the implications" - @echo "before doing this." @echo "" @echo "Bailing out now..." @false ==== //depot/projects/tty/ObsoleteFiles.inc#7 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.37 2006/05/20 00:30:06 marcel Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.39 2006/07/06 11:43:53 delphij Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -2717,6 +2717,11 @@ OLD_FILES+=usr/games/worms OLD_FILES+=usr/games/wump +# 20060521: gethostbyaddr(3) ABI change +OLD_LIBS+=usr/lib/libroken.so.8 +OLD_LIBS+=lib/libatm.so.3 +OLD_LIBS+=lib/libc.so.6 +OLD_LIBS+=lib/libutil.so.5 # 20060413: shared library moved to /usr/lib OLD_LIBS+=lib/libgpib.so.1 # 20060127: revert libdisk to static-only ==== //depot/projects/tty/UPDATING#30 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20060627: + The XBOX kernel now defaults to the nfe(4) driver instead of + the nve(4) driver. Please update your configuration + accordingly. + 20060511: The machdep.* sysctls and the adjkerntz utility have been modified a bit. The new adjkerntz utility uses the new @@ -580,4 +585,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.449 2006/05/15 15:47:45 keramida Exp $ +$FreeBSD: src/UPDATING,v 1.450 2006/06/27 20:22:32 rink Exp $ ==== //depot/projects/tty/bin/cp/cp.c#7 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.52 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.53 2006/07/04 20:52:36 maxim Exp $"); /* * Cp copies source files to target files. @@ -476,6 +476,7 @@ } if (errno) err(1, "fts_read"); + fts_close(ftsp); return (rval); } ==== //depot/projects/tty/contrib/openbsm/FREEBSD-upgrade#2 (text) ==== @@ -30,15 +30,15 @@ Normally, the CVS vendor import goes along the following lines: cd ~/p4/projects/trustedbsd/openbsm - cvs -d rwatson@repoman.FreeBSD.org:/home/ncvs -q import src/contrib/openbsm \ - TrustedBSD OPENBSM_1_0_ALPHA_1 + cvs -n -d rwatson@repoman.FreeBSD.org:/home/ncvs -q import \ + src/contrib/openbsm TrustedBSD OPENBSM_1_0_ALPHA_1 -Replacing the version string as required. Use the "-n" argument to CVS to -do a test run. +Replacing the version string as required. Remove the "-n" argument once +the import is tested in order to perform the actual import. Propagation of changes to src/sys/{bsm,security/audit} is something that requires careful coordination and attention to detail. These files are not on CVS vendor branches, but do have the same local vs. vendor merge issues. -$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.4 2006/03/05 13:30:37 rwatson Exp $ +$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.5 2006/06/27 17:55:38 rwatson Exp $ ==== //depot/projects/tty/contrib/openbsm/HISTORY#3 (text) ==== @@ -1,3 +1,13 @@ +OpenBSM 1.0 alpha 7 + +- Adopted Solaris-compatible format for subject32_ex and subject64_ex + tokens, which previously did not correctly implement variable length + address storage. +- Prefer inttypes.h to stdint.h; enhance queue.h detection to test for + TAILQ_FOREACH_SAFE(), which is present in recent BSD queue.h's, but not + older ones. OpenBSM now builds on some FreeBSD 4.x version. +- New event types for extended attributes, ACLs, and scheduling. + OpenBSM 1.0 alpha 6 - Use AU_TO_WRITE and AU_NO_TO_WRITE for the 'keep' argument to au_close(); @@ -165,4 +175,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#12 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#15 $ ==== //depot/projects/tty/contrib/openbsm/VERSION#3 (text) ==== @@ -1,1 +1,1 @@ -OPENBSM_1_0_ALPHA_6 +OPENBSM_1_0_ALPHA_7 ==== //depot/projects/tty/contrib/openbsm/bsm/audit_kevents.h#2 (text) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_kevents.h#37 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_kevents.h#38 $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ @@ -383,7 +383,24 @@ #define AUE_ACL_DELETE_FD 403 /* FreeBSD. */ #define AUE_ACL_CHECK_FILE 404 /* FreeBSD. */ #define AUE_ACL_CHECK_FD 405 /* FreeBSD. */ -#define AUE_SYSARCH 406 /* FreeBSD. */ +#define AUE_ACL_GET_LINK 406 /* FreeBSD. */ +#define AUE_ACL_SET_LINK 407 /* FreeBSD. */ +#define AUE_ACL_DELETE_LINK 408 /* FreeBSD. */ +#define AUE_ACL_CHECK_LINK 409 /* FreeBSD. */ +#define AUE_SYSARCH 410 /* FreeBSD. */ +#define AUE_EXTATTRCTL 411 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FILE 412 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FILE 413 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FILE 414 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FILE 415 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FD 416 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FD 417 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FD 418 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FD 419 /* FreeBSD. */ +#define AUE_EXTATTR_GET_LINK 420 /* FreeBSD. */ +#define AUE_EXTATTR_SET_LINK 421 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_LINK 422 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_LINK 423 /* FreeBSD. */ /* * Darwin BSM uses a number of AUE_O_* definitions, which are aliased to the ==== //depot/projects/tty/contrib/openbsm/bsm/audit_record.h#3 (text) ==== @@ -30,12 +30,14 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#17 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#19 $ */ #ifndef _BSM_AUDIT_RECORD_H_ #define _BSM_AUDIT_RECORD_H_ +#include /* struct timeval */ + /* * Token type identifiers. */ ==== //depot/projects/tty/contrib/openbsm/bsm/libbsm.h#3 (text) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#20 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#21 $ */ #ifndef _LIBBSM_H_ @@ -43,7 +43,7 @@ #include #include -#include /* Required for audit.h. */ +#include /* Required for audit.h. */ #include /* Required for clock_t on Linux. */ #include ==== //depot/projects/tty/contrib/openbsm/config/ltmain.sh#2 (text) ==== @@ -43,8 +43,8 @@ PROGRAM=ltmain.sh PACKAGE=libtool -VERSION=1.5.20 -TIMESTAMP=" (1.1220.2.287 2005/08/31 18:54:15)" +VERSION=1.5.22 +TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)" # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. @@ -132,6 +132,8 @@ show="$echo" show_help= execute_dlfiles= +duplicate_deps=no +preserve_args= lo2o="s/\\.lo\$/.${objext}/" o2lo="s/\\.${objext}\$/.lo/" @@ -139,6 +141,43 @@ # Shell function definitions: # This seems to be the best place for them +# func_mktempdir [string] +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, STRING is the basename for that directory. +func_mktempdir () +{ + my_template="${TMPDIR-/tmp}/${1-$progname}" + + if test "$run" = ":"; then + # Return a directory name, but don't create it in dry-run mode + my_tmpdir="${my_template}-$$" + else + + # If mktemp works, use that first and foremost + my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` + + if test ! -d "$my_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + my_tmpdir="${my_template}-${RANDOM-0}$$" + + save_mktempdir_umask=`umask` + umask 0077 + $mkdir "$my_tmpdir" + umask $save_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$my_tmpdir" || { + $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2 + exit $EXIT_FAILURE + } + fi + + $echo "X$my_tmpdir" | $Xsed +} + + # func_win32_libid arg # return the library type of file 'arg' # @@ -157,12 +196,11 @@ if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then win32_nmres=`eval $NM -f posix -A $1 | \ - sed -n -e '1,100{/ I /{x;/import/!{s/^/import/;h;p;};x;};}'` - if test "X$win32_nmres" = "Ximport" ; then - win32_libid_type="x86 archive import" - else - win32_libid_type="x86 archive static" - fi + $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'` + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac fi ;; *DLL*) @@ -188,6 +226,20 @@ # arg is usually of the form 'gcc ...' func_infer_tag () { + # FreeBSD-specific: where we install compilers with non-standard names + tag_compilers_CC="*cc cc* *gcc gcc*" + tag_compilers_CXX="*c++ c++* *g++ g++*" + base_compiler=`set -- "$@"; echo $1` + + # If $tagname isn't set, then try to infer if the default "CC" tag applies + if test -z "$tagname"; then + for zp in $tag_compilers_CC; do + case $base_compiler in + $zp) tagname="CC"; break;; + esac + done + fi + if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do @@ -228,7 +280,22 @@ break ;; esac - fi + + # FreeBSD-specific: try compilers based on inferred tag + if test -z "$tagname"; then + eval "tag_compilers=\$tag_compilers_${z}" + if test -n "$tag_compilers"; then + for zp in $tag_compilers; do + case $base_compiler in + $zp) tagname=$z; break;; + esac + done + if test -n "$tagname"; then + break + fi + fi + fi + fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command @@ -295,9 +362,9 @@ $run ${rm}r "$my_xdir" $show "$mkdir $my_xdir" $run $mkdir "$my_xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$my_xdir"; then - exit $status + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then + exit $exit_status fi case $host in *-darwin*) @@ -352,6 +419,8 @@ # Darwin sucks eval std_shrext=\"$shrext_cmds\" +disable_libs=no + # Parse our command line options once, thoroughly. while test "$#" -gt 0 do @@ -468,7 +537,11 @@ preserve_args="$preserve_args $arg" ;; - --tag) prevopt="--tag" prev=tag ;; + --tag) + prevopt="--tag" + prev=tag + preserve_args="$preserve_args --tag" + ;; --tag=*) set tag "$optarg" ${1+"$@"} shift @@ -500,6 +573,18 @@ exit $EXIT_FAILURE fi +case $disable_libs in +no) + ;; +shared) + build_libtool_libs=no + build_old_libs=yes + ;; +static) + build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` + ;; +esac + # If this variable is set in any of the actions, the command in it # will be execed at the end. This prevents here-documents from being # left over by shells. @@ -856,9 +941,9 @@ if test ! -d "${xdir}$objdir"; then $show "$mkdir ${xdir}$objdir" $run $mkdir ${xdir}$objdir - status=$? - if test "$status" -ne 0 && test ! -d "${xdir}$objdir"; then - exit $status + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "${xdir}$objdir"; then + exit $exit_status fi fi @@ -1061,6 +1146,7 @@ no_install=no objs= non_pic_objects= + notinst_path= # paths that contain not-installed libtool libraries precious_files_regex= prefer_static_libs=no preload=no @@ -1089,14 +1175,15 @@ if test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi + prefer_static_libs=yes else if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi + prefer_static_libs=built fi build_libtool_libs=no build_old_libs=yes - prefer_static_libs=yes break ;; esac @@ -1271,6 +1358,11 @@ if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" fi else # Only an error if not doing a dry-run. @@ -1354,8 +1446,8 @@ prev= continue ;; - darwin_framework) - compiler_flags="$compiler_flags $arg" + darwin_framework|darwin_framework_skip) + test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" prev= @@ -1419,13 +1511,17 @@ continue ;; - -framework|-arch) - prev=darwin_framework - compiler_flags="$compiler_flags $arg" + -framework|-arch|-isysroot) + case " $CC " in + *" ${arg} ${1} "* | *" ${arg} ${1} "*) + prev=darwin_framework_skip ;; + *) compiler_flags="$compiler_flags $arg" + prev=darwin_framework ;; + esac compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" - continue - ;; + continue + ;; -inst-prefix-dir) prev=inst_prefix @@ -1453,7 +1549,8 @@ absdir=`cd "$dir" && pwd` if test -z "$absdir"; then $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit $EXIT_FAILURE + absdir="$dir" + notinst_path="$notinst_path $dir" fi dir="$absdir" ;; @@ -1467,10 +1564,15 @@ esac case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; *) dllsearchpath="$dllsearchpath:$dir";; esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + *) dllsearchpath="$dllsearchpath:$testbindir";; + esac ;; esac continue @@ -1479,11 +1581,11 @@ -l*) if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then case $host in - *-*-cygwin* | *-*-pw32* | *-*-beos*) + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*) # These systems don't actually have a C or math library (as such) continue ;; - *-*-mingw* | *-*-os2*) + *-*-os2*) # These systems don't actually have a C library (as such) test "X$arg" = "X-lc" && continue ;; @@ -1495,6 +1597,15 @@ # Rhapsody C and math libraries are in the System framework deplibs="$deplibs -framework System" continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test "X$arg" = "X-lc" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test "X$arg" = "X-lc" && continue + ;; esac elif test "X$arg" = "X-lc_r"; then case $host in @@ -1522,6 +1633,7 @@ compiler_flags="$compiler_flags $arg" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" + deplibs="$deplibs $arg" continue ;; @@ -1536,7 +1648,12 @@ # +DA*, +DD* enable 64-bit mode on the HP compiler # -q* pass through compiler args for the IBM compiler # -m* pass through architecture-specific compiler args for GCC - -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*) + # -m*, -t[45]*, -txscale* pass through architecture-specific + # compiler args for GCC + # -pg pass through profiling flag for GCC + # @file GCC response files + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \ + -t[45]*|-txscale*|@*) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. @@ -1548,9 +1665,7 @@ esac compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" - if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" - fi + compiler_flags="$compiler_flags $arg" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 7 05:24:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 70FE716A4E5; Fri, 7 Jul 2006 05:24:05 +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 4E21216A4DA for ; Fri, 7 Jul 2006 05:24:05 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 926C443D46 for ; Fri, 7 Jul 2006 05:24:04 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k675O4PU008249 for ; Fri, 7 Jul 2006 05:24:04 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k675O0qb008245 for perforce@freebsd.org; Fri, 7 Jul 2006 05:24:00 GMT (envelope-from marcel@freebsd.org) Date: Fri, 7 Jul 2006 05:24:00 GMT Message-Id: <200607070524.k675O0qb008245@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 100842 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 05:24:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=100842 Change 100842 by marcel@marcel_nfs on 2006/07/07 05:23:10 IFC @100834 Affected files ... .. //depot/projects/uart/Makefile#7 integrate .. //depot/projects/uart/amd64/amd64/pmap.c#40 integrate .. //depot/projects/uart/amd64/conf/GENERIC#22 integrate .. //depot/projects/uart/amd64/conf/NOTES#11 integrate .. //depot/projects/uart/amd64/linux32/linux32_proto.h#8 integrate .. //depot/projects/uart/amd64/linux32/linux32_syscall.h#8 integrate .. //depot/projects/uart/amd64/linux32/linux32_sysent.c#8 integrate .. //depot/projects/uart/amd64/linux32/syscalls.master#8 integrate .. //depot/projects/uart/arm/arm/elf_trampoline.c#6 integrate .. //depot/projects/uart/arm/at91/at91_pio.c#2 integrate .. //depot/projects/uart/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/uart/arm/at91/at91_piovar.h#1 branch .. //depot/projects/uart/arm/at91/files.at91#3 integrate .. //depot/projects/uart/arm/at91/uart_dev_at91usart.c#6 integrate .. //depot/projects/uart/bsm/audit_kevents.h#4 integrate .. //depot/projects/uart/bsm/audit_record.h#3 integrate .. //depot/projects/uart/cam/cam_xpt.c#13 integrate .. //depot/projects/uart/compat/freebsd32/freebsd32_proto.h#15 integrate .. //depot/projects/uart/compat/freebsd32/freebsd32_syscall.h#15 integrate .. //depot/projects/uart/compat/freebsd32/freebsd32_syscalls.c#15 integrate .. //depot/projects/uart/compat/freebsd32/freebsd32_sysent.c#15 integrate .. //depot/projects/uart/compat/freebsd32/syscalls.master#14 integrate .. //depot/projects/uart/compat/linprocfs/linprocfs.c#19 integrate .. //depot/projects/uart/compat/linux/linux_ioctl.c#11 integrate .. //depot/projects/uart/compat/linux/linux_ipc.c#7 integrate .. //depot/projects/uart/compat/linux/linux_misc.c#16 integrate .. //depot/projects/uart/compat/linux/linux_util.h#7 integrate .. //depot/projects/uart/compat/ndis/kern_ndis.c#8 integrate .. //depot/projects/uart/compat/svr4/Makefile#2 integrate .. //depot/projects/uart/compat/svr4/svr4_ipc.c#6 integrate .. //depot/projects/uart/compat/svr4/svr4_misc.c#10 integrate .. //depot/projects/uart/compat/svr4/svr4_proto.h#5 integrate .. //depot/projects/uart/compat/svr4/svr4_syscall.h#5 integrate .. //depot/projects/uart/compat/svr4/svr4_syscallnames.c#5 integrate .. //depot/projects/uart/compat/svr4/svr4_sysent.c#5 integrate .. //depot/projects/uart/compat/svr4/syscalls.master#5 integrate .. //depot/projects/uart/conf/NOTES#41 integrate .. //depot/projects/uart/conf/files#73 integrate .. //depot/projects/uart/conf/files.amd64#24 integrate .. //depot/projects/uart/conf/files.i386#29 integrate .. //depot/projects/uart/conf/files.ia64#18 integrate .. //depot/projects/uart/conf/kern.mk#8 integrate .. //depot/projects/uart/conf/kern.pre.mk#12 integrate .. //depot/projects/uart/conf/kmod.mk#22 integrate .. //depot/projects/uart/conf/options#39 integrate .. //depot/projects/uart/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/uart/dev/ata/ata-all.h#15 integrate .. //depot/projects/uart/dev/ata/ata-chipset.c#21 integrate .. //depot/projects/uart/dev/ata/ata-lowlevel.c#20 integrate .. //depot/projects/uart/dev/ata/ata-pci.h#15 integrate .. //depot/projects/uart/dev/ata/atapi-cd.c#19 integrate .. //depot/projects/uart/dev/ath/if_ath.c#32 integrate .. //depot/projects/uart/dev/ath/if_athioctl.h#10 integrate .. //depot/projects/uart/dev/ath/if_athvar.h#21 integrate .. //depot/projects/uart/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/uart/dev/bge/if_bge.c#29 integrate .. //depot/projects/uart/dev/bge/if_bgereg.h#19 integrate .. //depot/projects/uart/dev/bktr/CHANGELOG.TXT#3 integrate .. //depot/projects/uart/dev/fdc/fdc.c#11 integrate .. //depot/projects/uart/dev/ic/nec765.h#3 integrate .. //depot/projects/uart/dev/isp/isp.c#13 integrate .. //depot/projects/uart/dev/isp/isp_pci.c#14 integrate .. //depot/projects/uart/dev/isp/ispmbox.h#8 integrate .. //depot/projects/uart/dev/isp/ispreg.h#5 integrate .. //depot/projects/uart/dev/isp/ispvar.h#12 integrate .. //depot/projects/uart/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/uart/dev/ispfw/ispfw.c#6 integrate .. //depot/projects/uart/dev/mfi/mfi.c#6 integrate .. //depot/projects/uart/dev/mii/acphy.c#6 integrate .. //depot/projects/uart/dev/mii/amphy.c#6 integrate .. //depot/projects/uart/dev/mii/bmtphy.c#6 integrate .. //depot/projects/uart/dev/mii/brgphy.c#15 integrate .. //depot/projects/uart/dev/mii/ciphy.c#5 integrate .. //depot/projects/uart/dev/mii/e1000phy.c#7 integrate .. //depot/projects/uart/dev/mii/exphy.c#6 integrate .. //depot/projects/uart/dev/mii/inphy.c#4 integrate .. //depot/projects/uart/dev/mii/lxtphy.c#6 integrate .. //depot/projects/uart/dev/mii/mii_physubr.c#7 integrate .. //depot/projects/uart/dev/mii/mlphy.c#5 integrate .. //depot/projects/uart/dev/mii/nsgphy.c#7 integrate .. //depot/projects/uart/dev/mii/nsphy.c#6 integrate .. //depot/projects/uart/dev/mii/pnaphy.c#6 integrate .. //depot/projects/uart/dev/mii/qsphy.c#6 integrate .. //depot/projects/uart/dev/mii/rgephy.c#7 integrate .. //depot/projects/uart/dev/mii/rlphy.c#7 integrate .. //depot/projects/uart/dev/mii/ruephy.c#4 integrate .. //depot/projects/uart/dev/mii/tdkphy.c#7 integrate .. //depot/projects/uart/dev/mii/tlphy.c#6 integrate .. //depot/projects/uart/dev/mii/ukphy.c#6 integrate .. //depot/projects/uart/dev/mii/xmphy.c#6 integrate .. //depot/projects/uart/dev/mpt/mpt.c#18 integrate .. //depot/projects/uart/dev/mpt/mpt.h#16 integrate .. //depot/projects/uart/dev/mpt/mpt_cam.c#17 integrate .. //depot/projects/uart/dev/mpt/mpt_pci.c#21 integrate .. //depot/projects/uart/dev/nfe/if_nfe.c#1 branch .. //depot/projects/uart/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/uart/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/uart/dev/puc/puc.c#43 integrate .. //depot/projects/uart/dev/puc/puc_cfg.c#9 integrate .. //depot/projects/uart/dev/puc/puc_pccard.c#6 integrate .. //depot/projects/uart/dev/puc/puc_pci.c#14 integrate .. //depot/projects/uart/dev/puc/pucdata.c#48 integrate .. //depot/projects/uart/dev/re/if_re.c#19 integrate .. //depot/projects/uart/dev/sio/sio.c#17 integrate .. //depot/projects/uart/dev/sk/if_sk.c#9 integrate .. //depot/projects/uart/dev/sound/pci/solo.c#10 integrate .. //depot/projects/uart/dev/usb/if_aue.c#12 integrate .. //depot/projects/uart/dev/usb/if_ural.c#9 integrate .. //depot/projects/uart/dev/usb/uplcom.c#15 integrate .. //depot/projects/uart/dev/usb/usbdevs#24 integrate .. //depot/projects/uart/fs/devfs/devfs_vfsops.c#10 integrate .. //depot/projects/uart/fs/devfs/devfs_vnops.c#15 integrate .. //depot/projects/uart/fs/pseudofs/pseudofs_vnops.c#13 integrate .. //depot/projects/uart/fs/udf/udf_vfsops.c#14 integrate .. //depot/projects/uart/fs/unionfs/union_vnops.c#10 integrate .. //depot/projects/uart/geom/geom_gpt.c#8 integrate .. //depot/projects/uart/geom/mirror/g_mirror.c#16 integrate .. //depot/projects/uart/geom/raid3/g_raid3.c#19 integrate .. //depot/projects/uart/i386/conf/GENERIC#21 integrate .. //depot/projects/uart/i386/conf/NOTES#22 integrate .. //depot/projects/uart/i386/conf/XBOX#5 integrate .. //depot/projects/uart/i386/i386/pmap.c#41 integrate .. //depot/projects/uart/i386/ibcs2/ibcs2_misc.c#9 integrate .. //depot/projects/uart/i386/ibcs2/ibcs2_msg.c#4 integrate .. //depot/projects/uart/i386/ibcs2/ibcs2_poll.h#3 delete .. //depot/projects/uart/i386/ibcs2/ibcs2_proto.h#6 integrate .. //depot/projects/uart/i386/ibcs2/ibcs2_syscall.h#6 integrate .. //depot/projects/uart/i386/ibcs2/ibcs2_sysent.c#6 integrate .. //depot/projects/uart/i386/ibcs2/ibcs2_xenix.h#5 integrate .. //depot/projects/uart/i386/ibcs2/ibcs2_xenix_syscall.h#5 integrate .. //depot/projects/uart/i386/ibcs2/ibcs2_xenix_sysent.c#5 integrate .. //depot/projects/uart/i386/ibcs2/syscalls.master#6 integrate .. //depot/projects/uart/i386/ibcs2/syscalls.xenix#5 integrate .. //depot/projects/uart/i386/linux/linux_proto.h#10 integrate .. //depot/projects/uart/i386/linux/linux_syscall.h#10 integrate .. //depot/projects/uart/i386/linux/linux_sysent.c#10 integrate .. //depot/projects/uart/i386/linux/syscalls.master#10 integrate .. //depot/projects/uart/ia64/conf/GENERIC#13 integrate .. //depot/projects/uart/ia64/disasm/disasm.h#3 integrate .. //depot/projects/uart/ia64/disasm/disasm_decode.c#3 integrate .. //depot/projects/uart/ia64/disasm/disasm_extract.c#3 integrate .. //depot/projects/uart/ia64/disasm/disasm_format.c#3 integrate .. //depot/projects/uart/ia64/disasm/disasm_int.h#3 integrate .. //depot/projects/uart/ia64/ia64/emulate.c#1 branch .. //depot/projects/uart/ia64/ia64/machdep.c#26 integrate .. //depot/projects/uart/ia64/ia64/pmap.c#24 integrate .. //depot/projects/uart/ia64/ia64/trap.c#16 integrate .. //depot/projects/uart/ia64/include/ieeefp.h#3 integrate .. //depot/projects/uart/ia64/include/md_var.h#7 integrate .. //depot/projects/uart/kern/init_sysent.c#17 integrate .. //depot/projects/uart/kern/kern_acl.c#5 integrate .. //depot/projects/uart/kern/kern_descrip.c#23 integrate .. //depot/projects/uart/kern/kern_fork.c#16 integrate .. //depot/projects/uart/kern/kern_ktrace.c#12 integrate .. //depot/projects/uart/kern/kern_linker.c#10 integrate .. //depot/projects/uart/kern/kern_module.c#7 integrate .. //depot/projects/uart/kern/kern_prot.c#12 integrate .. //depot/projects/uart/kern/kern_thread.c#22 integrate .. //depot/projects/uart/kern/sched_4bsd.c#14 integrate .. //depot/projects/uart/kern/sched_core.c#2 integrate .. //depot/projects/uart/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/uart/kern/subr_firmware.c#4 integrate .. //depot/projects/uart/kern/syscalls.c#17 integrate .. //depot/projects/uart/kern/syscalls.master#18 integrate .. //depot/projects/uart/kern/sysv_sem.c#11 integrate .. //depot/projects/uart/kern/uipc_socket2.c#15 integrate .. //depot/projects/uart/kern/uipc_usrreq.c#15 integrate .. //depot/projects/uart/kern/vfs_init.c#7 integrate .. //depot/projects/uart/kern/vfs_mount.c#27 integrate .. //depot/projects/uart/kern/vfs_subr.c#33 integrate .. //depot/projects/uart/kern/vfs_syscalls.c#26 integrate .. //depot/projects/uart/kern/vfs_vnops.c#20 integrate .. //depot/projects/uart/modules/Makefile#39 integrate .. //depot/projects/uart/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/uart/modules/netgraph/Makefile#9 integrate .. //depot/projects/uart/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/uart/modules/nfe/Makefile#1 branch .. //depot/projects/uart/modules/streams/Makefile#3 integrate .. //depot/projects/uart/modules/svr4/Makefile#4 integrate .. //depot/projects/uart/net/bpf.c#16 integrate .. //depot/projects/uart/net/if.c#21 integrate .. //depot/projects/uart/net/if_atmsubr.c#7 integrate .. //depot/projects/uart/net/if_enc.c#1 branch .. //depot/projects/uart/net/if_gif.c#9 integrate .. //depot/projects/uart/net/if_stf.c#10 integrate .. //depot/projects/uart/net/if_tun.c#9 integrate .. //depot/projects/uart/net/if_types.h#7 integrate .. //depot/projects/uart/net/if_vlan.c#16 integrate .. //depot/projects/uart/net/rtsock.c#12 integrate .. //depot/projects/uart/net80211/ieee80211_freebsd.c#7 integrate .. //depot/projects/uart/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#8 integrate .. //depot/projects/uart/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#3 integrate .. //depot/projects/uart/netgraph/ng_tag.c#1 branch .. //depot/projects/uart/netgraph/ng_tag.h#1 branch .. //depot/projects/uart/netinet/if_ether.c#14 integrate .. //depot/projects/uart/netinet/in_pcb.c#19 integrate .. //depot/projects/uart/netinet/in_rmx.c#7 integrate .. //depot/projects/uart/netinet/ip_divert.c#13 integrate .. //depot/projects/uart/netinet/ip_fw2.c#26 integrate .. //depot/projects/uart/netinet/ip_ipsec.c#3 integrate .. //depot/projects/uart/netinet/ip_output.c#17 integrate .. //depot/projects/uart/netinet/libalias/libalias.3#3 integrate .. //depot/projects/uart/netinet/tcp_input.c#25 integrate .. //depot/projects/uart/netinet/tcp_syncache.c#17 integrate .. //depot/projects/uart/netinet/tcp_usrreq.c#15 integrate .. //depot/projects/uart/netinet/tcp_var.h#13 integrate .. //depot/projects/uart/netinet6/in6.c#12 integrate .. //depot/projects/uart/netinet6/in6_cksum.c#7 integrate .. //depot/projects/uart/netinet6/in6_pcb.c#14 integrate .. //depot/projects/uart/netinet6/in6_rmx.c#7 integrate .. //depot/projects/uart/netinet6/in6_var.h#8 integrate .. //depot/projects/uart/netinet6/ipsec.c#10 integrate .. //depot/projects/uart/netinet6/raw_ip6.c#12 integrate .. //depot/projects/uart/netipsec/ipsec.h#8 integrate .. //depot/projects/uart/netipsec/ipsec_input.c#8 integrate .. //depot/projects/uart/netipsec/ipsec_osdep.h#3 integrate .. //depot/projects/uart/netipsec/ipsec_output.c#7 integrate .. //depot/projects/uart/netipsec/xform_ipip.c#6 integrate .. //depot/projects/uart/nfsclient/bootp_subr.c#9 integrate .. //depot/projects/uart/nfsclient/nfs_diskless.c#8 integrate .. //depot/projects/uart/nfsserver/nfs_srvcache.c#4 integrate .. //depot/projects/uart/nfsserver/nfsrvcache.h#5 integrate .. //depot/projects/uart/pc98/conf/GENERIC#16 integrate .. //depot/projects/uart/pci/agp_i810.c#10 integrate .. //depot/projects/uart/pci/if_rlreg.h#17 integrate .. //depot/projects/uart/powerpc/conf/GENERIC#11 integrate .. //depot/projects/uart/powerpc/powerpc/mmu_oea.c#4 integrate .. //depot/projects/uart/security/audit/audit.h#3 integrate .. //depot/projects/uart/security/audit/audit_arg.c#4 integrate .. //depot/projects/uart/security/audit/audit_bsm.c#5 integrate .. //depot/projects/uart/sparc64/conf/GENERIC#22 integrate .. //depot/projects/uart/sys/gpt.h#5 integrate .. //depot/projects/uart/sys/rwlock.h#4 integrate .. //depot/projects/uart/sys/syscall.h#16 integrate .. //depot/projects/uart/sys/syscall.mk#16 integrate .. //depot/projects/uart/sys/syscallsubr.h#12 integrate .. //depot/projects/uart/sys/sysproto.h#17 integrate .. //depot/projects/uart/vm/vm_page.c#22 integrate .. //depot/projects/uart/vm/vm_pageq.c#9 integrate Differences ... ==== //depot/projects/uart/Makefile#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/uart/amd64/amd64/pmap.c#40 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1979,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2145,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2582,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2674,7 +2668,7 @@ PHYS_TO_DMAP(VM_PAGE_TO_PHYS(dstmpde)); pde = &pde[pmap_pde_index(addr)]; if (*pde == 0) { - *pde = srcptepaddr; + *pde = srcptepaddr & ~PG_W; dst_pmap->pm_stats.resident_count += NBPDR / PAGE_SIZE; } else @@ -2697,11 +2691,6 @@ * we only virtual copy managed pages */ if ((ptetemp & PG_MANAGED) != 0) { - /* - * We have to check after allocpte for the - * pte still being around... allocpte can - * block. - */ dstmpte = pmap_allocpte(dst_pmap, addr, M_NOWAIT); if (dstmpte == NULL) @@ -2713,14 +2702,16 @@ pmap_try_insert_pv_entry(dst_pmap, addr, PHYS_TO_VM_PAGE(ptetemp & PG_FRAME))) { /* - * Clear the modified and + * Clear the wired, modified, and * accessed (referenced) bits * during the copy. */ - *dst_pte = ptetemp & ~(PG_M | PG_A); + *dst_pte = ptetemp & ~(PG_W | PG_M | + PG_A); dst_pmap->pm_stats.resident_count++; } else - pmap_unwire_pte_hold(dst_pmap, addr, dstmpte); + pmap_unwire_pte_hold(dst_pmap, addr, + dstmpte); if (dstmpte->wire_count >= srcmpte->wire_count) break; } @@ -2799,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2980,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3033,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3055,45 +3033,33 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if ((*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; - if (rtval > 4) { - PMAP_UNLOCK(pmap); - break; - } + if (rtval > 4) + pvn = NULL; } PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3103,7 +3069,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3114,7 +3096,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3128,9 +3126,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3154,9 +3150,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3176,9 +3170,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/uart/amd64/conf/GENERIC#22 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols ==== //depot/projects/uart/amd64/conf/NOTES#11 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.56 2006/06/12 20:38:17 jhb Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.57 2006/06/26 23:41:06 obrien Exp $ # # @@ -223,6 +223,7 @@ # (requires miibus) # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters +# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) # nve: nVidia nForce MCP on-board Ethernet Networking # ral: Ralink Technology IEEE 802.11 wireless adapter # ural: Ralink Technology RT2500USB IEEE 802.11 wireless adapter @@ -233,6 +234,7 @@ options ED_SIC device iwi device ipw +device nfe # nVidia nForce MCP on-board Ethernet Networking device nve # nVidia nForce MCP on-board Ethernet Networking device ral device ural ==== //depot/projects/uart/amd64/linux32/linux32_proto.h#8 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/uart/amd64/linux32/linux32_syscall.h#8 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/uart/amd64/linux32/linux32_sysent.c#8 (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.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #include @@ -41,8 +41,8 @@ { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_STAT }, /* 18 = linux_stat */ { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_LSEEK }, /* 19 = linux_lseek */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_GETPID }, /* 20 = linux_getpid */ - { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ - { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ + { SYF_MPSAFE | AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ + { SYF_MPSAFE | AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_SETUID }, /* 23 = linux_setuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_GETUID }, /* 24 = linux_getuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_SETTIMEOFDAY }, /* 25 = linux_stime */ @@ -65,16 +65,16 @@ { SYF_MPSAFE | AS(linux_pipe_args), (sy_call_t *)linux_pipe, AUE_PIPE }, /* 42 = linux_pipe */ { SYF_MPSAFE | AS(linux_times_args), (sy_call_t *)linux_times, AUE_NULL }, /* 43 = linux_times */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 44 = prof */ - { AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ + { SYF_MPSAFE | AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ { SYF_MPSAFE | AS(linux_setgid16_args), (sy_call_t *)linux_setgid16, AUE_SETGID }, /* 46 = linux_setgid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getgid16, AUE_GETGID }, /* 47 = linux_getgid16 */ { SYF_MPSAFE | AS(linux_signal_args), (sy_call_t *)linux_signal, AUE_NULL }, /* 48 = linux_signal */ { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_GETEUID }, /* 49 = linux_geteuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_GETEGID }, /* 50 = linux_getegid16 */ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ - { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ + { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ @@ -137,7 +137,7 @@ { SYF_MPSAFE | AS(linux_wait4_args), (sy_call_t *)linux_wait4, AUE_WAIT4 }, /* 114 = linux_wait4 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_swapoff, AUE_SWAPOFF }, /* 115 = linux_swapoff */ { SYF_MPSAFE | AS(linux_sysinfo_args), (sy_call_t *)linux_sysinfo, AUE_NULL }, /* 116 = linux_sysinfo */ - { AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ + { SYF_MPSAFE | AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ { SYF_MPSAFE | AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC }, /* 118 = fsync */ { SYF_MPSAFE | AS(linux_sigreturn_args), (sy_call_t *)linux_sigreturn, AUE_SIGRETURN }, /* 119 = linux_sigreturn */ { SYF_MPSAFE | AS(linux_clone_args), (sy_call_t *)linux_clone, AUE_RFORK }, /* 120 = linux_clone */ ==== //depot/projects/uart/amd64/linux32/syscalls.master#8 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -75,10 +75,10 @@ 19 AUE_LSEEK MSTD { int linux_lseek(l_uint fdes, l_off_t off, \ l_int whence); } 20 AUE_GETPID MSTD { int linux_getpid(void); } -21 AUE_MOUNT STD { int linux_mount(char *specialfile, \ +21 AUE_MOUNT MSTD { int linux_mount(char *specialfile, \ char *dir, char *filesystemtype, \ l_ulong rwflag, void *data); } -22 AUE_UMOUNT STD { int linux_oldumount(char *path); } +22 AUE_UMOUNT MSTD { int linux_oldumount(char *path); } 23 AUE_SETUID MSTD { int linux_setuid16(l_uid16_t uid); } 24 AUE_GETUID MSTD { int linux_getuid16(void); } 25 AUE_SETTIMEOFDAY MSTD { int linux_stime(void); } @@ -103,7 +103,7 @@ 42 AUE_PIPE MSTD { int linux_pipe(l_ulong *pipefds); } 43 AUE_NULL MSTD { int linux_times(struct l_times_argv *buf); } 44 AUE_NULL UNIMPL prof -45 AUE_NULL STD { int linux_brk(l_ulong dsend); } +45 AUE_NULL MSTD { int linux_brk(l_ulong dsend); } 46 AUE_SETGID MSTD { int linux_setgid16(l_gid16_t gid); } 47 AUE_GETGID MSTD { int linux_getgid16(void); } 48 AUE_NULL MSTD { int linux_signal(l_int sig, \ @@ -111,9 +111,9 @@ 49 AUE_GETEUID MSTD { int linux_geteuid16(void); } 50 AUE_GETEGID MSTD { int linux_getegid16(void); } 51 AUE_ACCT MNOPROTO { int acct(char *path); } -52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); } +52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -212,7 +212,7 @@ struct l_rusage *rusage); } 115 AUE_SWAPOFF MSTD { int linux_swapoff(void); } 116 AUE_NULL MSTD { int linux_sysinfo(struct l_sysinfo *info); } -117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \ +117 AUE_NULL MSTD { int linux_ipc(l_uint what, l_int arg1, \ l_int arg2, l_int arg3, void *ptr, \ l_long arg5); } 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } ==== //depot/projects/uart/arm/arm/elf_trampoline.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.8 2006/06/18 22:46:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.11 2006/06/23 22:45:35 cognet Exp $"); #include #include #include @@ -131,6 +131,8 @@ } } +static void arm9_setup(void); + void _start(void) { @@ -174,7 +176,6 @@ __start(); } -#ifdef KZIP static void get_cachetype_cp15() { @@ -255,6 +256,7 @@ } +#ifdef KZIP static unsigned char *orig_input, *i_input, *i_output; @@ -348,8 +350,8 @@ int d) { Elf32_Ehdr *eh; - Elf32_Phdr phdr[512] /* XXX */, *php; - Elf32_Shdr shdr[512] /* XXX */; + Elf32_Phdr phdr[64] /* XXX */, *php; + Elf32_Shdr shdr[64] /* XXX */; int i,j; void *entry_point; int symtabindex = -1; ==== //depot/projects/uart/arm/at91/at91_pio.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.1 2006/03/24 07:39:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); #include #include @@ -38,7 +38,9 @@ #include #include +#include #include +#include struct at91_pio_softc { @@ -103,7 +105,26 @@ static int at91_pio_probe(device_t dev) { - device_set_desc(dev, "PIO"); + const char *name; + + switch (device_get_unit(dev)) { + case 0: + name = "PIOA"; + break; + case 1: + name = "PIOB"; + break; + case 2: + name = "PIOC"; + break; + case 3: + name = "PIOD"; + break; + default: + name = "PIO"; + break; + } + device_set_desc(dev, name); return (0); } @@ -118,6 +139,9 @@ if (err) goto out; + device_printf(dev, "ABSR: %#x OSR: %#x PSR:%#x ODSR: %#x\n", + RD4(sc, PIO_ABSR), RD4(sc, PIO_OSR), RD4(sc, PIO_PSR), + RD4(sc, PIO_ODSR)); AT91_PIO_LOCK_INIT(sc); /* @@ -250,6 +274,69 @@ return (ENXIO); } +/* + * The following functions are called early in the boot process, so + * don't use bus_space, as that isn't yet available when we need to use + * them. + */ +void +at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ASR / 4] = periph_a_mask; + PIO[PIO_PDR / 4] = periph_a_mask; +} + +void +at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_BSR / 4] = periph_b_mask; + PIO[PIO_PDR / 4] = periph_b_mask; +} + +void +at91_pio_use_gpio(uint32_t pio, uint32_t gpio_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_PER / 4] = gpio_mask; +} + +void +at91_pio_gpio_input(uint32_t pio, uint32_t input_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ODR / 4] = input_enable_mask; +} + +void +at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_OER / 4] = output_enable_mask; +} + +void +at91_pio_gpio_set(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_SODR / 4] = data_mask; +} + +void +at91_pio_gpio_clear(uint32_t pio, uint32_t data_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_CODR / 4] = data_mask; +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), ==== //depot/projects/uart/arm/at91/files.at91#3 (text) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/arm/at91/files.at91,v 1.3 2006/03/24 07:36:23 imp Exp $ +# $FreeBSD: src/sys/arm/at91/files.at91,v 1.5 2006/06/23 23:07:11 cognet Exp $ arm/arm/cpufunc_asm_arm9.S standard arm/arm/irq_dispatch.S standard arm/at91/at91.c standard ==== //depot/projects/uart/arm/at91/uart_dev_at91usart.c#6 (text) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.6 2006/05/13 23:41:16 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.7 2006/07/02 03:45:33 imp Exp $"); #include #include @@ -45,19 +45,29 @@ #include "uart_if.h" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 7 10:52:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9EF2816A4E2; Fri, 7 Jul 2006 10:52:12 +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 47F4816A4DD for ; Fri, 7 Jul 2006 10:52:12 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0084443D58 for ; Fri, 7 Jul 2006 10:52:11 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67AqBJf088613 for ; Fri, 7 Jul 2006 10:52:11 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67AqBI7088610 for perforce@freebsd.org; Fri, 7 Jul 2006 10:52:11 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 10:52:11 GMT Message-Id: <200607071052.k67AqBI7088610@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100857 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 10:52:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=100857 Change 100857 by wkoszek@wkoszek_laptop on 2006/07/07 10:51:43 Bring tlb.c, uio_machdep.c and vm_machdep.c to the tree. They're populated with stub entries for now. tlb.c is borrowed from old MIPS code by juli@. Some formatting strings should be fixed. Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#7 edit .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#3 edit .. //depot/projects/mips2/src/sys/mips/mips/tlb.c#1 add .. //depot/projects/mips2/src/sys/mips/mips/uio_machdep.c#2 edit .. //depot/projects/mips2/src/sys/mips/mips/vm_machdep.c#1 add Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#7 (text+ko) ==== @@ -2,6 +2,7 @@ mips/mips/autoconf.c standard mips/mips/busdma_machdep.c standard mips/mips/copystr.S standard +mips/mips/cpu.c standard mips/mips/db_disasm.c optional ddb mips/mips/db_interface.c optional ddb mips/mips/db_trace.c optional ddb @@ -17,8 +18,11 @@ mips/mips/support.S standard mips/mips/swtch.S standard mips/mips/sys_machdep.c standard +mips/mips/tlb.c standard mips/mips/trap.c standard mips/mips/uio_machdep.c standard +mips/mips/uio_machdep.c standard +mips/mips/vm_machdep.c standard geom/geom_bsd.c standard geom/geom_bsd_enc.c standard geom/geom_mbr.c standard ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#3 (text+ko) ==== @@ -237,3 +237,28 @@ { return (-1); } + +/* + * XXXMIPS: + */ +void +spinlock_enter(void) +{ + +} + +void +spinlock_exit(void) +{ + +} + +/* + * XXXMIPS: This might be a wrong place for it, but stick platform_halt() to + * this file until we find a better place for it. + */ +void +platform_halt(void) +{ + +} ==== //depot/projects/mips2/src/sys/mips/mips/uio_machdep.c#2 (text+ko) ==== @@ -1,21 +1,21 @@ /*- - * Copyright (c) 2006 Fill this file and put your name here + * Copyright (c) [year] [your name] * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer, - * without modification, immediately at the beginning of the file. - * 2. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT @@ -23,7 +23,31 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * + * $Id$ */ - #include __FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include + +/* + * Implement uiomove(9) from physical memory using sf_bufs to + * avoid the creation and destruction of ephemeral mappings. + */ +int +uiomove_fromphys(vm_page_t ma[], vm_offset_t offset, int n, struct uio *uio) +{ + return (0); +} From owner-p4-projects@FreeBSD.ORG Fri Jul 7 10:56:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BEF1F16A4E1; Fri, 7 Jul 2006 10:56:18 +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 1FC9616A4DA for ; Fri, 7 Jul 2006 10:56:18 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 979F343D49 for ; Fri, 7 Jul 2006 10:56:17 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67AuH1c088940 for ; Fri, 7 Jul 2006 10:56:17 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67AuHS7088936 for perforce@freebsd.org; Fri, 7 Jul 2006 10:56:17 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 10:56:17 GMT Message-Id: <200607071056.k67AuHS7088936@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100858 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 10:56:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=100858 Change 100858 by wkoszek@wkoszek_laptop on 2006/07/07 10:55:20 Populate db_*.c files with stub entries and make them compile. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/db_disasm.c#2 edit .. //depot/projects/mips2/src/sys/mips/mips/db_interface.c#2 edit .. //depot/projects/mips2/src/sys/mips/mips/db_trace.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/db_disasm.c#2 (text+ko) ==== @@ -1,21 +1,33 @@ +/* $NetBSD: db_disasm.c,v 1.11 2002/11/04 03:30:32 thorpej Exp $ */ + /*- - * Copyright (c) 2006 Fill this file and put your name here - * All rights reserved. + * Copyright (c) 1991, 1993 + * The Regents of the University of California. All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Ralph Campbell. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer, - * without modification, immediately at the beginning of the file. - * 2. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT @@ -23,7 +35,488 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * + * from: @(#)kadb.c 8.1 (Berkeley) 6/10/93 + */ + + +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include +#include +#include + +static char *op_name[64] = { +/* 0 */ "spec", "bcond","j", "jal", "beq", "bne", "blez", "bgtz", +/* 8 */ "addi", "addiu","slti", "sltiu","andi", "ori", "xori", "lui", +/*16 */ "cop0", "cop1", "cop2", "cop3", "beql", "bnel", "blezl","bgtzl", +/*24 */ "daddi","daddiu","ldl", "ldr", "op34", "op35", "op36", "op37", +/*32 */ "lb", "lh", "lwl", "lw", "lbu", "lhu", "lwr", "lwu", +/*40 */ "sb", "sh", "swl", "sw", "sdl", "sdr", "swr", "cache", +/*48 */ "ll", "lwc1", "lwc2", "lwc3", "lld", "ldc1", "ldc2", "ld", +/*56 */ "sc", "swc1", "swc2", "swc3", "scd", "sdc1", "sdc2", "sd" +}; + +static char *spec_name[64] = { +/* 0 */ "sll", "spec01","srl", "sra", "sllv", "spec05","srlv","srav", +/* 8 */ "jr", "jalr", "spec12","spec13","syscall","break","spec16","sync", +/*16 */ "mfhi", "mthi", "mflo", "mtlo", "dsllv","spec25","dsrlv","dsrav", +/*24 */ "mult", "multu","div", "divu", "dmult","dmultu","ddiv","ddivu", +/*32 */ "add", "addu", "sub", "subu", "and", "or", "xor", "nor", +/*40 */ "spec50","spec51","slt","sltu", "dadd","daddu","dsub","dsubu", +/*48 */ "tge","tgeu","tlt","tltu","teq","spec65","tne","spec67", +/*56 */ "dsll","spec71","dsrl","dsra","dsll32","spec75","dsrl32","dsra32" +}; + +static char *spec2_name[4] = { /* QED RM4650, R5000, etc. */ +/* 0 */ "mad", "madu", "mul", "spec3" +}; + +static char *bcond_name[32] = { +/* 0 */ "bltz", "bgez", "bltzl", "bgezl", "?", "?", "?", "?", +/* 8 */ "tgei", "tgeiu", "tlti", "tltiu", "teqi", "?", "tnei", "?", +/*16 */ "bltzal", "bgezal", "bltzall", "bgezall", "?", "?", "?", "?", +/*24 */ "?", "?", "?", "?", "?", "?", "?", "?", +}; + +static char *cop1_name[64] = { +/* 0 */ "fadd", "fsub", "fmpy", "fdiv", "fsqrt","fabs", "fmov", "fneg", +/* 8 */ "fop08","fop09","fop0a","fop0b","fop0c","fop0d","fop0e","fop0f", +/*16 */ "fop10","fop11","fop12","fop13","fop14","fop15","fop16","fop17", +/*24 */ "fop18","fop19","fop1a","fop1b","fop1c","fop1d","fop1e","fop1f", +/*32 */ "fcvts","fcvtd","fcvte","fop23","fcvtw","fop25","fop26","fop27", +/*40 */ "fop28","fop29","fop2a","fop2b","fop2c","fop2d","fop2e","fop2f", +/*48 */ "fcmp.f","fcmp.un","fcmp.eq","fcmp.ueq","fcmp.olt","fcmp.ult", + "fcmp.ole","fcmp.ule", +/*56 */ "fcmp.sf","fcmp.ngle","fcmp.seq","fcmp.ngl","fcmp.lt","fcmp.nge", + "fcmp.le","fcmp.ngt" +}; + +static char *fmt_name[16] = { + "s", "d", "e", "fmt3", + "w", "fmt5", "fmt6", "fmt7", + "fmt8", "fmt9", "fmta", "fmtb", + "fmtc", "fmtd", "fmte", "fmtf" +}; + +#if defined(__mips_n32) || defined(__mips_n64) +static char *reg_name[32] = { + "zero", "at", "v0", "v1", "a0", "a1", "a2", "a3", + "a4", "a5", "a6", "a7", "t0", "t1", "t2", "t3", + "s0", "s1", "s2", "s3", "s4", "s5", "s6", "s7", + "t8", "t9", "k0", "k1", "gp", "sp", "s8", "ra" +}; +#else +static char *reg_name[32] = { + "zero", "at", "v0", "v1", "a0", "a1", "a2", "a3", + "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", + "s0", "s1", "s2", "s3", "s4", "s5", "s6", "s7", + "t8", "t9", "k0", "k1", "gp", "sp", "s8", "ra" +}; +#endif /* __mips_n32 || __mips_n64 */ + +static char *c0_opname[64] = { + "c0op00","tlbr", "tlbwi", "c0op03","c0op04","c0op05","tlbwr", "c0op07", + "tlbp", "c0op11","c0op12","c0op13","c0op14","c0op15","c0op16","c0op17", + "rfe", "c0op21","c0op22","c0op23","c0op24","c0op25","c0op26","c0op27", + "eret", "c0op31","c0op32","c0op33","c0op34","c0op35","c0op36","c0op37", + "c0op40","c0op41","c0op42","c0op43","c0op44","c0op45","c0op46","c0op47", + "c0op50","c0op51","c0op52","c0op53","c0op54","c0op55","c0op56","c0op57", + "c0op60","c0op61","c0op62","c0op63","c0op64","c0op65","c0op66","c0op67", + "c0op70","c0op71","c0op72","c0op73","c0op74","c0op75","c0op77","c0op77", +}; + +static char *c0_reg[32] = { + "index", "random", "tlblo0", "tlblo1", + "context", "pagemask", "wired", "cp0r7", + "badvaddr", "count", "tlbhi", "compare", + "status", "cause", "epc", "prid", + "config", "lladdr", "watchlo", "watchhi", + "xcontext", "cp0r21", "cp0r22", "debug", + "depc", "perfcnt", "ecc", "cacheerr", + "taglo", "taghi", "errepc", "desave" +}; + +static void print_addr(db_addr_t); + +/* + * Disassemble instruction at 'loc'. 'altfmt' specifies an + * (optional) alternate format (altfmt for vax: don't assume + * that each external label is a procedure entry mask). + * Return address of start of next instruction. + * Since this function is used by 'examine' and by 'step' + * "next instruction" does NOT mean the next instruction to + * be executed but the 'linear' next instruction. */ +db_addr_t +db_disasm(db_addr_t loc, boolean_t altfmt) +{ + u_int32_t instr; -#include -__FBSDID("$FreeBSD$"); + /* + * Take some care with addresses to not UTLB here as it + * loses the current debugging context. KSEG2 not checked. + */ + if (loc < MIPS_KSEG0_START) { + instr = fuword((void *)loc); + if (instr == 0xffffffff) { + /* "sd ra, -1(ra)" is unlikely */ + db_printf("invalid address.\n"); + return loc; + } + } + else { + instr = *(u_int32_t *)loc; + } + + return (db_disasm_insn(instr, loc, altfmt)); +} + + +/* + * Disassemble instruction 'insn' nominally at 'loc'. + * 'loc' may in fact contain a breakpoint instruction. + */ +db_addr_t +db_disasm_insn(int insn, db_addr_t loc, boolean_t altfmt) +{ + boolean_t bdslot = FALSE; + InstFmt i; + + i.word = insn; + + switch (i.JType.op) { + case OP_SPECIAL: + if (i.word == 0) { + db_printf("nop"); + break; + } + /* XXX + * "addu" is a "move" only in 32-bit mode. What's the correct + * answer - never decode addu/daddu as "move"? + */ + if (i.RType.func == OP_ADDU && i.RType.rt == 0) { + db_printf("move\t%s,%s", + reg_name[i.RType.rd], + reg_name[i.RType.rs]); + break; + } + db_printf("%s", spec_name[i.RType.func]); + switch (i.RType.func) { + case OP_SLL: + case OP_SRL: + case OP_SRA: + case OP_DSLL: + + case OP_DSRL: + case OP_DSRA: + case OP_DSLL32: + case OP_DSRL32: + case OP_DSRA32: + db_printf("\t%s,%s,%d", + reg_name[i.RType.rd], + reg_name[i.RType.rt], + i.RType.shamt); + break; + + case OP_SLLV: + case OP_SRLV: + case OP_SRAV: + case OP_DSLLV: + case OP_DSRLV: + case OP_DSRAV: + db_printf("\t%s,%s,%s", + reg_name[i.RType.rd], + reg_name[i.RType.rt], + reg_name[i.RType.rs]); + break; + + case OP_MFHI: + case OP_MFLO: + db_printf("\t%s", reg_name[i.RType.rd]); + break; + + case OP_JR: + case OP_JALR: + db_printf("\t%s", reg_name[i.RType.rs]); + bdslot = TRUE; + break; + case OP_MTLO: + case OP_MTHI: + db_printf("\t%s", reg_name[i.RType.rs]); + break; + + case OP_MULT: + case OP_MULTU: + case OP_DMULT: + case OP_DMULTU: + case OP_DIV: + case OP_DIVU: + case OP_DDIV: + case OP_DDIVU: + db_printf("\t%s,%s", + reg_name[i.RType.rs], + reg_name[i.RType.rt]); + break; + + + case OP_SYSCALL: + case OP_SYNC: + break; + + case OP_BREAK: + db_printf("\t%d", (i.RType.rs << 5) | i.RType.rt); + break; + + default: + db_printf("\t%s,%s,%s", + reg_name[i.RType.rd], + reg_name[i.RType.rs], + reg_name[i.RType.rt]); + } + break; + + case OP_SPECIAL2: + if (i.RType.func == OP_MUL) + db_printf("%s\t%s,%s,%s", + spec2_name[i.RType.func & 0x3], + reg_name[i.RType.rd], + reg_name[i.RType.rs], + reg_name[i.RType.rt]); + else + db_printf("%s\t%s,%s", + spec2_name[i.RType.func & 0x3], + reg_name[i.RType.rs], + reg_name[i.RType.rt]); + + break; + + case OP_BCOND: + db_printf("%s\t%s,", bcond_name[i.IType.rt], + reg_name[i.IType.rs]); + goto pr_displ; + + case OP_BLEZ: + case OP_BLEZL: + case OP_BGTZ: + case OP_BGTZL: + db_printf("%s\t%s,", op_name[i.IType.op], + reg_name[i.IType.rs]); + goto pr_displ; + + case OP_BEQ: + case OP_BEQL: + if (i.IType.rs == 0 && i.IType.rt == 0) { + db_printf("b\t"); + goto pr_displ; + } + /* FALLTHROUGH */ + case OP_BNE: + case OP_BNEL: + db_printf("%s\t%s,%s,", op_name[i.IType.op], + reg_name[i.IType.rs], + reg_name[i.IType.rt]); + pr_displ: + print_addr(loc + 4 + ((short)i.IType.imm << 2)); + bdslot = TRUE; + break; + + case OP_COP0: + switch (i.RType.rs) { + case OP_BCx: + case OP_BCy: + + db_printf("bc0%c\t", + "ft"[i.RType.rt & COPz_BC_TF_MASK]); + goto pr_displ; + + case OP_MT: + db_printf("mtc0\t%s,%s", + reg_name[i.RType.rt], + c0_reg[i.RType.rd]); + break; + + case OP_DMT: + db_printf("dmtc0\t%s,%s", + reg_name[i.RType.rt], + c0_reg[i.RType.rd]); + break; + + case OP_MF: + db_printf("mfc0\t%s,%s", + reg_name[i.RType.rt], + c0_reg[i.RType.rd]); + break; + + case OP_DMF: + db_printf("dmfc0\t%s,%s", + reg_name[i.RType.rt], + c0_reg[i.RType.rd]); + break; + + default: + db_printf("%s", c0_opname[i.FRType.func]); + } + break; + + case OP_COP1: + switch (i.RType.rs) { + case OP_BCx: + case OP_BCy: + db_printf("bc1%c\t", + "ft"[i.RType.rt & COPz_BC_TF_MASK]); + goto pr_displ; + + case OP_MT: + db_printf("mtc1\t%s,f%d", + reg_name[i.RType.rt], + i.RType.rd); + break; + + case OP_MF: + db_printf("mfc1\t%s,f%d", + reg_name[i.RType.rt], + i.RType.rd); + break; + + case OP_CT: + db_printf("ctc1\t%s,f%d", + reg_name[i.RType.rt], + i.RType.rd); + break; + + case OP_CF: + db_printf("cfc1\t%s,f%d", + reg_name[i.RType.rt], + i.RType.rd); + break; + + default: + db_printf("%s.%s\tf%d,f%d,f%d", + cop1_name[i.FRType.func], + fmt_name[i.FRType.fmt], + i.FRType.fd, i.FRType.fs, i.FRType.ft); + } + break; + + case OP_J: + case OP_JAL: + db_printf("%s\t", op_name[i.JType.op]); + print_addr((loc & 0xF0000000) | (i.JType.target << 2)); + bdslot = TRUE; + break; + + case OP_LWC1: + case OP_SWC1: + db_printf("%s\tf%d,", op_name[i.IType.op], + i.IType.rt); + goto loadstore; + + case OP_LB: + case OP_LH: + case OP_LW: + case OP_LD: + case OP_LBU: + case OP_LHU: + case OP_LWU: + case OP_SB: + case OP_SH: + case OP_SW: + case OP_SD: + db_printf("%s\t%s,", op_name[i.IType.op], + reg_name[i.IType.rt]); + loadstore: + db_printf("%d(%s)", (short)i.IType.imm, + reg_name[i.IType.rs]); + break; + + case OP_ORI: + case OP_XORI: + if (i.IType.rs == 0) { + db_printf("li\t%s,0x%x", + reg_name[i.IType.rt], + i.IType.imm); + break; + } + /* FALLTHROUGH */ + case OP_ANDI: + db_printf("%s\t%s,%s,0x%x", op_name[i.IType.op], + reg_name[i.IType.rt], + reg_name[i.IType.rs], + i.IType.imm); + break; + + case OP_LUI: + db_printf("%s\t%s,0x%x", op_name[i.IType.op], + reg_name[i.IType.rt], + i.IType.imm); + break; + + case OP_CACHE: + db_printf("%s\t0x%x,0x%x(%s)", + op_name[i.IType.op], + i.IType.rt, + i.IType.imm, + reg_name[i.IType.rs]); + break; + + case OP_ADDI: + case OP_DADDI: + case OP_ADDIU: + case OP_DADDIU: + if (i.IType.rs == 0) { + db_printf("li\t%s,%d", + reg_name[i.IType.rt], + (short)i.IType.imm); + break; + } + /* FALLTHROUGH */ + default: + db_printf("%s\t%s,%s,%d", op_name[i.IType.op], + reg_name[i.IType.rt], + reg_name[i.IType.rs], + (short)i.IType.imm); + } + db_printf("\n"); + if (bdslot) { + db_printf("\t\tbdslot:\t"); + db_disasm(loc+4, FALSE); + return (loc + 8); + } + return (loc + 4); +} + +static void +print_addr(db_addr_t loc) +{ + db_expr_t diff; + c_db_sym_t sym; + const char *symname; + + diff = INT_MAX; + symname = NULL; + sym = db_search_symbol(loc, DB_STGY_ANY, &diff); + db_symbol_values(sym, &symname, 0); + + /* + * XXXMIPS: Check if the format is right here. + * Probably not. + */ + if (symname) { + if (diff == 0) + db_printf("%s", symname); + else + db_printf("<%s+%lx>", symname, (unsigned long) diff); + db_printf("\t[addr:0x%lx]", (unsigned long) loc); + } else { + db_printf("0x%lx", (unsigned long) loc); + } +} ==== //depot/projects/mips2/src/sys/mips/mips/db_interface.c#2 (text+ko) ==== @@ -1,21 +1,21 @@ /*- - * Copyright (c) 2006 Fill this file and put your name here + * Copyright (c) [year] [your name] * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer, - * without modification, immediately at the beginning of the file. - * 2. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT @@ -23,7 +23,51 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * + * $Id$ */ +#include "opt_ddb.h" + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include +#include +#include +#include + -#include -__FBSDID("$FreeBSD$"); +void +db_show_mdpcpu(struct pcpu *pc) +{ +} + +int +db_write_bytes(vm_offset_t addr, size_t size, char *data) +{ + return (0); +} + +int +db_read_bytes(vm_offset_t addr, size_t size, char *data) +{ + return (0); +} + ==== //depot/projects/mips2/src/sys/mips/mips/db_trace.c#3 (text+ko) ==== @@ -1,71 +1,201 @@ -/*- - * Copyright (c) 2006 Fill this file and put your name here - * All rights reserved. +/* $NetBSD: db_trace.c,v 1.23 2003/01/17 23:36:11 thorpej Exp $ */ + +/* + * Mach Operating System + * Copyright (c) 1993-1987 Carnegie Mellon University + * All Rights Reserved. + * + * Permission to use, copy, modify and distribute this software and its + * documentation is hereby granted, provided that both the copyright + * notice and this permission notice appear in all copies of the + * software, derivative works or modified versions, and any portions + * thereof, and that both notices appear in supporting documentation. + * + * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" + * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR + * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer, - * without modification, immediately at the beginning of the file. - * 2. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. + * Carnegie Mellon requests users of this software to return to * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU + * School of Computer Science + * Carnegie Mellon University + * Pittsburgh PA 15213-3890 * + * any improvements or extensions that they make and grant Carnegie Mellon + * the rights to redistribute these changes. */ -#include -__FBSDID("$FreeBSD$"); - +#include #include +#include #include -#include -#include -#include -#include +#include + +#include + +#include #include -#include -#include #include -#include +#include +#include #include -#include + +void db_stack_trace_cmd(db_expr_t addr, boolean_t have_addr, db_expr_t + count, char *modif); +void db_print_backtrace(void); + +struct db_variable db_regs[] = { + { "at", (db_expr_t *)&ddb_regs.f_regs[AST], FCN_NULL }, + { "v0", (db_expr_t *)&ddb_regs.f_regs[V0], FCN_NULL }, + { "v1", (db_expr_t *)&ddb_regs.f_regs[V1], FCN_NULL }, + { "a0", (db_expr_t *)&ddb_regs.f_regs[A0], FCN_NULL }, + { "a1", (db_expr_t *)&ddb_regs.f_regs[A1], FCN_NULL }, + { "a2", (db_expr_t *)&ddb_regs.f_regs[A2], FCN_NULL }, + { "a3", (db_expr_t *)&ddb_regs.f_regs[A3], FCN_NULL }, + { "a4", (db_expr_t *)&ddb_regs.f_regs[A4], FCN_NULL }, + { "a5", (db_expr_t *)&ddb_regs.f_regs[A5], FCN_NULL }, + { "a6", (db_expr_t *)&ddb_regs.f_regs[A6], FCN_NULL }, + { "a7", (db_expr_t *)&ddb_regs.f_regs[A7], FCN_NULL }, + { "t0", (db_expr_t *)&ddb_regs.f_regs[T0], FCN_NULL }, + { "t1", (db_expr_t *)&ddb_regs.f_regs[T1], FCN_NULL }, + { "t2", (db_expr_t *)&ddb_regs.f_regs[T2], FCN_NULL }, + { "t3", (db_expr_t *)&ddb_regs.f_regs[T3], FCN_NULL }, + { "s0", (db_expr_t *)&ddb_regs.f_regs[S0], FCN_NULL }, + { "s1", (db_expr_t *)&ddb_regs.f_regs[S1], FCN_NULL }, + { "s2", (db_expr_t *)&ddb_regs.f_regs[S2], FCN_NULL }, + { "s3", (db_expr_t *)&ddb_regs.f_regs[S3], FCN_NULL }, + { "s4", (db_expr_t *)&ddb_regs.f_regs[S4], FCN_NULL }, + { "s5", (db_expr_t *)&ddb_regs.f_regs[S5], FCN_NULL }, + { "s6", (db_expr_t *)&ddb_regs.f_regs[S6], FCN_NULL }, + { "s7", (db_expr_t *)&ddb_regs.f_regs[S7], FCN_NULL }, + { "t8", (db_expr_t *)&ddb_regs.f_regs[T8], FCN_NULL }, + { "t9", (db_expr_t *)&ddb_regs.f_regs[T9], FCN_NULL }, + { "k0", (db_expr_t *)&ddb_regs.f_regs[K0], FCN_NULL }, + { "k1", (db_expr_t *)&ddb_regs.f_regs[K1], FCN_NULL }, + { "gp", (db_expr_t *)&ddb_regs.f_regs[GP], FCN_NULL }, + { "sp", (db_expr_t *)&ddb_regs.f_regs[SP], FCN_NULL }, + { "fp", (db_expr_t *)&ddb_regs.f_regs[S8], FCN_NULL }, /* frame ptr */ + { "ra", (db_expr_t *)&ddb_regs.f_regs[RA], FCN_NULL }, + { "sr", (db_expr_t *)&ddb_regs.f_regs[SR], FCN_NULL }, + { "mdlo",(db_expr_t *)&ddb_regs.f_regs[MULLO], FCN_NULL }, + { "mdhi",(db_expr_t *)&ddb_regs.f_regs[MULHI], FCN_NULL }, + { "bad", (db_expr_t *)&ddb_regs.f_regs[BADVADDR], FCN_NULL }, + { "cs", (db_expr_t *)&ddb_regs.f_regs[CAUSE], FCN_NULL }, + { "pc", (db_expr_t *)&ddb_regs.f_regs[PC], FCN_NULL }, +}; +struct db_variable *db_eregs = db_regs + sizeof(db_regs)/sizeof(db_regs[0]); + +extern char btext[]; -#if 0 -static void -db_stack_trace_cmd(db_expr_t addr, db_expr_t count) +static u_register_t +db_stack_register_fetch(u_register_t sp, u_register_t stacksize, u_register_t r) { + if (sp == ddb_regs.f_regs[SP]) { + return (ddb_regs.f_regs[r]); + } else { + db_printf("\n*** don't know how to read registers from stack ***\n"); + return (0); + } } -#endif + +void +db_stack_trace_cmd(db_expr_t addr, boolean_t have_addr, db_expr_t count, + char *modif) +{ + u_register_t sp, ra, pc, i, stacksize, func; + InstFmt insn; + + sp = ddb_regs.f_regs[SP]; + ra = ddb_regs.f_regs[RA]; + pc = ddb_regs.f_regs[PC]; + + for (;;) { + func = 0; + stacksize = 0; + if (pc <= (u_register_t)btext) + break; + db_printf("%p", (void *)pc); + for (i = pc; i >= (u_register_t)btext; i -= sizeof (insn)) { + bcopy((void *)i, &insn, sizeof insn); + switch (insn.IType.op) { + case OP_ADDI: + case OP_ADDIU: + case OP_DADDI: + case OP_DADDIU: + if (insn.IType.rs != SP || insn.IType.rt != SP) + break; + stacksize = -(short)insn.IType.imm; + break; + default: + break; + } + if (stacksize) { + func = i; + break; + } + } + + db_printf(" in %p\n", (void *)func); + + sp += stacksize; + + for (i = pc; !ra; i += sizeof (insn)) { + bcopy((void *)i, &insn, sizeof insn); + switch (insn.IType.op) { + case OP_JR: + case OP_JALR: + if (ra >= (u_register_t)btext) + break; + ra = db_stack_register_fetch(sp, stacksize, insn.RType.rs); + if (!ra) + goto done; + break; + default: + break; + } + if (insn.word == 0x42000018) { /* eret. */ + db_printf("--- exception handler ---\n"); + goto done; + } + } + if (pc == ra && stacksize == 0) { + db_printf("--- loop? ----\n"); + break; + } + pc = ra; + ra = 0; + } +done: return; +} void -db_md_list_watchpoints() +db_print_backtrace(void) { + u_long *sp; + + sp = __builtin_frame_address(1); + db_stack_trace_cmd((db_expr_t)sp, TRUE, -1, "a"); } int -db_md_clr_watchpoint(db_expr_t addr, db_expr_t size) +db_md_set_watchpoint(db_expr_t dummy1, db_expr_t dummy2) { return (0); } int -db_md_set_watchpoint(db_expr_t addr, db_expr_t size) +db_md_clr_watchpoint(db_expr_t dummy1, db_expr_t dummy2) { return (0); } +void +db_md_list_watchpoints(void) +{ + +} + int db_trace_thread(struct thread *thr, int count) { @@ -75,10 +205,5 @@ void db_trace_self(void) { - db_trace_thread(curthread, -1); -} -void -stack_save(struct stack *st) -{ } From owner-p4-projects@FreeBSD.ORG Fri Jul 7 10:59:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 87D0816A4E5; Fri, 7 Jul 2006 10:59:22 +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 477AE16A4DA for ; Fri, 7 Jul 2006 10:59:22 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0F0E543D49 for ; Fri, 7 Jul 2006 10:59:22 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67AxLqe089161 for ; Fri, 7 Jul 2006 10:59:21 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67AxLRG089157 for perforce@freebsd.org; Fri, 7 Jul 2006 10:59:21 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 10:59:21 GMT Message-Id: <200607071059.k67AxLRG089157@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100859 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 10:59:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=100859 Change 100859 by wkoszek@wkoszek_laptop on 2006/07/07 10:58:41 Atomic operations here are like: block interrupts -> do operation -> unblock interrupts. Thus, I think double intr_disable() here is a mistake. Replace it with intr_restore(). Affected files ... .. //depot/projects/mips2/src/sys/mips/include/atomic.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/atomic.h#3 (text+ko) ==== @@ -133,7 +133,14 @@ s = intr_disable(); result = *addr; *addr = 0; + /* + * XXXMIPS: I think it's a mistake. We should have intr_restore() + * here, shouldn't we? + */ +#if 0 intr_disable(); +#endif + intr_restore(s); return (result); } From owner-p4-projects@FreeBSD.ORG Fri Jul 7 11:07:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 83C0E16A4DE; Fri, 7 Jul 2006 11:07:33 +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 4765C16A4DA for ; Fri, 7 Jul 2006 11:07:33 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C6FA343D55 for ; Fri, 7 Jul 2006 11:07:32 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67B7Wk8090995 for ; Fri, 7 Jul 2006 11:07:32 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67B7WSH090991 for perforce@freebsd.org; Fri, 7 Jul 2006 11:07:32 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 11:07:32 GMT Message-Id: <200607071107.k67B7WSH090991@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100860 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 11:07:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=100860 Change 100860 by wkoszek@wkoszek_laptop on 2006/07/07 11:07:28 Comment some things in src/sys/mips/mips/cpu.c because they're causing problems for now. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#2 (text+ko) ==== @@ -38,7 +38,14 @@ #include #include +/* + * XXXMIPS: This shoud me intr_machdep.h + */ +#if 0 #include +#endif +#include + #include #include #include @@ -49,6 +56,11 @@ */ int mips_num_tlb_entries, cpu_id, fpu_id; +/* + * XXXMIPS: CHange format strings. + * Uncomment this one once VECI macro defined below is uncommented. + */ +#if 0 static void mips_vector_install(vm_offset_t addr, char *begin, char *end) { @@ -56,7 +68,6 @@ max = 0x80; len = end - begin; - if (len > max) panic("exception code too big for vector %lx", addr); if (len == max) @@ -65,6 +76,7 @@ printf("Exception vector at %lx almost out of space\n", addr); memcpy((void *)addr, begin, len); } +#endif #define VEC(class) extern char class ## Vector[], class ## VectorEnd[] @@ -80,18 +92,28 @@ #undef VEC +/* + * XXXMIPS: error : large integer implicitly truncated to unsigned type + */ static void mips_vector_init(void) { + #define VECI(vec, class) mips_vector_install(MIPS_ ## vec ## _EXC_VEC, \ class ## Vector, \ class ## VectorEnd) +/* XXXMIPS */ +#if 0 VECI(UTLB_MISS, TLBMiss); VECI(XTLB_MISS, XTLBMiss); VECI(CACHE_ERR, Cache); VECI(GEN, Exception); +#endif #undef VECI +/* XXXMIPS */ +#if 0 mips_wr_status(mips_rd_status() & ~MIPS_SR_BEV); +#endif } /* @@ -302,7 +324,13 @@ device_printf(child, "could not activate irq\n"); return (error); } + /* + * XXXMIPS: error: structure has no member named `r_start' + */ +#if 0 intr = res->r_start; +#endif + intr = 0; cpu_establish_hardintr(intr, handler, arg); device_printf(child, "established CPU interrupt %d\n", intr); From owner-p4-projects@FreeBSD.ORG Fri Jul 7 11:11:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4535116A4E6; Fri, 7 Jul 2006 11:11:39 +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 1ECC716A4E1 for ; Fri, 7 Jul 2006 11:11:39 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A9A2943D55 for ; Fri, 7 Jul 2006 11:11:38 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67BBcCV091383 for ; Fri, 7 Jul 2006 11:11:38 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67BBc1X091380 for perforce@freebsd.org; Fri, 7 Jul 2006 11:11:38 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 11:11:38 GMT Message-Id: <200607071111.k67BBc1X091380@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100861 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 11:11:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=100861 Change 100861 by wkoszek@wkoszek_laptop on 2006/07/07 11:10:37 Replace jhb's intr_machdep.h with juli's one. After bms@ commit it's required with a name change (juli's code depended on intr.h, but I think it should be intr_machdep.h actually). Affected files ... .. //depot/projects/mips2/src/sys/mips/include/intr_machdep.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/intr_machdep.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2003 John Baldwin + * Copyright (c) 2004 Juli Mallett * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,119 +23,26 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.9 2006/02/28 22:24:54 jhb Exp $ + * $P4: //depot/projects/mips2/src/sys/mips/include/intr_machdep.h#2 $ */ -#ifndef __MACHINE_INTR_MACHDEP_H__ -#define __MACHINE_INTR_MACHDEP_H__ +#ifndef _MACHINE_INTR_H_ +#define _MACHINE_INTR_H_ -#ifdef _KERNEL +struct trapframe; /* - * The maximum number of I/O interrupts we allow. This number is rather - * arbitrary as it is just the maximum IRQ resource value. The interrupt - * source for a given IRQ maps that I/O interrupt to device interrupt - * source whether it be a pin on an interrupt controller or an MSI interrupt. - * The 16 ISA IRQs are assigned fixed IDT vectors, but all other device - * interrupts allocate IDT vectors on demand. Currently we have 191 IDT - * vectors available for device interrupts. On many systems with I/O APICs, - * a lot of the IRQs are not used, so this number can be much larger than - * 191 and still be safe since only interrupt sources in actual use will - * allocate IDT vectors. - * - * For now we stick with 255 as ISA IRQs and PCI intline IRQs only allow - * for IRQs in the range 0 - 254. When MSI support is added this number - * will likely increase. + * Include the platform-specific MD interrupt header. */ -#define NUM_IO_INTS 255 - /* - * - 1 ??? dummy counter. - * - 2 counters for each I/O interrupt. - * - 1 counter for each CPU for lapic timer. - * - 7 counters for each CPU for IPI counters for SMP. + * XXXMIPS: We don't have this file. */ -#ifdef SMP -#define INTRCNT_COUNT (1 + NUM_IO_INTS * 2 + 1) -#else -#define INTRCNT_COUNT (1 + NUM_IO_INTS * 2 + (1 + 7) * MAXCPU) +#if 0 +#include #endif -#ifndef LOCORE +void cpu_establish_hardintr(int, void (*)(void *), void *); +void cpu_establish_softintr(int, void (*)(void *), void *); +void cpu_intr(struct trapframe *); -typedef void inthand_t(u_int cs, u_int ef, u_int esp, u_int ss); - -#define IDTVEC(name) __CONCAT(X,name) - -struct intsrc; - -/* - * Methods that a PIC provides to mask/unmask a given interrupt source, - * "turn on" the interrupt on the CPU side by setting up an IDT entry, and - * return the vector associated with this source. - */ -struct pic { - void (*pic_enable_source)(struct intsrc *); - void (*pic_disable_source)(struct intsrc *, int); - void (*pic_eoi_source)(struct intsrc *); - void (*pic_enable_intr)(struct intsrc *); - int (*pic_vector)(struct intsrc *); - int (*pic_source_pending)(struct intsrc *); - void (*pic_suspend)(struct intsrc *); - void (*pic_resume)(struct intsrc *); - int (*pic_config_intr)(struct intsrc *, enum intr_trigger, - enum intr_polarity); - void (*pic_assign_cpu)(struct intsrc *, u_int apic_id); -}; - -/* Flags for pic_disable_source() */ -enum { - PIC_EOI, - PIC_NO_EOI, -}; - -/* - * An interrupt source. The upper-layer code uses the PIC methods to - * control a given source. The lower-layer PIC drivers can store additional - * private data in a given interrupt source such as an interrupt pin number - * or an I/O APIC pointer. - */ -struct intsrc { - struct pic *is_pic; - struct intr_event *is_event; - u_long *is_count; - u_long *is_straycount; - u_int is_index; - u_int is_enabled:1; -}; - -struct trapframe; - -extern struct mtx icu_lock; -extern int elcr_found; - -/* XXX: The elcr_* prototypes probably belong somewhere else. */ -int elcr_probe(void); -enum intr_trigger elcr_read_trigger(u_int irq); -void elcr_resume(void); -void elcr_write_trigger(u_int irq, enum intr_trigger trigger); -#ifdef SMP -void intr_add_cpu(u_int apic_id); -#else -#define intr_add_cpu(apic_id) -#endif -int intr_add_handler(const char *name, int vector, driver_intr_t handler, - void *arg, enum intr_type flags, void **cookiep); -int intr_config_intr(int vector, enum intr_trigger trig, - enum intr_polarity pol); -void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame); -struct intsrc *intr_lookup_source(int vector); -int intr_register_source(struct intsrc *isrc); -int intr_remove_handler(void *cookie); -void intr_resume(void); -void intr_suspend(void); -void intrcnt_add(const char *name, u_long **countp); - -#endif /* !LOCORE */ -#endif /* _KERNEL */ -#endif /* !__MACHINE_INTR_MACHDEP_H__ */ +#endif /* !_MACHINE_INTR_H_ */ From owner-p4-projects@FreeBSD.ORG Fri Jul 7 11:17:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 752A316A4E6; Fri, 7 Jul 2006 11:17:52 +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 22C8A16A4E1 for ; Fri, 7 Jul 2006 11:17:52 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D515A43D67 for ; Fri, 7 Jul 2006 11:17:46 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67BHkpl095936 for ; Fri, 7 Jul 2006 11:17:46 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67BHk6K095930 for perforce@freebsd.org; Fri, 7 Jul 2006 11:17:46 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 11:17:46 GMT Message-Id: <200607071117.k67BHk6K095930@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100862 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 11:17:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=100862 Change 100862 by wkoszek@wkoszek_laptop on 2006/07/07 11:17:20 Bring mips_opcode.h from NetBSD code. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/mips_opcode.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jul 7 11:29:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ADCA316A4E2; Fri, 7 Jul 2006 11:29:01 +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 71EB916A4DD for ; Fri, 7 Jul 2006 11:29:01 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 39CC943D49 for ; Fri, 7 Jul 2006 11:29:01 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67BT1M9099544 for ; Fri, 7 Jul 2006 11:29:01 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67BT07E099541 for perforce@freebsd.org; Fri, 7 Jul 2006 11:29:00 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 11:29:00 GMT Message-Id: <200607071129.k67BT07E099541@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100863 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 11:29:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=100863 Change 100863 by wkoszek@wkoszek_laptop on 2006/07/07 11:28:07 Add intrcnt, eintrcnt, intrnames and eintrnames to support.S Those are used as MI code. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/support.S#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/support.S#3 (text+ko) ==== @@ -60,3 +60,25 @@ ENTRY(copyin) ENTRY(copyout) + +/* + * XXXMIPS: + */ + .data + .globl intrcnt + .globl eintrcnt + +intrcnt: + .space 1 +eintrcnt: + .space 2 + + + .globl intrnames + .globl eintrnames + +intrnames: + .space 3 +eintrnames: + .space 4 + From owner-p4-projects@FreeBSD.ORG Fri Jul 7 11:33:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 404A216A4E0; Fri, 7 Jul 2006 11:33:07 +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 0465E16A4DE for ; Fri, 7 Jul 2006 11:33:07 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C176743D46 for ; Fri, 7 Jul 2006 11:33:06 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67BX6ku099957 for ; Fri, 7 Jul 2006 11:33:06 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67BX66M099954 for perforce@freebsd.org; Fri, 7 Jul 2006 11:33:06 GMT (envelope-from bms@freebsd.org) Date: Fri, 7 Jul 2006 11:33:06 GMT Message-Id: <200607071133.k67BX66M099954@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100864 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 11:33:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100864 Change 100864 by bms@bms_montagne on 2006/07/07 11:32:15 Fix for mips32; kseg2 begins at 0xc0000000 Affected files ... .. //depot/projects/mips2/src/sys/mips/include/tlb.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/tlb.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/mips2/src/sys/mips/include/tlb.h#1 $ + * $P4: //depot/projects/mips2/src/sys/mips/include/tlb.h#2 $ */ #ifndef _MACHINE_TLB_H_ @@ -32,7 +32,7 @@ extern pt_entry_t *kptmap; extern vm_size_t kptsize; -#define tlb_pte_index(va) (((va) - (MIPS_XKSEG_START)) >> PAGE_SHIFT) +#define tlb_pte_index(va) (((va) - (MIPS_KSEG2_START)) >> PAGE_SHIFT) #define tlb_pte_find(t,va) (&(t)[tlb_pte_index((va))]) void tlb_bootstrap(vm_size_t, vm_offset_t (*)(vm_size_t)); From owner-p4-projects@FreeBSD.ORG Fri Jul 7 11:44:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7A01716A4E2; Fri, 7 Jul 2006 11:44:22 +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 3D9F616A4DD for ; Fri, 7 Jul 2006 11:44:22 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E233743D58 for ; Fri, 7 Jul 2006 11:44:21 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67BiLmc000846 for ; Fri, 7 Jul 2006 11:44:21 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67BiLF9000843 for perforce@freebsd.org; Fri, 7 Jul 2006 11:44:21 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 11:44:21 GMT Message-Id: <200607071144.k67BiLF9000843@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100866 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 11:44:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=100866 Change 100866 by wkoszek@wkoszek_laptop on 2006/07/07 11:43:50 Comment intr_enable() for now in autoconf.c. Right after we'll reach the point of enter description here> compiling, we'll have to see how other architectures keep intr_restore(), intr_enable(), intr_disable() usages consistent. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/autoconf.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/autoconf.c#3 (text+ko) ==== @@ -99,7 +99,12 @@ * disabled in the interrupt controllers until interrupt handlers * are registered. */ +/* + * XXXMIPS: Check if it's needed. + */ +#if 0 intr_enable(); +#endif /* initialize new bus architecture */ root_bus_configure(); From owner-p4-projects@FreeBSD.ORG Fri Jul 7 11:45:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 82C1316A4E2; Fri, 7 Jul 2006 11:45:24 +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 1F14216A4E0 for ; Fri, 7 Jul 2006 11:45:24 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D7F7843D45 for ; Fri, 7 Jul 2006 11:45:23 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67BjNgh000959 for ; Fri, 7 Jul 2006 11:45:23 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67BjNw2000956 for perforce@freebsd.org; Fri, 7 Jul 2006 11:45:23 GMT (envelope-from bms@freebsd.org) Date: Fri, 7 Jul 2006 11:45:23 GMT Message-Id: <200607071145.k67BjNw2000956@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100867 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 11:45:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100867 Change 100867 by bms@bms_montagne on 2006/07/07 11:45:16 mips64 -> mips32 Affected files ... .. //depot/projects/mips2/src/sys/conf/kern.mk#4 edit .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#9 edit .. //depot/projects/mips2/src/sys/mips/mips/tlb.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/kern.mk#4 (text+ko) ==== @@ -88,7 +88,7 @@ .if ${MACHINE_ARCH} == "mips" CFLAGS+= -msoft-float -mno-abicalls -mips32 # XXX for debugging the build -CFLAGS+= -save-temps +#CFLAGS+= -save-temps INLINE_LIMIT?= 15000 .endif ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#9 (text+ko) ==== @@ -104,6 +104,8 @@ #endif } +#if 0 /* XXX mips64 */ + #define MIPS_RDRW64_COP0(n,r) \ static __inline u_int64_t \ mips_rd_ ## n (void) \ @@ -133,6 +135,7 @@ MIPS_RDRW64_COP0(xcontext, MIPS_COP_0_TLB_XCONTEXT); #undef MIPS_RDRW64_COP0 +#endif #define MIPS_RDRW32_COP0(n,r) \ static __inline u_int32_t \ @@ -164,6 +167,12 @@ MIPS_RDRW32_COP0(cause, MIPS_COP_0_CAUSE); MIPS_RDRW32_COP0(status, MIPS_COP_0_STATUS); +/* XXX: mips32 */ +MIPS_RDRW32_COP0(entrylow, MIPS_COP_0_TLB_LOW); +MIPS_RDRW32_COP0(entryhi, MIPS_COP_0_TLB_HI); +MIPS_RDRW32_COP0(pagemask, MIPS_COP_0_TLB_PG_MASK); +/* xcontext does not exist on mips32 */ + #undef MIPS_RDRW32_COP0 static __inline register_t ==== //depot/projects/mips2/src/sys/mips/mips/tlb.c#2 (text+ko) ==== @@ -115,10 +115,12 @@ */ mips_wr_wired(1); +#if 0 /* * Set up page table. */ - mips_wr_xcontext((uintptr_t)kptmap); + mips_wr_xcontext((uintptr_t)kptmap); /* XXX: mips64 */ +#endif } void @@ -214,8 +216,12 @@ /* Bogus VPN2. */ ehi = MIPS_KSEG1_END + 2 * i * PAGE_SIZE; mips_wr_index(i); +#if 0 mips_wr_entrylo0(0); - mips_wr_entrylo1(0); + mips_wr_entrylo1(0); /* XXX mips64 */ +#else + mips_wr_entrylow(0); +#endif mips_wr_entryhi(ehi); mips_tlbwi(); } From owner-p4-projects@FreeBSD.ORG Fri Jul 7 12:05:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6C99716A4E0; Fri, 7 Jul 2006 12:05:51 +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 45E2A16A4DD for ; Fri, 7 Jul 2006 12:05:51 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EB67743D45 for ; Fri, 7 Jul 2006 12:05:50 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67C5o3n003492 for ; Fri, 7 Jul 2006 12:05:50 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67C5owF003488 for perforce@freebsd.org; Fri, 7 Jul 2006 12:05:50 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 12:05:50 GMT Message-Id: <200607071205.k67C5owF003488@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100868 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 12:05:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100868 Change 100868 by gonzo@gonzo_hq on 2006/07/07 12:04:59 Stubs for mips cache operations. Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#8 edit .. //depot/projects/mips2/src/sys/mips/mips/cache.c#1 add Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#8 (text+ko) ==== @@ -1,6 +1,7 @@ # $FreeBSD$ mips/mips/autoconf.c standard mips/mips/busdma_machdep.c standard +mips/mips/cache.c standard mips/mips/copystr.S standard mips/mips/cpu.c standard mips/mips/db_disasm.c optional ddb From owner-p4-projects@FreeBSD.ORG Fri Jul 7 12:20:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 358A716A4E7; Fri, 7 Jul 2006 12:20:10 +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 D1FE716A4E1 for ; Fri, 7 Jul 2006 12:20:09 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D60D143D79 for ; Fri, 7 Jul 2006 12:20:08 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67CK8n2004489 for ; Fri, 7 Jul 2006 12:20:08 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67CK8de004486 for perforce@freebsd.org; Fri, 7 Jul 2006 12:20:08 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 12:20:08 GMT Message-Id: <200607071220.k67CK8de004486@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100869 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 12:20:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=100869 Change 100869 by wkoszek@wkoszek_laptop on 2006/07/07 12:19:12 This is very hackish way of getting db_interface.c work. Some routines need to be investigated and uncommented to make kernel with DDB more happy. Leave those #ifdef'ed. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/db_interface.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/db_interface.c#3 (text+ko) ==== @@ -1,30 +1,31 @@ -/*- - * Copyright (c) [year] [your name] - * All rights reserved. +/* $NetBSD: db_interface.c,v 1.46 2003/01/17 23:36:11 thorpej Exp $ */ + +/* + * Mach Operating System + * Copyright (c) 1991,1990 Carnegie Mellon University + * All Rights Reserved. + * + * Permission to use, copy, modify and distribute this software and its + * documentation is hereby granted, provided that both the copyright + * notice and this permission notice appear in all copies of the + * software, derivative works or modified versions, and any portions + * thereof, and that both notices appear in supporting documentation. + * + * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" + * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR + * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. + * Carnegie Mellon requests users of this software to return to * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU + * School of Computer Science + * Carnegie Mellon University + * Pittsburgh PA 15213-3890 * - * $Id$ + * any improvements or extensions that they make and grant Carnegie Mellon + * the rights to redistribute these changes. */ + #include "opt_ddb.h" #include @@ -53,21 +54,727 @@ #include #include +int db_active = 0; +db_regs_t ddb_regs; +register_t kdbaux[11]; /* XXX struct switchframe: better inside curpcb? XXX */ + +static void kdbpoke_4(db_addr_t addr, int newval); +static void kdbpoke_2(db_addr_t addr, short newval); +static void kdbpoke_1(db_addr_t addr, char newval); +/* + * XXXMIPS: + */ +#if 0 +static short kdbpeek_2(db_addr_t addr); +static char kdbpeek_1(db_addr_t addr); +static db_addr_t MachEmulateBranch(struct frame *, db_addr_t, unsigned long, int); +#endif + +/* + * XXXMIPS: + */ +#if 0 +int +kdbpeek(db_addr_t addr) +{ + + if (addr == 0 || (addr & 3)) + return 0; + return *(int *)addr; +} + +static short +kdbpeek_2(db_addr_t addr) +{ + + return *(short *)addr; +} + +static char +kdbpeek_1(db_addr_t addr) +{ + + return *(char *)addr; +} +#endif + +/* + * kdbpoke -- write a value to a kernel virtual address. + * XXX should handle KSEG2 addresses and check for unmapped pages. + * XXX user-space addresess? + */ +static void +kdbpoke_4(db_addr_t addr, int newval) +{ + + *(int*) addr = newval; + mips_wbflush(); +} + +static void +kdbpoke_2(db_addr_t addr, short newval) +{ + + *(short*) addr = newval; + mips_wbflush(); +} + +static void +kdbpoke_1(db_addr_t addr, char newval) +{ + *(char*) addr = newval; + mips_wbflush(); +} + +#if 0 /* UNUSED */ +/* + * Received keyboard interrupt sequence. + */ +void +kdb_kbd_trap(int *tf) +{ + + if (db_active == 0 && (boothowto & RB_KDB)) { + printf("\n\nkernel: keyboard interrupt\n"); + ddb_trap(-1, tf); + } +} +#endif + +/* + * XXXMIPS: kdb_trap is disabled for now. I probably saw it somewhere in + * subr_kdb.c, but not for sure. + */ +#if 0 +int +kdb_trap(int type, struct trapframe *tfp) +{ + + struct frame *f = (struct frame *)&ddb_regs; +/* + * XXXMIPS: + */ +#if 0 +#ifdef notyet + switch (type) { + case T_BREAK: /* breakpoint */ + case -1: /* keyboard interrupt */ + break; + default: + printf("kernel: %s trap", trap_type[type & 0xff]); + if (db_recover != 0) { + db_error("Faulted in DDB; continuing...\n"); + /*NOTREACHED*/ + } + break; + } +#endif +#endif + /* Should switch to kdb`s own stack here. */ + db_set_ddb_regs(type, tfp); + + db_active++; + cndbctl(TRUE); +/* + * XXXMIPS: + */ +#if 0 +#if notyet + db_trap(type & ~T_USER, 0 /*code*/); +#else + db_trap(type, 0 /*code*/); +#endif +#endif + cndbctl(FALSE); + db_active--; +/* + * XXXMIPS: + */ +#if 0 +#if notyet + if (type & T_USER) + *(struct frame *)curthread->td_md.md_regs = *f; +#else + if (0) + return (1); +#endif +#endif + else { + /* Synthetic full scale register context when trap happens */ + kdbaux[0] = f->f_regs[S0]; + kdbaux[1] = f->f_regs[S1]; + kdbaux[2] = f->f_regs[S2]; + kdbaux[3] = f->f_regs[S3]; + kdbaux[4] = f->f_regs[S4]; + kdbaux[5] = f->f_regs[S5]; + kdbaux[6] = f->f_regs[S6]; + kdbaux[7] = f->f_regs[S7]; + kdbaux[8] = f->f_regs[SP]; + kdbaux[9] = f->f_regs[S8]; + kdbaux[10] = f->f_regs[GP]; + } + + return (1); +} +#endif void -db_show_mdpcpu(struct pcpu *pc) +db_set_ddb_regs(int type, struct trapframe *tfp) { + struct frame *f = (struct frame *)&ddb_regs; + + /* Should switch to kdb`s own stack here. */ + +/* + * XXXMIPS: + */ +#if 0 +#if notyet + if (type & T_USER) + *f = *(struct frame *)curthread->td_md.md_regs; +#else + if (0) + return; +#endif +#endif + /* + * XXXMIPS: I also added this one. + */ + if (0) + return; + else { + /* Synthetic full scale register context when trap happens */ + f->f_regs[AST] = tfp->tf_regs[TF_AST]; + f->f_regs[V0] = tfp->tf_regs[TF_V0]; + f->f_regs[V1] = tfp->tf_regs[TF_V1]; + f->f_regs[A0] = tfp->tf_regs[TF_A0]; + f->f_regs[A1] = tfp->tf_regs[TF_A1]; + f->f_regs[A2] = tfp->tf_regs[TF_A2]; + f->f_regs[A3] = tfp->tf_regs[TF_A3]; + f->f_regs[T0] = tfp->tf_regs[TF_T0]; + f->f_regs[T1] = tfp->tf_regs[TF_T1]; + f->f_regs[T2] = tfp->tf_regs[TF_T2]; + f->f_regs[T3] = tfp->tf_regs[TF_T3]; + f->f_regs[TA0] = tfp->tf_regs[TF_TA0]; + f->f_regs[TA1] = tfp->tf_regs[TF_TA1]; + f->f_regs[TA2] = tfp->tf_regs[TF_TA2]; + f->f_regs[TA3] = tfp->tf_regs[TF_TA3]; + f->f_regs[T8] = tfp->tf_regs[TF_T8]; + f->f_regs[T9] = tfp->tf_regs[TF_T9]; + f->f_regs[RA] = tfp->tf_regs[TF_RA]; + f->f_regs[SR] = tfp->tf_regs[TF_SR]; + f->f_regs[MULLO] = tfp->tf_regs[TF_MULLO]; + f->f_regs[MULHI] = tfp->tf_regs[TF_MULHI]; + f->f_regs[PC] = tfp->tf_regs[TF_EPC]; + f->f_regs[S0] = kdbaux[0]; + f->f_regs[S1] = kdbaux[1]; + f->f_regs[S2] = kdbaux[2]; + f->f_regs[S3] = kdbaux[3]; + f->f_regs[S4] = kdbaux[4]; + f->f_regs[S5] = kdbaux[5]; + f->f_regs[S6] = kdbaux[6]; + f->f_regs[S7] = kdbaux[7]; + f->f_regs[SP] = kdbaux[8]; + f->f_regs[S8] = kdbaux[9]; + f->f_regs[GP] = kdbaux[10]; + } } +/* + * Read bytes from kernel address space for debugger. + */ int -db_write_bytes(vm_offset_t addr, size_t size, char *data) +db_read_bytes(vm_offset_t addr, size_t size, char *data) { + +/* + * XXXMIPS: warning: use of cast expressions as lvalues is deprecated + */ +#if 0 + while (size >= 4) + *((int*)data)++ = kdbpeek(addr), addr += 4, size -= 4; + while (size >= 2) + *((short*)data)++ = kdbpeek_2(addr), addr += 2, size -= 2; + if (size == 1) + *((char*)data)++ = kdbpeek_1(addr); +#endif return (0); } +/* + * Write bytes to kernel address space for debugger. + */ int -db_read_bytes(vm_offset_t addr, size_t size, char *data) +db_write_bytes(vm_offset_t addr, size_t size, char *data) { + db_addr_t p = addr; + size_t n = size; + +#ifdef DEBUG_DDB + printf("db_write_bytes(%lx, %d, %p, val %x)\n", addr, size, data, + (addr &3 ) == 0? *(u_int*)addr: -1); +#endif + + while (n >= 4) { + kdbpoke_4(p, *(int*)data); + p += 4; + data += 4; + n -= 4; + } + if (n >= 2) { + kdbpoke_2(p, *(short*)data); + p += 2; + data += 2; + n -= 2; + } + if (n == 1) { + kdbpoke_1(p, *(char*)data); + } + + mips_icache_sync_range((db_addr_t) addr, size); return (0); } +DB_COMMAND(tlb, db_tlbdump_cmd) +{ + u_long hi; + u_long lo[2]; + u_long pm; + int i; + + for (i = 0; i < mips_num_tlb_entries; i++) { + mips_wr_index(i); + mips_tlbr(); + hi = mips_rd_entryhi(); + lo[0] = mips_rd_entrylo0(); + lo[1] = mips_rd_entrylo1(); + pm = mips_rd_pagemask(); + + printf("=== TLB Entry %02d === ", i); + printf("(%svalid) ", (lo[0] | lo[1]) & PG_V ? " " : "in"); + printf("EntryHi=0x%016lx ", hi); + printf("PageMask=%#lx\n", pm); + if (*modif != 'a' && (((lo[0] | lo[1]) & PG_V) == 0)) + continue; + printf("\tEntryLo0 = 0x%016lx (%c%c%c)\n", lo[0], + (lo[0] & PG_D) ? 'D' : ' ', + (lo[0] & PG_G) ? 'G' : ' ', + (lo[0] & PG_V) ? 'V' : '!'); + printf("\tEntryLo1 = 0x%016lx (%c%c%c)\n", lo[1], + (lo[1] & PG_D) ? 'D' : ' ', + (lo[1] & PG_G) ? 'G' : ' ', + (lo[1] & PG_V) ? 'V' : '!'); + } +} + +DB_COMMAND(kvtop, db_kvtophys_cmd) +{ + + if (!have_addr) + return; + db_printf("%#lx -> %#lx\n", (u_long)addr, + (u_long)pmap_kextract(addr)); +} + +#define FLDWIDTH 10 +#define SHOW32(reg, name) \ +do { \ + uint32_t __val; \ + \ + __asm __volatile("mfc0 %0,$" __STRING(reg) : "=r"(__val)); \ + printf(" %s:%*s %#x\n", name, FLDWIDTH - (int) strlen(name), \ + "", (u_int)__val); \ +} while (0) + +/* + * XXXMIPS: + */ +#if 0 +/* XXX not 64-bit ABI safe! */ +#define SHOW64(reg, name) \ +do { \ + uint64_t __val; \ + \ + __asm __volatile("dmfc0 %0,$" __STRING(reg):"=r"(__val)); \ + printf(" %s:%*s %#lx\n", name, FLDWIDTH - (int) strlen(name), \ + "", (u_long)__val); \ +} while (0) +#endif + +#define SHOW64(reg, name) \ +do { \ + uint64_t __val; \ + \ + __asm __volatile("mfc0 %0,$" __STRING(reg):"=r"(__val)); \ + printf(" %s:%*s %#lx\n", name, FLDWIDTH - (int) strlen(name), \ + "", (u_long)__val); \ +} while (0) + +DB_COMMAND(cp0, db_cp0dump_cmd) +{ + SHOW32(MIPS_COP_0_TLB_INDEX, "index"); + SHOW32(MIPS_COP_0_TLB_RANDOM, "random"); + + SHOW64(MIPS_COP_0_TLB_LO0, "entrylo0"); + SHOW64(MIPS_COP_0_TLB_LO1, "entrylo1"); + + SHOW64(MIPS_COP_0_TLB_CONTEXT, "context"); + + SHOW32(MIPS_COP_0_TLB_PG_MASK, "pagemask"); + SHOW32(MIPS_COP_0_TLB_WIRED, "wired"); + + SHOW64(MIPS_COP_0_BAD_VADDR, "badvaddr"); + + SHOW32(MIPS_COP_0_COUNT, "count"); + + SHOW64(MIPS_COP_0_TLB_HI, "entryhi"); + + SHOW32(MIPS_COP_0_COMPARE, "compare"); + + SHOW32(MIPS_COP_0_STATUS, "status"); + SHOW32(MIPS_COP_0_CAUSE, "cause"); + + SHOW64(MIPS_COP_0_EXC_PC, "epc"); + + SHOW32(MIPS_COP_0_PRID, "prid"); + SHOW32(MIPS_COP_0_CONFIG, "config"); + + SHOW64(MIPS_COP_0_LLADDR, "lladdr"); + SHOW64(MIPS_COP_0_WATCH_LO, "watchlo"); + + SHOW32(MIPS_COP_0_WATCH_HI, "watchhi"); + + SHOW64(MIPS_COP_0_TLB_XCONTEXT, "xcontext"); + SHOW64(MIPS_COP_0_PERFCNT, "perfcnt"); + + SHOW32(MIPS_COP_0_ECC, "ecc"); + SHOW32(MIPS_COP_0_CACHE_ERR, "cacherr"); + SHOW32(MIPS_COP_0_TAG_LO, "cachelo"); + SHOW32(MIPS_COP_0_TAG_HI, "cachehi"); + + SHOW64(MIPS_COP_0_ERROR_PC, "errorpc"); +} + +/* + * Determine whether the instruction involves a delay slot. + */ +boolean_t +inst_branch(int inst) +{ + InstFmt i; + int delay; + + i.word = inst; + delay = 0; + switch (i.JType.op) { + case OP_BCOND: + case OP_J: + case OP_JAL: + case OP_BEQ: + case OP_BNE: + case OP_BLEZ: + case OP_BGTZ: + case OP_BEQL: + case OP_BNEL: + case OP_BLEZL: + case OP_BGTZL: + delay = 1; + break; + + case OP_COP0: + case OP_COP1: + switch (i.RType.rs) { + case OP_BCx: + case OP_BCy: + delay = 1; + } + break; + + case OP_SPECIAL: + if (i.RType.op == OP_JR || i.RType.op == OP_JALR) + delay = 1; + break; + } + return delay; +} + +/* + * Determine whether the instruction calls a function. + */ +boolean_t +inst_call(int inst) +{ + boolean_t call; + InstFmt i; + + i.word = inst; + if (i.JType.op == OP_SPECIAL + && ((i.RType.func == OP_JR && i.RType.rs != 31) || + i.RType.func == OP_JALR)) + call = 1; + else if (i.JType.op == OP_JAL) + call = 1; + else + call = 0; + return call; +} + +/* + * Determine whether the instruction returns from a function (j ra). The + * compiler can use this construct for other jumps, but usually will not. + * This lets the ddb "next" command to work (also need inst_trap_return()). + */ +boolean_t +inst_return(int inst) +{ + InstFmt i; + + i.word = inst; + + return (i.JType.op == OP_SPECIAL && i.RType.func == OP_JR && + i.RType.rs == 31); +} + +/* + * Determine whether the instruction makes a jump. + */ +boolean_t +inst_unconditional_flow_transfer(int inst) +{ + InstFmt i; + boolean_t jump; + + i.word = inst; + jump = (i.JType.op == OP_J) || + (i.JType.op == OP_SPECIAL && i.RType.func == OP_JR); + return jump; +} + +/* + * Determine whether the instruction is a load/store as appropriate. + */ +boolean_t +inst_load(int inst) +{ + InstFmt i; + + i.word = inst; + + switch (i.JType.op) { + case OP_LWC1: + case OP_LB: + case OP_LH: + case OP_LW: + case OP_LD: + case OP_LBU: + case OP_LHU: + case OP_LWU: + case OP_LDL: + case OP_LDR: + case OP_LWL: + case OP_LWR: + case OP_LL: + return 1; + default: + return 0; + } +} + +boolean_t +inst_store(int inst) +{ + InstFmt i; + + i.word = inst; + + switch (i.JType.op) { + case OP_SWC1: + case OP_SB: + case OP_SH: + case OP_SW: + case OP_SD: + case OP_SDL: + case OP_SDR: + case OP_SWL: + case OP_SWR: + case OP_SCD: + return 1; + default: + return 0; + } +} + +/* + * Return the next pc if the given branch is taken. + * MachEmulateBranch() runs analysis for branch delay slot. + */ +#if 0 +db_addr_t +branch_taken(int inst, db_addr_t pc, db_regs_t *regs) +{ + db_addr_t ra; + unsigned long fpucsr; + + fpucsr = curthread ? PCB_FSR(curthread->td_pcb) : 0; + ra = MachEmulateBranch((struct frame *)regs, pc, fpucsr, 0); + return ra; +} +#endif + +/* + * Return the next pc of an arbitrary instruction. + */ +db_addr_t +next_instr_address(db_addr_t pc, boolean_t bd) +{ + unsigned ins; + + if (bd == FALSE) + return (pc + 4); + + if (pc < MIPS_KSEG0_START) + ins = fuword((void *)pc); + else + ins = *(unsigned *)pc; + + if (inst_branch(ins) || inst_call(ins) || inst_return(ins)) + return (pc + 4); + + return (pc); +} + +void +db_show_mdpcpu(struct pcpu *pc) +{ +} + +DB_COMMAND(reboot, db_reboot) +{ + cpu_reset(); +} + +DB_COMMAND(halt, db_halt) +{ + cpu_halt(); +} + +#if 0 +/* + * Analyse 'next' PC address taking account of branch/jump instructions + */ +static db_addr_t +MachEmulateBranch(f, instpc, fpuCSR, allowNonBranch) + struct frame *f; + db_addr_t instpc; + unsigned long fpuCSR; + int allowNonBranch; +{ +#define BRANCHTARGET(p) (4 + (p) + ((short)((InstFmt *)(p))->IType.imm << 2)) + InstFmt inst; + db_addr_t nextpc; + + if (instpc < MIPS_KSEG0_START) + inst.word = fuword((void *)instpc); + else + inst.word = *(unsigned *)instpc; + + switch ((int)inst.JType.op) { + case OP_SPECIAL: + if (inst.RType.func == OP_JR || inst.RType.func == OP_JALR) + nextpc = f->f_regs[inst.RType.rs]; + else if (allowNonBranch) + nextpc = instpc + 4; + else + panic("MachEmulateBranch: Non-branch"); + break; + + case OP_BCOND: + switch ((int)inst.IType.rt) { + case OP_BLTZ: + case OP_BLTZAL: + case OP_BLTZL: /* squashed */ + case OP_BLTZALL: /* squashed */ + if ((int)(f->f_regs[inst.RType.rs]) < 0) + nextpc = BRANCHTARGET(instpc); + else + nextpc = instpc + 8; + break; + + case OP_BGEZ: + case OP_BGEZAL: + case OP_BGEZL: /* squashed */ + case OP_BGEZALL: /* squashed */ + if ((int)(f->f_regs[inst.RType.rs]) >= 0) + nextpc = BRANCHTARGET(instpc); + else + nextpc = instpc + 8; + break; + + default: + panic("MachEmulateBranch: Bad branch cond"); + } + break; + + case OP_J: + case OP_JAL: + nextpc = (inst.JType.target << 2) | + ((register_t)instpc & 0xF0000000); + break; + + case OP_BEQ: + case OP_BEQL: /* squashed */ + if (f->f_regs[inst.RType.rs] == f->f_regs[inst.RType.rt]) + nextpc = BRANCHTARGET(instpc); + else + nextpc = instpc + 8; + break; + + case OP_BNE: + case OP_BNEL: /* squashed */ + if (f->f_regs[inst.RType.rs] != f->f_regs[inst.RType.rt]) + nextpc = BRANCHTARGET(instpc); + else + nextpc = instpc + 8; + break; + + case OP_BLEZ: + case OP_BLEZL: /* squashed */ + if ((int)(f->f_regs[inst.RType.rs]) <= 0) + nextpc = BRANCHTARGET(instpc); + else + nextpc = instpc + 8; + break; + + case OP_BGTZ: + case OP_BGTZL: /* squashed */ + if ((int)(f->f_regs[inst.RType.rs]) > 0) + nextpc = BRANCHTARGET(instpc); + else + nextpc = instpc + 8; + break; + + case OP_COP1: + if (inst.RType.rs == OP_BCx || inst.RType.rs == OP_BCy) { + int condition = (fpuCSR & MIPS_FPU_COND_BIT) != 0; + if ((inst.RType.rt & COPz_BC_TF_MASK) != COPz_BC_TRUE) + condition = !condition; + if (condition) + nextpc = BRANCHTARGET(instpc); + else + nextpc = instpc + 8; + } + else if (allowNonBranch) + nextpc = instpc + 4; + else + panic("MachEmulateBranch: Bad COP1 branch instruction"); + break; + + default: + if (!allowNonBranch) + panic("MachEmulateBranch: Non-branch instruction"); + nextpc = instpc + 4; + } + return nextpc; +#undef BRANCHTARGET +} +#endif From owner-p4-projects@FreeBSD.ORG Fri Jul 7 12:26:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3333F16A4E1; Fri, 7 Jul 2006 12:26:18 +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 EA21616A4DD for ; Fri, 7 Jul 2006 12:26:17 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A715B43D6E for ; Fri, 7 Jul 2006 12:26:17 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67CQH3w004932 for ; Fri, 7 Jul 2006 12:26:17 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67CQHT6004929 for perforce@freebsd.org; Fri, 7 Jul 2006 12:26:17 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 12:26:17 GMT Message-Id: <200607071226.k67CQHT6004929@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100870 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 12:26:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=100870 Change 100870 by wkoszek@wkoszek_laptop on 2006/07/07 12:26:03 Stubs for memrw(), memmmap(), dev_mem_md_init() to mem.c Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/mem.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/mem.c#2 (text+ko) ==== @@ -1,21 +1,21 @@ /*- - * Copyright (c) 2006 Fill this file and put your name here + * Copyright (c) Put your name here once you'll change it. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer, - * without modification, immediately at the beginning of the file. - * 2. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT @@ -23,7 +23,54 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * + * $Id$ */ - #include __FBSDID("$FreeBSD$"); + +/* + * Memory special file + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include + +#include "opt_global.h" + + +/* ARGSUSED */ +int +memrw(struct cdev *dev, struct uio *uio, int flags) +{ + return (0); +} + +int +memmmap(struct cdev *dev, vm_offset_t offset, vm_paddr_t *paddr, + int prot __unused) +{ + return (0); +} + +void +dev_mem_md_init(void) +{ +} From owner-p4-projects@FreeBSD.ORG Fri Jul 7 12:30:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C147C16A4E2; Fri, 7 Jul 2006 12:30:23 +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 9D38916A4DD for ; Fri, 7 Jul 2006 12:30:23 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3967A43D60 for ; Fri, 7 Jul 2006 12:30:23 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67CUMTH005200 for ; Fri, 7 Jul 2006 12:30:23 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67CUM4l005196 for perforce@freebsd.org; Fri, 7 Jul 2006 12:30:22 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 12:30:22 GMT Message-Id: <200607071230.k67CUM4l005196@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100871 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 12:30:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100871 Change 100871 by wkoszek@wkoszek_laptop on 2006/07/07 12:29:44 Fix branch_taken() as it's needed by MI code (db_interface.c stuff). Note we have no 'regs' anymore as the function's arguments. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/db_interface.c#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/db_interface.c#4 (text+ko) ==== @@ -608,18 +608,21 @@ * Return the next pc if the given branch is taken. * MachEmulateBranch() runs analysis for branch delay slot. */ -#if 0 db_addr_t -branch_taken(int inst, db_addr_t pc, db_regs_t *regs) +branch_taken(int inst, db_addr_t pc) { db_addr_t ra; unsigned long fpucsr; + ra = (db_addr_t) 0; + fpucsr = 0; +#if 0 fpucsr = curthread ? PCB_FSR(curthread->td_pcb) : 0; ra = MachEmulateBranch((struct frame *)regs, pc, fpucsr, 0); return ra; +#endif + return ((db_addr_t) 0); } -#endif /* * Return the next pc of an arbitrary instruction. From owner-p4-projects@FreeBSD.ORG Fri Jul 7 12:33:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 58BAC16A4E5; Fri, 7 Jul 2006 12:33:28 +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 3354716A4DA for ; Fri, 7 Jul 2006 12:33:28 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D842843D6E for ; Fri, 7 Jul 2006 12:33:27 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67CXRJH005467 for ; Fri, 7 Jul 2006 12:33:27 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67CXRP6005464 for perforce@freebsd.org; Fri, 7 Jul 2006 12:33:27 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 12:33:27 GMT Message-Id: <200607071233.k67CXRP6005464@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100872 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 12:33:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=100872 Change 100872 by wkoszek@wkoszek_laptop on 2006/07/07 12:32:27 Add realmem to machdep.c since MI code depends on it. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#4 (text+ko) ==== @@ -66,6 +66,7 @@ int cold = 1; int clocks_running; +long realmem = 0; static struct pcpu pcpu0; struct pcpu *pcpup = &pcpu0; From owner-p4-projects@FreeBSD.ORG Fri Jul 7 12:34:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 83FA316A4ED; Fri, 7 Jul 2006 12:34:53 +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 4729116A4DD for ; Fri, 7 Jul 2006 12:34:53 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A563A43D83 for ; Fri, 7 Jul 2006 12:34:29 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67CYTJd005516 for ; Fri, 7 Jul 2006 12:34:29 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67CYTxj005513 for perforce@freebsd.org; Fri, 7 Jul 2006 12:34:29 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 12:34:29 GMT Message-Id: <200607071234.k67CYTxj005513@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100873 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 12:34:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=100873 Change 100873 by gonzo@gonzo_hq on 2006/07/07 12:34:28 pmap.c stuff: Integrate pmap_enter_object, pmap_init_page from arm. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/pmap.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/pmap.c#3 (text+ko) ==== @@ -748,6 +748,17 @@ #endif } +/* + * Initialize a vm_page's machine-dependent fields. + */ +void +pmap_page_init(vm_page_t m) +{ + + TAILQ_INIT(&m->md.pv_list); + m->md.pv_list_count = 0; +} + /*************************************************** * Pmap allocation/deallocation routines. ***************************************************/ @@ -1199,6 +1210,40 @@ tlb_enter(pmap, va, pa, PG_V | wired); } +/* + * Maps a sequence of resident pages belonging to the same object. + * The sequence begins with the given page m_start. This page is + * mapped at the given virtual address start. Each subsequent page is + * mapped at a virtual address that is offset from start by the same + * amount as the page is offset from m_start within the object. The + * last page in the sequence is the page with the largest offset from + * m_start that can be mapped at a virtual address less than the given + * virtual address end. Not every virtual page between start and end + * is mapped; only those for which a resident page exists with the + * corresponding offset from m_start are mapped. + */ +void +pmap_enter_object(pmap_t pmap, vm_offset_t start, vm_offset_t end, + vm_page_t m_start, vm_prot_t prot) +{ + vm_page_t m; + vm_pindex_t diff, psize; + int s; + + psize = atop(end - start); + m = m_start; + /* + * MIPSXXX: check if locking required. + */ + s = splvm(); + while (m != NULL && (diff = m->pindex - m_start->pindex) < psize) { + pmap_enter(pmap, start + ptoa(diff), m, prot & + (VM_PROT_READ | VM_PROT_EXECUTE), FALSE); + m = TAILQ_NEXT(m, listq); + } + splx(s); +} + void pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) { From owner-p4-projects@FreeBSD.ORG Fri Jul 7 12:41:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 356EC16A4E0; Fri, 7 Jul 2006 12:41:39 +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 EBB3F16A4DD for ; Fri, 7 Jul 2006 12:41:38 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B378143D49 for ; Fri, 7 Jul 2006 12:41:38 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67CfcGk006027 for ; Fri, 7 Jul 2006 12:41:38 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67CfcZ8006024 for perforce@freebsd.org; Fri, 7 Jul 2006 12:41:38 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 12:41:38 GMT Message-Id: <200607071241.k67CfcZ8006024@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100874 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 12:41:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=100874 Change 100874 by wkoszek@wkoszek_laptop on 2006/07/07 12:40:54 Rename intr.c to intr_machdep.c, which we use on other architectures. Thanks go to: jhb@ Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#9 edit .. //depot/projects/mips2/src/sys/mips/mips/intr.c#2 delete .. //depot/projects/mips2/src/sys/mips/mips/intr_machdep.c#1 branch Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#9 (text+ko) ==== @@ -11,7 +11,7 @@ mips/mips/elf_machdep.c standard mips/mips/exception.S standard mips/mips/in_cksum.c optional inet -mips/mips/intr.c standard +mips/mips/intr_machdep.c standard mips/mips/locore.S standard no-obj mips/mips/machdep.c standard mips/mips/mem.c optional mem From owner-p4-projects@FreeBSD.ORG Fri Jul 7 12:47:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3518D16A4E1; Fri, 7 Jul 2006 12:47:48 +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 0AD7516A4DA for ; Fri, 7 Jul 2006 12:47:48 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A087943D55 for ; Fri, 7 Jul 2006 12:47:47 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67Cllbb014139 for ; Fri, 7 Jul 2006 12:47:47 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67CllQc014135 for perforce@freebsd.org; Fri, 7 Jul 2006 12:47:47 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 12:47:47 GMT Message-Id: <200607071247.k67CllQc014135@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100875 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 12:47:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=100875 Change 100875 by gonzo@gonzo_hq on 2006/07/07 12:46:51 entrylo0/entrylo1 registers rd/wr functions added. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#10 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#10 (text+ko) ==== @@ -168,6 +168,8 @@ MIPS_RDRW32_COP0(status, MIPS_COP_0_STATUS); /* XXX: mips32 */ +MIPS_RDRW32_COP0(entrylo0, MIPS_COP_0_TLB_LO0); +MIPS_RDRW32_COP0(entrylo1, MIPS_COP_0_TLB_LO1); MIPS_RDRW32_COP0(entrylow, MIPS_COP_0_TLB_LOW); MIPS_RDRW32_COP0(entryhi, MIPS_COP_0_TLB_HI); MIPS_RDRW32_COP0(pagemask, MIPS_COP_0_TLB_PG_MASK); From owner-p4-projects@FreeBSD.ORG Fri Jul 7 13:06:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8205E16A4E0; Fri, 7 Jul 2006 13:06:11 +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 3C7E016A4DA for ; Fri, 7 Jul 2006 13:06:11 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 059D643D53 for ; Fri, 7 Jul 2006 13:06:11 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67D6A34017118 for ; Fri, 7 Jul 2006 13:06:10 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67D6Akc017115 for perforce@freebsd.org; Fri, 7 Jul 2006 13:06:10 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 13:06:10 GMT Message-Id: <200607071306.k67D6Akc017115@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100876 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 13:06:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=100876 Change 100876 by wkoszek@wkoszek_laptop on 2006/07/07 13:05:34 Bring rest of platform_* functions to make various places happy. Please note that I know it's probably bad place, but we might copy them somewhere else. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#5 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#5 (text+ko) ==== @@ -263,3 +263,28 @@ { } + + +void +platform_identify(void) +{ + +} + +void +platform_reset(void) +{ + +} + +void +platform_trap_enter(void) +{ + +} + +void +platform_trap_exit(void) +{ + +} From owner-p4-projects@FreeBSD.ORG Fri Jul 7 13:18:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C93FC16A4DE; Fri, 7 Jul 2006 13:18:28 +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 8962216A4DA for ; Fri, 7 Jul 2006 13:18:28 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3C21B43D46 for ; Fri, 7 Jul 2006 13:18:28 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67DISVs017863 for ; Fri, 7 Jul 2006 13:18:28 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67DIReU017860 for perforce@freebsd.org; Fri, 7 Jul 2006 13:18:27 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 13:18:27 GMT Message-Id: <200607071318.k67DIReU017860@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100877 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 13:18:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=100877 Change 100877 by gonzo@gonzo_hq on 2006/07/07 13:18:19 btext symbol has been added. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/locore.S#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#4 (text+ko) ==== @@ -33,5 +33,6 @@ /* * XXXMIPS: Fill this later. */ +ENTRY(btext) ENTRY(_start) nop From owner-p4-projects@FreeBSD.ORG Fri Jul 7 13:25:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 45EB216A4E2; Fri, 7 Jul 2006 13:25:38 +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 07BD116A4E0 for ; Fri, 7 Jul 2006 13:25:38 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B987643D45 for ; Fri, 7 Jul 2006 13:25:37 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67DPb8b018708 for ; Fri, 7 Jul 2006 13:25:37 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67DPbtD018705 for perforce@freebsd.org; Fri, 7 Jul 2006 13:25:37 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 13:25:37 GMT Message-Id: <200607071325.k67DPbtD018705@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100878 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 13:25:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=100878 Change 100878 by gonzo@gonzo_hq on 2006/07/07 13:25:22 Stubs for machine-dependent elf functions. Integrated from juli@ tree. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/elf_machdep.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/elf_machdep.c#2 (text+ko) ==== @@ -1,21 +1,20 @@ /*- - * Copyright (c) 2006 Fill this file and put your name here - * All rights reserved. + * Copyright (c) 2003-2004 Juli Mallett. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer, - * without modification, immediately at the beginning of the file. - * 2. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT @@ -23,7 +22,45 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * + * $FreeBSD$ */ -#include -__FBSDID("$FreeBSD$"); +#include +#include +#include +#include +#include + +void +elf32_dump_thread(struct thread *td, void *dst, size_t *off) +{ + printf("%s unimplemented at %s:%d.\n", __func__, __FILE__, __LINE__); +} + +int +elf_cpu_load_file(linker_file_t fil) +{ + printf("%s unimplemented at %s:%d, returning error.\n", __func__, __FILE__, __LINE__); + return (ENXIO); +} + +int +elf_cpu_unload_file(linker_file_t fil) +{ + printf("%s unimplemented at %s:%d, returning error.\n", __func__, __FILE__, __LINE__); + return (ENXIO); +} + +int +elf_reloc(linker_file_t fil, Elf_Addr relocbase, const void *data, int type, elf_lookup_fn lookup) +{ + printf("%s unimplemented at %s:%d, returning error.\n", __func__, __FILE__, __LINE__); + return (ENXIO); +} + +int +elf_reloc_local(linker_file_t fil, Elf_Addr relocbase, const void *data, int type, elf_lookup_fn lookup) +{ + printf("%s unimplemented at %s:%d, returning error.\n", __func__, __FILE__, __LINE__); + return (ENXIO); +} From owner-p4-projects@FreeBSD.ORG Fri Jul 7 13:34:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2ACA216A4E0; Fri, 7 Jul 2006 13:34:56 +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 05FD616A4DA for ; Fri, 7 Jul 2006 13:34:56 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C33BE43D5F for ; Fri, 7 Jul 2006 13:34:49 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67DYnF0019251 for ; Fri, 7 Jul 2006 13:34:49 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67DYnbO019248 for perforce@freebsd.org; Fri, 7 Jul 2006 13:34:49 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 13:34:49 GMT Message-Id: <200607071334.k67DYnbO019248@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100879 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 13:34:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=100879 Change 100879 by gonzo@gonzo_hq on 2006/07/07 13:34:14 Use ffs(3) implementation from libkern. Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#10 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#10 (text+ko) ==== @@ -31,6 +31,7 @@ libkern/ashldi3.c standard libkern/ashrdi3.c standard libkern/divdi3.c standard +libkern/ffs.c standard libkern/ffsl.c standard libkern/flsl.c standard libkern/lshrdi3.c standard From owner-p4-projects@FreeBSD.ORG Fri Jul 7 13:34:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BBE8316A559; Fri, 7 Jul 2006 13:34:56 +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 9A53416A556 for ; Fri, 7 Jul 2006 13:34:56 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7503E43D7B for ; Fri, 7 Jul 2006 13:34:50 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67DYnU6019257 for ; Fri, 7 Jul 2006 13:34:49 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67DYnDH019254 for perforce@freebsd.org; Fri, 7 Jul 2006 13:34:49 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 13:34:49 GMT Message-Id: <200607071334.k67DYnDH019254@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100880 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 13:34:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=100880 Change 100880 by wkoszek@wkoszek_laptop on 2006/07/07 13:34:43 Add memioctl() stub. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/mem.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/mem.c#3 (text+ko) ==== @@ -70,6 +70,13 @@ return (0); } +int +memioctl(struct cdev *dev __unused, u_long cmd, caddr_t data, int flags, + struct thread *td) +{ + return (0); +} + void dev_mem_md_init(void) { From owner-p4-projects@FreeBSD.ORG Fri Jul 7 13:42:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 02D0016A4DF; Fri, 7 Jul 2006 13:42:01 +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 CD88216A4DA for ; Fri, 7 Jul 2006 13:42:00 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 28C0743D58 for ; Fri, 7 Jul 2006 13:41:59 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67Dfw1H019786 for ; Fri, 7 Jul 2006 13:41:58 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67DfwvL019783 for perforce@freebsd.org; Fri, 7 Jul 2006 13:41:58 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 13:41:58 GMT Message-Id: <200607071341.k67DfwvL019783@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100881 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 13:42:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=100881 Change 100881 by gonzo@gonzo_hq on 2006/07/07 13:41:09 Place setPQL2 to machdep.c while we have no cpuident.c for mips arch. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#6 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#6 (text+ko) ==== @@ -288,3 +288,13 @@ { } + +void setPQL2(int *const size, int *const ways); + +void +setPQL2(int *const size, int *const ways) +{ + return; +} + + From owner-p4-projects@FreeBSD.ORG Fri Jul 7 14:09:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 366C316A4E2; Fri, 7 Jul 2006 14:09:34 +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 EEC3A16A4E0 for ; Fri, 7 Jul 2006 14:09:33 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AE5A043D46 for ; Fri, 7 Jul 2006 14:09:33 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67E9XKw023097 for ; Fri, 7 Jul 2006 14:09:33 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67E9XhS023094 for perforce@freebsd.org; Fri, 7 Jul 2006 14:09:33 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 14:09:33 GMT Message-Id: <200607071409.k67E9XhS023094@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100882 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 14:09:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100882 Change 100882 by wkoszek@wkoszek_laptop on 2006/07/07 14:08:40 Bring sysarch() to sys_machdep.c Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/sys_machdep.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/sys_machdep.c#2 (text+ko) ==== @@ -27,3 +27,34 @@ #include __FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +/* + * XXXMIPS: Comment it for now. + */ +#if 0 +#include +#endif +#include +#include + +#include +#include +#include + +#ifndef _SYS_SYSPROTO_H_ +struct sysarch_args { + int op; + char *parms; +}; +#endif + +int +sysarch(struct thread *td, register struct sysarch_args *uap) +{ + return (0); +} From owner-p4-projects@FreeBSD.ORG Fri Jul 7 14:12:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4518616A4E5; Fri, 7 Jul 2006 14:12:39 +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 20E1616A4E0 for ; Fri, 7 Jul 2006 14:12:39 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A9B2C43D55 for ; Fri, 7 Jul 2006 14:12:38 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67ECc4L023343 for ; Fri, 7 Jul 2006 14:12:38 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67ECcpa023339 for perforce@freebsd.org; Fri, 7 Jul 2006 14:12:38 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 14:12:38 GMT Message-Id: <200607071412.k67ECcpa023339@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100883 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 14:12:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=100883 Change 100883 by wkoszek@wkoszek_laptop on 2006/07/07 14:12:03 Disable calls to cpu_establish_hardintr() from cpu.c, since it's probably some dependency on juli's code. I don't see this function on other architectures. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#3 (text+ko) ==== @@ -332,7 +332,9 @@ #endif intr = 0; +#if 0 cpu_establish_hardintr(intr, handler, arg); +#endif device_printf(child, "established CPU interrupt %d\n", intr); return (0); } From owner-p4-projects@FreeBSD.ORG Fri Jul 7 14:15:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 13A5B16A4DE; Fri, 7 Jul 2006 14:15:44 +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 C387C16A4E0 for ; Fri, 7 Jul 2006 14:15:43 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C97543D46 for ; Fri, 7 Jul 2006 14:15:43 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67EFhh8023647 for ; Fri, 7 Jul 2006 14:15:43 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67EFh6g023644 for perforce@freebsd.org; Fri, 7 Jul 2006 14:15:43 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 14:15:43 GMT Message-Id: <200607071415.k67EFh6g023644@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100884 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 14:15:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=100884 Change 100884 by wkoszek@wkoszek_laptop on 2006/07/07 14:15:05 On other architectures, we use either _start or __start, and this name has to be kept consistent between ldscript.mips and locore.S. Choose _start, as we already have it in locore.S Affected files ... .. //depot/projects/mips2/src/sys/conf/ldscript.mips#2 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/ldscript.mips#2 (text+ko) ==== @@ -1,7 +1,7 @@ /* $FreeBSD$ */ OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") OUTPUT_ARCH(mips) -ENTRY(start) +ENTRY(_start) SEARCH_DIR(/usr/lib); /* Do we need any of these for elf? __DYNAMIC = 0; */ From owner-p4-projects@FreeBSD.ORG Fri Jul 7 14:24:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 70B0316A4E9; Fri, 7 Jul 2006 14:24:56 +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 395B316A4E7 for ; Fri, 7 Jul 2006 14:24:56 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 609E143D58 for ; Fri, 7 Jul 2006 14:24:55 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67EOtpH024240 for ; Fri, 7 Jul 2006 14:24:55 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67EOtuO024237 for perforce@freebsd.org; Fri, 7 Jul 2006 14:24:55 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 14:24:55 GMT Message-Id: <200607071424.k67EOtuO024237@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100885 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 14:24:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=100885 Change 100885 by wkoszek@wkoszek_laptop on 2006/07/07 14:24:37 Bring sigreturn() and cpu_clock* stuff to machdep.c Note that cpu_clock* functions should go to clock.c at some stage. juli's code have those split between architecture variants, but those files are also stub calls there. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#7 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#7 (text+ko) ==== @@ -42,6 +42,8 @@ #include #include #include +#include +#include #include #include @@ -59,6 +61,10 @@ #include #include #include +/* + * XXXMIPS: Required by cpu_clock* stuff. + */ +#include #ifdef DDB #include @@ -298,3 +304,55 @@ } +int +sigreturn(td, uap) + struct thread *td; + struct sigreturn_args /* { + const struct __ucontext *sigcntxp; + } */ *uap; +{ + return (0); +} + +/* + * XXXMIPS: Put more stuff, which should probably go to clock.c + */ +void +cpu_initclocks() +{ + +} + +/* + * Nothing to do. + */ +void +cpu_startprofclock(void) +{ + + /* Do nothing */ +} + +void +cpu_stopprofclock(void) +{ +} + +/* + * Wait for about n microseconds (at least!). + */ +void +DELAY(int n) +{ + +} + +/* + * XXX Needed by syscons + */ +int +sysbeep(int pitch, int period) +{ + + return (0); +} From owner-p4-projects@FreeBSD.ORG Fri Jul 7 14:49:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0C54B16A5A0; Fri, 7 Jul 2006 14:49:27 +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 B9A4016A58C for ; Fri, 7 Jul 2006 14:49:26 +0000 (UTC) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E03443D6B for ; Fri, 7 Jul 2006 14:49:26 +0000 (GMT) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67EnQW5025928 for ; Fri, 7 Jul 2006 14:49:26 GMT (envelope-from swhitman@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67EnQpY025923 for perforce@freebsd.org; Fri, 7 Jul 2006 14:49:26 GMT (envelope-from swhitman@FreeBSD.org) Date: Fri, 7 Jul 2006 14:49:26 GMT Message-Id: <200607071449.k67EnQpY025923@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swhitman@FreeBSD.org using -f From: Spencer Whitman To: Perforce Change Reviews Cc: Subject: PERFORCE change 100887 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 14:49:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=100887 Change 100887 by swhitman@swhitman_joethecat on 2006/07/07 14:49:14 Commenting Affected files ... .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#8 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/file.c#6 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#9 edit Differences ... ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#8 (text+ko) ==== @@ -44,7 +44,12 @@ struct ref *r; }; +struct define { + TAILQ_ENTRY(defines) list; +}; + static TAILQ_HEAD(,iarg) iarg = TAILQ_HEAD_INITIALIZER(iarg); +static TAILQ_HEAD(,defines) defines = TAILQ_HEAD_INITIALIZER(defines); static void cppfile(struct h *h, struct ref *r); static void cpp_expand(struct cppfilestate *cfs, struct ref *r, @@ -148,7 +153,8 @@ /* -------------------------------------------------------------------*/ static void -cpp_expand(struct cppfilestate *cfs, struct ref *rr __unused, const char *s, const char *e) +cpp_expand(struct cppfilestate *cfs, struct ref *rr __unused, const char *s, + const char *e) { assert(s != NULL); @@ -249,6 +255,7 @@ cpp_func *func; } cpp_kw[] = { { "define", 0, cpp_define }, + { "ifdef", 0, NULL }, { "error", 0, cpp_error }, { "include", 0, cpp_include }, { "pragma", 0, cpp_pragma }, ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/file.c#6 (text+ko) ==== ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#9 (text+ko) ==== @@ -191,7 +191,7 @@ PopSymScope(hf); } } - + return (0); } From owner-p4-projects@FreeBSD.ORG Fri Jul 7 15:23:08 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CD14416A4E1; Fri, 7 Jul 2006 15:23:08 +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 8E9E816A4DE for ; Fri, 7 Jul 2006 15:23:08 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2E21143D49 for ; Fri, 7 Jul 2006 15:23:08 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67FN8ah030574 for ; Fri, 7 Jul 2006 15:23:08 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67FN7JS030571 for perforce@freebsd.org; Fri, 7 Jul 2006 15:23:07 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 15:23:07 GMT Message-Id: <200607071523.k67FN7JS030571@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100888 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 15:23:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=100888 Change 100888 by wkoszek@wkoszek_laptop on 2006/07/07 15:22:38 Enable CTASSERT from kern_proc.c because I've found a kinfo_proc size, which is 816 bytes when cross-compiled for MIPS. Change KINFO_PROC_SIZE to 816 in sys/sys/user.h, and change XXXMIPS->XXMIPS marker to leave a hint for people, who might have problemw with alignments later. Affected files ... .. //depot/projects/mips2/src/sys/kern/kern_proc.c#3 edit .. //depot/projects/mips2/src/sys/sys/user.h#6 edit Differences ... ==== //depot/projects/mips2/src/sys/kern/kern_proc.c#3 (text+ko) ==== @@ -100,13 +100,7 @@ int kstack_pages = KSTACK_PAGES; SYSCTL_INT(_kern, OID_AUTO, kstack_pages, CTLFLAG_RD, &kstack_pages, 0, ""); -/* - * XXXMIPS: Change this until we know what's going on with sizeof(struct - * kinfo_proc). - */ -#if 0 CTASSERT(sizeof(struct kinfo_proc) == KINFO_PROC_SIZE); -#endif /* * Initialize global process hashing structures. @@ -114,7 +108,6 @@ void procinit() { - sx_init(&allproc_lock, "allproc"); sx_init(&proctree_lock, "proctree"); mtx_init(&ppeers_lock, "p_peers", NULL, MTX_DEF); ==== //depot/projects/mips2/src/sys/sys/user.h#6 (text+ko) ==== @@ -95,10 +95,10 @@ #define KINFO_PROC_SIZE 768 #endif /* - * XXXMIPS: I'm not sure, but after cross-compiling my test-case I saw 768. + * XXMIPS: After defining a kinfo_proc variable, readelf shows 816. */ #ifdef __mips__ -#define KINFO_PROC_SIZE 768 +#define KINFO_PROC_SIZE 816 #endif #ifdef __powerpc__ #define KINFO_PROC_SIZE 768 From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:01:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9C8E216A4E7; Fri, 7 Jul 2006 16:01:56 +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 7894D16A4DE for ; Fri, 7 Jul 2006 16:01:56 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1F6ED43D4C for ; Fri, 7 Jul 2006 16:01:56 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67G1tfS033101 for ; Fri, 7 Jul 2006 16:01:56 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67G1t50033098 for perforce@freebsd.org; Fri, 7 Jul 2006 16:01:55 GMT (envelope-from jhb@freebsd.org) Date: Fri, 7 Jul 2006 16:01:55 GMT Message-Id: <200607071601.k67G1t50033098@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100890 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:01:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=100890 Change 100890 by jhb@jhb_mutex on 2006/07/07 16:01:44 Don't try to free name in the !uap->name case as it is just garbage. Affected files ... .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#81 edit Differences ... ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#81 (text+ko) ==== @@ -328,8 +328,8 @@ if (error == 0) error = copyout(&namelen, uap->anamelen, sizeof(namelen)); + free(name, M_SONAME); } - free(name, M_SONAME); return (error); } @@ -468,7 +468,8 @@ sa = NULL; } noconnection: - free(sa, M_SONAME); + if (sa) + FREE(sa, M_SONAME); /* * close the new descriptor, assuming someone hasn't ripped it From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:02:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8352716A4E6; Fri, 7 Jul 2006 16:02:58 +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 4940116A4DA for ; Fri, 7 Jul 2006 16:02:58 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 04F9543D4C for ; Fri, 7 Jul 2006 16:02:58 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67G2v3s033156 for ; Fri, 7 Jul 2006 16:02:57 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67G2vmA033153 for perforce@freebsd.org; Fri, 7 Jul 2006 16:02:57 GMT (envelope-from bushman@freebsd.org) Date: Fri, 7 Jul 2006 16:02:57 GMT Message-Id: <200607071602.k67G2vmA033153@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 100891 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:02:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=100891 Change 100891 by bushman@bushman_nss_ldap_cached on 2006/07/07 16:02:21 Regressions for getproto**(), getrpc**() and getusershell() functions added. Bug in nss_files.c and nss_nis.c fixed - "getrpcbyport_r" should have been "getprcbynumber_r". Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#11 edit .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#8 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#8 edit .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getproto.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getproto.t#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getrpc.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getrpc.t#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getusershell.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/test-getusershell.t#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/testutil.h#8 edit Differences ... ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_files/nss_files.c#11 (text+ko) ==== @@ -91,7 +91,7 @@ {NSDB_PROTOCOLS, "endprotoent", __files_endprotoent, NULL}, {NSDB_RPC, "getrpcbyname_r", __files_rpcent, (void *)nss_lt_name}, - {NSDB_RPC, "getrpcbyport_r", __files_rpcent, (void *)nss_lt_id}, + {NSDB_RPC, "getrpcbynumber_r", __files_rpcent, (void *)nss_lt_id}, {NSDB_RPC, "getrpcent_r", __files_rpcent, (void *)nss_lt_all}, {NSDB_RPC, "setrpcent", __files_setrpcent, (void *)nss_set_ent}, {NSDB_RPC, "endrpcent", __files_setrpcent, (void *)nss_end_ent}, ==== //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_nis/nss_nis.c#8 (text+ko) ==== @@ -63,7 +63,7 @@ {NSDB_SERVICES, "endservent", __nis_setservent, NULL}, {NSDB_RPC, "getrpcbyname_r", __nis_rpcent, (void *)nss_lt_name}, - {NSDB_RPC, "getrpcbyport_r", __nis_rpcent, (void *)nss_lt_id}, + {NSDB_RPC, "getrpcbynumber_r", __nis_rpcent, (void *)nss_lt_id}, {NSDB_RPC, "getrpcent_r", __nis_rpcent, (void *)nss_lt_all}, {NSDB_RPC, "setrpcent", __nis_setrpcent, NULL}, {NSDB_RPC, "endrpcent", __nis_setrpcent, NULL}, ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/Makefile#8 (text+ko) ==== @@ -1,6 +1,7 @@ # $FreeBSD$ -TESTS= test-getaddr test-getpw test-getgr test-gethostby test-getserv +TESTS= test-getaddr test-getgr test-gethostby test-getpw test-getproto\ + test-getrpc test-getserv test-getusershell CFLAGS+= -g -Wall .PHONY: tests ==== //depot/projects/soc2006/nss_ldap_cached/src/tools/regression/lib/libc/nss/testutil.h#8 (text+ko) ==== @@ -142,8 +142,8 @@ \ rv = 0; \ do { \ - if (e1 == NULL) { \ - if (e2 == NULL) \ + if ((e1 == NULL) || (e2 == NULL)) { \ + if (e1 == e2) \ return (0); \ else \ return (-1); \ From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:13:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 38BD916A4E0; Fri, 7 Jul 2006 16:13:12 +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 EE0BD16A4DE for ; Fri, 7 Jul 2006 16:13:11 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A080043D55 for ; Fri, 7 Jul 2006 16:13:11 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67GDBLf035108 for ; Fri, 7 Jul 2006 16:13:11 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67GDB6B035105 for perforce@freebsd.org; Fri, 7 Jul 2006 16:13:11 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 16:13:11 GMT Message-Id: <200607071613.k67GDB6B035105@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100893 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:13:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=100893 Change 100893 by gonzo@gonzo_hq on 2006/07/07 16:13:06 _DYANMIC defined for link_elf. Affected files ... .. //depot/projects/mips2/src/sys/conf/ldscript.mips#3 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/ldscript.mips#3 (text+ko) ==== @@ -5,6 +5,7 @@ SEARCH_DIR(/usr/lib); /* Do we need any of these for elf? __DYNAMIC = 0; */ +PROVIDE (_DYNAMIC = 0); SECTIONS { /* Read-only sections, merged into text segment: */ From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:16:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 94A3A16A4E0; Fri, 7 Jul 2006 16:16:16 +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 5585516A4DE for ; Fri, 7 Jul 2006 16:16:16 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1223D43D49 for ; Fri, 7 Jul 2006 16:16:16 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67GGFF1035351 for ; Fri, 7 Jul 2006 16:16:15 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67GGFAT035347 for perforce@freebsd.org; Fri, 7 Jul 2006 16:16:15 GMT (envelope-from jhb@freebsd.org) Date: Fri, 7 Jul 2006 16:16:15 GMT Message-Id: <200607071616.k67GGFAT035347@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100894 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:16:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=100894 Change 100894 by jhb@jhb_mutex on 2006/07/07 16:15:44 accept1() had a bug in that tried to free 'name' in the uap->name == NULL case which resulted in garbage. Fix that and clean up accept1/kern_accept some more via the following: - Handle the uap->name == NULL case right up front in accept1() with a single call to kern_accept(). This also gets rid of the slight obfuscation of the 'sap' variable. - Move the COMPAT_OLDSOCK handling up into accept1() and out of kern_accept(). Affected files ... .. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#31 edit .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#82 edit .. //depot/projects/smpng/sys/sys/syscallsubr.h#42 edit Differences ... ==== //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#31 (text+ko) ==== @@ -1783,7 +1783,7 @@ * We are after a listen, so we try to accept... */ - error = kern_accept(td, uap->fd, &sa, &sasize, 0); + error = kern_accept(td, uap->fd, &sa, &sasize); if (error) { DPRINTF(("getmsg: accept failed %d\n", error)); return error; ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#82 (text+ko) ==== @@ -296,46 +296,46 @@ } */ *uap; int compat; { - struct sockaddr *name, **sap; + struct sockaddr *name; socklen_t namelen; int error; - if (uap->name) { - error = copyin(uap->anamelen, &namelen, sizeof (namelen)); - if (error) - return (error); - sap = &name; - } else - sap = NULL; + if (uap->name == NULL) + return (kern_accept(td, uap->s, NULL, NULL)); + + error = copyin(uap->anamelen, &namelen, sizeof (namelen)); + if (error) + return (error); - error = kern_accept(td, uap->s, sap, &namelen, compat); + error = kern_accept(td, uap->s, &name, &namelen, compat); - if (uap->name) { - /* - * return a namelen of zero for older code which might - * ignore the return value from accept. - */ - if (error && name == NULL) { - (void) copyout(&namelen, - uap->anamelen, sizeof(*uap->anamelen)); - return (error); - } - if (error == 0) { - KASSERT(name != NULL, - ("%s: success but no sockaddr", __func__)); - error = copyout(name, uap->name, namelen); - } - if (error == 0) - error = copyout(&namelen, uap->anamelen, - sizeof(namelen)); - free(name, M_SONAME); + /* + * return a namelen of zero for older code which might + * ignore the return value from accept. + */ + if (error && name == NULL) { + (void) copyout(&namelen, + uap->anamelen, sizeof(*uap->anamelen)); + return (error); + } + if (error == 0 && name != NULL) { +#ifdef COMPAT_OLDSOCK + if (compat) + ((struct osockaddr *)name)->sa_family = + name->sa_family; +#endif + error = copyout(name, uap->name, namelen); } + if (error == 0) + error = copyout(&namelen, uap->anamelen, + sizeof(namelen)); + free(name, M_SONAME); return (error); } int kern_accept(struct thread *td, int s, struct sockaddr **name, - socklen_t *namelen, int compat) + socklen_t *namelen) { struct filedesc *fdp; struct file *headfp, *nfp = NULL; @@ -459,11 +459,6 @@ /* check sa_len before it is destroyed */ if (*namelen > sa->sa_len) *namelen = sa->sa_len; -#ifdef COMPAT_OLDSOCK - if (compat) - ((struct osockaddr *)sa)->sa_family = - sa->sa_family; -#endif *name = sa; sa = NULL; } ==== //depot/projects/smpng/sys/sys/syscallsubr.h#42 (text+ko) ==== @@ -51,7 +51,7 @@ int kern___getcwd(struct thread *td, u_char *buf, enum uio_seg bufseg, u_int buflen); int kern_accept(struct thread *td, int s, struct sockaddr **name, - socklen_t *namelen, int compat); + socklen_t *namelen); int kern_access(struct thread *td, char *path, enum uio_seg pathseg, int flags); int kern_adjtime(struct thread *td, struct timeval *delta, From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:18:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7653016A5F9; Fri, 7 Jul 2006 16:18:19 +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 526A516A5F7 for ; Fri, 7 Jul 2006 16:18:19 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 04F3D43D5C for ; Fri, 7 Jul 2006 16:18:19 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67GIIaf035547 for ; Fri, 7 Jul 2006 16:18:18 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67GIIZO035544 for perforce@freebsd.org; Fri, 7 Jul 2006 16:18:18 GMT (envelope-from jhb@freebsd.org) Date: Fri, 7 Jul 2006 16:18:18 GMT Message-Id: <200607071618.k67GIIZO035544@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100895 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:18:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=100895 Change 100895 by jhb@jhb_mutex on 2006/07/07 16:17:49 Compile. Affected files ... .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#83 edit Differences ... ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#83 (text+ko) ==== @@ -307,7 +307,7 @@ if (error) return (error); - error = kern_accept(td, uap->s, &name, &namelen, compat); + error = kern_accept(td, uap->s, &name, &namelen); /* * return a namelen of zero for older code which might From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:19:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6278E16A4E1; Fri, 7 Jul 2006 16:19:21 +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 2506316A4DF for ; Fri, 7 Jul 2006 16:19:21 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DEB3C43D55 for ; Fri, 7 Jul 2006 16:19:20 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67GJKUx035603 for ; Fri, 7 Jul 2006 16:19:20 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67GJKw8035600 for perforce@freebsd.org; Fri, 7 Jul 2006 16:19:20 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 16:19:20 GMT Message-Id: <200607071619.k67GJKw8035600@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100896 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:19:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100896 Change 100896 by gonzo@gonzo_hq on 2006/07/07 16:18:43 o platform-dependent flags moved from kern.mk to Makefile.mips. o MIPS_LITTLE_ENDIAN make option presented to build little endian kernel. o propagate endianess/arch flags to hack.So as well. o Make KSEG0_START+0x100000 be the start of the .text segment. Affected files ... .. //depot/projects/mips2/src/sys/conf/Makefile.mips#4 edit .. //depot/projects/mips2/src/sys/conf/kern.mk#5 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/Makefile.mips#4 (text+ko) ==== @@ -36,7 +36,16 @@ # # XXXMIPS: Without it, you'll be bombed by warnings. # -CFLAGS+=-fno-pic +ARCH_FLAGS=-march=mips3 +CFLAGS+=-fno-pic $(ARCH_FLAGS) +SYSTEM_LD+= -Ttext 0x80100000 +HACK_EXTRA_FLAGS+=-fno-pic $(ARCH_FLAGS) + +.if defined(MIPS_LITTLE_ENDIAN) +CFLAGS+=-EL +SYSTEM_LD+=-EL +HACK_EXTRA_FLAGS+=-EL -Wl,-EL +.endif %BEFORE_DEPEND ==== //depot/projects/mips2/src/sys/conf/kern.mk#5 (text+ko) ==== @@ -86,7 +86,7 @@ # We also force a non-PIC kernel to be built (-mno-abicalls). # .if ${MACHINE_ARCH} == "mips" -CFLAGS+= -msoft-float -mno-abicalls -mips32 +CFLAGS+= -msoft-float -mno-abicalls # XXX for debugging the build #CFLAGS+= -save-temps INLINE_LIMIT?= 15000 From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:38:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6379A16A4E5; Fri, 7 Jul 2006 16:38:46 +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 2F76916A4E1 for ; Fri, 7 Jul 2006 16:38:46 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D2D8543D46 for ; Fri, 7 Jul 2006 16:38:45 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67GcjIv041219 for ; Fri, 7 Jul 2006 16:38:45 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67GcjhH041216 for perforce@freebsd.org; Fri, 7 Jul 2006 16:38:45 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 16:38:45 GMT Message-Id: <200607071638.k67GcjhH041216@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100898 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:38:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=100898 Change 100898 by gonzo@gonzo_hq on 2006/07/07 16:38:03 Fixed typo: MIPSXX -> XXXMIPS. Keep this label unified. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/pmap.c#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/pmap.c#4 (text+ko) ==== @@ -1233,7 +1233,7 @@ psize = atop(end - start); m = m_start; /* - * MIPSXXX: check if locking required. + * XXXMIPS: check if locking required. */ s = splvm(); while (m != NULL && (diff = m->pindex - m_start->pindex) < psize) { From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:41:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F0ADC16A4E0; Fri, 7 Jul 2006 16:41:53 +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 B6E4C16A4DE for ; Fri, 7 Jul 2006 16:41:53 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D6B9943D72 for ; Fri, 7 Jul 2006 16:41:50 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67GfoAP041569 for ; Fri, 7 Jul 2006 16:41:50 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67GfoKK041566 for perforce@freebsd.org; Fri, 7 Jul 2006 16:41:50 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 7 Jul 2006 16:41:50 GMT Message-Id: <200607071641.k67GfoKK041566@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 100900 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:41:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=100900 Change 100900 by gonzo@gonzo_hq on 2006/07/07 16:41:14 Make __vm_ooffset_t and __vm_pindex_t 64 bits. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/_types.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/_types.h#3 (text+ko) ==== @@ -62,6 +62,9 @@ typedef unsigned int __cpumask_t; typedef __int32_t __critical_t; typedef double __double_t; +/* + * XXXMIPS: should we use double here, or float? + */ typedef double __float_t; typedef __int32_t __intfptr_t; typedef __int64_t __intmax_t; @@ -93,9 +96,9 @@ typedef __uint64_t __uint_least64_t; typedef __uint32_t __u_register_t; typedef __uint32_t __vm_offset_t; -typedef __int32_t __vm_ooffset_t; +typedef __int64_t __vm_ooffset_t; typedef __uint32_t __vm_paddr_t; -typedef __uint32_t __vm_pindex_t; +typedef __uint64_t __vm_pindex_t; typedef __uint32_t __vm_size_t; /* From owner-p4-projects@FreeBSD.ORG Fri Jul 7 16:56:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 341E316A542; Fri, 7 Jul 2006 16:56:09 +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 1052916A53E for ; Fri, 7 Jul 2006 16:56:09 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B364343D4C for ; Fri, 7 Jul 2006 16:56:08 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67Gu8We050285 for ; Fri, 7 Jul 2006 16:56:08 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67Gu817050281 for perforce@freebsd.org; Fri, 7 Jul 2006 16:56:08 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 16:56:08 GMT Message-Id: <200607071656.k67Gu817050281@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100901 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 16:56:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=100901 Change 100901 by wkoszek@wkoszek_laptop on 2006/07/07 16:55:39 After Alexander's changes, I can uncomment this piece in vfs_bio.c because we have correct definitions for popular data types. Affected files ... .. //depot/projects/mips2/src/sys/kern/vfs_bio.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/kern/vfs_bio.c#3 (text+ko) ==== @@ -3154,7 +3154,6 @@ * XXXMIPS: This was the easiest way to move on. * Leave it for later, since kernel at this stage won't probably boot. */ -#if 0 KASSERT(BUF_REFCNT(bp) > 0, ("biodone: bp %p not busy %d", bp, BUF_REFCNT(bp))); @@ -3249,12 +3248,11 @@ * have not set the page busy flag correctly!!! */ if (m->busy == 0) { - uint32_t mask = 0xffffffff; printf("biodone: page busy < 0, " "pindex: %d, foff: 0x(%x,%x), " "resid: %d, index: %d\n", (int) m->pindex, (int)(foff >> 32), - (int) foff & mask, resid, i); + (int) foff & 0xffffffff, resid, i); if (!vn_isdisk(vp, NULL)) printf(" iosize: %jd, lblkno: %jd, flags: 0x%x, npages: %d\n", (intmax_t)bp->b_vp->v_mount->mnt_stat.f_iosize, @@ -3292,7 +3290,6 @@ bqrelse(bp); } else bdone(bp); -#endif } /* @@ -3610,7 +3607,6 @@ * XXXMIPS: Hack this part to make it working on MIPS. * Leave it for later. */ -#if 0 vm_offset_t pg; vm_page_t p; int index; @@ -3644,7 +3640,6 @@ } VM_OBJECT_UNLOCK(kernel_object); bp->b_npages = index; -#endif } /* Return pages associated with this buf to the vm system */ From owner-p4-projects@FreeBSD.ORG Fri Jul 7 17:03:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4A2B716A4E9; Fri, 7 Jul 2006 17:03:36 +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 0BAF316A4E6 for ; Fri, 7 Jul 2006 17:03:36 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8752C43D60 for ; Fri, 7 Jul 2006 17:03:17 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67H3H72051915 for ; Fri, 7 Jul 2006 17:03:17 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67H3Hpo051912 for perforce@freebsd.org; Fri, 7 Jul 2006 17:03:17 GMT (envelope-from wkoszek@FreeBSD.org) Date: Fri, 7 Jul 2006 17:03:17 GMT Message-Id: <200607071703.k67H3Hpo051912@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 100902 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 17:03:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=100902 Change 100902 by wkoszek@wkoszek_laptop on 2006/07/07 17:02:25 It looks like vnode_pager.c is also unbroken now, so remove #if's 0 from it. Correct _types.h made everything look better. Affected files ... .. //depot/projects/mips2/src/sys/vm/vnode_pager.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/vm/vnode_pager.c#3 (text+ko) ==== @@ -1063,14 +1063,12 @@ /* * XXXMIPS: Change this later. For not it causes problems. */ -#if 0 if ((int64_t)m[0]->pindex < 0) { printf("vnode_pager_putpages: attempt to write meta-data!!! -- 0x%lx(%lx)\n", (long)m[0]->pindex, (u_long)m[0]->dirty); rtvals[0] = VM_PAGER_BAD; return VM_PAGER_BAD; } -#endif maxsize = count * PAGE_SIZE; ncount = count; From owner-p4-projects@FreeBSD.ORG Fri Jul 7 17:09:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8FEA116A4DF; Fri, 7 Jul 2006 17:09:26 +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 52CD316A4DA for ; Fri, 7 Jul 2006 17:09:26 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E909243D49 for ; Fri, 7 Jul 2006 17:09:25 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67H9P1e052314 for ; Fri, 7 Jul 2006 17:09:25 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67H9P2P052310 for perforce@freebsd.org; Fri, 7 Jul 2006 17:09:25 GMT (envelope-from jhb@freebsd.org) Date: Fri, 7 Jul 2006 17:09:25 GMT Message-Id: <200607071709.k67H9P2P052310@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100903 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 17:09:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=100903 Change 100903 by jhb@jhb_mutex on 2006/07/07 17:08:42 IFC @100899. Affected files ... .. //depot/projects/smpng/sys/conf/files#179 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3_ctl.c#13 integrate .. //depot/projects/smpng/sys/kern/kern_acl.c#26 integrate .. //depot/projects/smpng/sys/kern/subr_acl_posix1e.c#2 integrate Differences ... ==== //depot/projects/smpng/sys/conf/files#179 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1127 2006/06/27 12:45:27 glebius Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1128 2006/07/06 23:37:39 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1329,6 +1329,7 @@ kern/sched_core.c optional sched_core kern/sched_ule.c optional sched_ule kern/serdev_if.m optional puc | scc +kern/subr_acl_posix1e.c standard kern/subr_autoconf.c standard kern/subr_blist.c standard kern/subr_bus.c standard ==== //depot/projects/smpng/sys/geom/raid3/g_raid3_ctl.c#13 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/raid3/g_raid3_ctl.c,v 1.16 2006/04/10 10:32:22 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/raid3/g_raid3_ctl.c,v 1.17 2006/07/07 14:32:27 pjd Exp $"); #include #include @@ -102,7 +102,6 @@ int *verify, *noverify; u_int n; - g_topology_assert(); nargs = gctl_get_paraml(req, "nargs", sizeof(*nargs)); if (nargs == NULL) { gctl_error(req, "No '%s' argument.", "nargs"); ==== //depot/projects/smpng/sys/kern/kern_acl.c#26 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1999-2003 Robert N. M. Watson + * Copyright (c) 1999-2006 Robert N. M. Watson * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -27,11 +27,13 @@ */ /* * Developed by the TrustedBSD Project. - * Support for POSIX.1e access control lists. + * + * ACL system calls and other functions common across different ACL types. + * Type-specific routines go into subr_acl_.c. */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_acl.c,v 1.47 2005/09/17 22:01:14 csjp Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_acl.c,v 1.48 2006/07/06 23:37:38 rwatson Exp $"); #include "opt_mac.h" @@ -50,8 +52,6 @@ #include #include #include -#include -#include #include #include @@ -65,586 +65,6 @@ acl_type_t type, struct acl *aclp); /* - * Implement a version of vaccess() that understands POSIX.1e ACL semantics. - * Return 0 on success, else an errno value. Should be merged into - * vaccess() eventually. - */ -int -vaccess_acl_posix1e(enum vtype type, uid_t file_uid, gid_t file_gid, - struct acl *acl, mode_t acc_mode, struct ucred *cred, int *privused) -{ - struct acl_entry *acl_other, *acl_mask; - mode_t dac_granted; - mode_t cap_granted; - mode_t acl_mask_granted; - int group_matched, i; - - /* - * Look for a normal, non-privileged way to access the file/directory - * as requested. If it exists, go with that. Otherwise, attempt - * to use privileges granted via cap_granted. In some cases, - * which privileges to use may be ambiguous due to "best match", - * in which case fall back on first match for the time being. - */ - if (privused != NULL) - *privused = 0; - - /* - * Determine privileges now, but don't apply until we've found - * a DAC entry that matches but has failed to allow access. - */ -#ifndef CAPABILITIES - if (suser_cred(cred, SUSER_ALLOWJAIL) == 0) - cap_granted = VALLPERM; - else - cap_granted = 0; -#else - cap_granted = 0; - - if (type == VDIR) { - if ((acc_mode & VEXEC) && !cap_check(cred, NULL, - CAP_DAC_READ_SEARCH, SUSER_ALLOWJAIL)) - cap_granted |= VEXEC; - } else { - if ((acc_mode & VEXEC) && !cap_check(cred, NULL, - CAP_DAC_EXECUTE, SUSER_ALLOWJAIL)) - cap_granted |= VEXEC; - } - - if ((acc_mode & VREAD) && !cap_check(cred, NULL, CAP_DAC_READ_SEARCH, - SUSER_ALLOWJAIL)) - cap_granted |= VREAD; - - if (((acc_mode & VWRITE) || (acc_mode & VAPPEND)) && - !cap_check(cred, NULL, CAP_DAC_WRITE, SUSER_ALLOWJAIL)) - cap_granted |= (VWRITE | VAPPEND); - - if ((acc_mode & VADMIN) && !cap_check(cred, NULL, CAP_FOWNER, - SUSER_ALLOWJAIL)) - cap_granted |= VADMIN; -#endif /* CAPABILITIES */ - - /* - * The owner matches if the effective uid associated with the - * credential matches that of the ACL_USER_OBJ entry. While we're - * doing the first scan, also cache the location of the ACL_MASK - * and ACL_OTHER entries, preventing some future iterations. - */ - acl_mask = acl_other = NULL; - for (i = 0; i < acl->acl_cnt; i++) { - switch (acl->acl_entry[i].ae_tag) { - case ACL_USER_OBJ: - if (file_uid != cred->cr_uid) - break; - dac_granted = 0; - dac_granted |= VADMIN; - if (acl->acl_entry[i].ae_perm & ACL_EXECUTE) - dac_granted |= VEXEC; - if (acl->acl_entry[i].ae_perm & ACL_READ) - dac_granted |= VREAD; - if (acl->acl_entry[i].ae_perm & ACL_WRITE) - dac_granted |= (VWRITE | VAPPEND); - if ((acc_mode & dac_granted) == acc_mode) - return (0); - if ((acc_mode & (dac_granted | cap_granted)) == - acc_mode) { - if (privused != NULL) - *privused = 1; - return (0); - } - goto error; - - case ACL_MASK: - acl_mask = &acl->acl_entry[i]; - break; - - case ACL_OTHER: - acl_other = &acl->acl_entry[i]; - break; - - default: - break; - } - } - - /* - * An ACL_OTHER entry should always exist in a valid access - * ACL. If it doesn't, then generate a serious failure. For now, - * this means a debugging message and EPERM, but in the future - * should probably be a panic. - */ - if (acl_other == NULL) { - /* - * XXX This should never happen - */ - printf("vaccess_acl_posix1e: ACL_OTHER missing\n"); - return (EPERM); - } - - /* - * Checks against ACL_USER, ACL_GROUP_OBJ, and ACL_GROUP fields - * are masked by an ACL_MASK entry, if any. As such, first identify - * the ACL_MASK field, then iterate through identifying potential - * user matches, then group matches. If there is no ACL_MASK, - * assume that the mask allows all requests to succeed. - */ - if (acl_mask != NULL) { - acl_mask_granted = 0; - if (acl_mask->ae_perm & ACL_EXECUTE) - acl_mask_granted |= VEXEC; - if (acl_mask->ae_perm & ACL_READ) - acl_mask_granted |= VREAD; - if (acl_mask->ae_perm & ACL_WRITE) - acl_mask_granted |= (VWRITE | VAPPEND); - } else - acl_mask_granted = VEXEC | VREAD | VWRITE | VAPPEND; - - /* - * Iterate through user ACL entries. Do checks twice, first - * without privilege, and then if a match is found but failed, - * a second time with privilege. - */ - - /* - * Check ACL_USER ACL entries. - */ - for (i = 0; i < acl->acl_cnt; i++) { - switch (acl->acl_entry[i].ae_tag) { - case ACL_USER: - if (acl->acl_entry[i].ae_id != cred->cr_uid) - break; - dac_granted = 0; - if (acl->acl_entry[i].ae_perm & ACL_EXECUTE) - dac_granted |= VEXEC; - if (acl->acl_entry[i].ae_perm & ACL_READ) - dac_granted |= VREAD; - if (acl->acl_entry[i].ae_perm & ACL_WRITE) - dac_granted |= (VWRITE | VAPPEND); - dac_granted &= acl_mask_granted; - if ((acc_mode & dac_granted) == acc_mode) - return (0); - if ((acc_mode & (dac_granted | cap_granted)) != - acc_mode) - goto error; - - if (privused != NULL) - *privused = 1; - return (0); - } - } - - /* - * Group match is best-match, not first-match, so find a - * "best" match. Iterate across, testing each potential group - * match. Make sure we keep track of whether we found a match - * or not, so that we know if we should try again with any - * available privilege, or if we should move on to ACL_OTHER. - */ - group_matched = 0; - for (i = 0; i < acl->acl_cnt; i++) { - switch (acl->acl_entry[i].ae_tag) { - case ACL_GROUP_OBJ: - if (!groupmember(file_gid, cred)) - break; - dac_granted = 0; - if (acl->acl_entry[i].ae_perm & ACL_EXECUTE) - dac_granted |= VEXEC; - if (acl->acl_entry[i].ae_perm & ACL_READ) - dac_granted |= VREAD; - if (acl->acl_entry[i].ae_perm & ACL_WRITE) - dac_granted |= (VWRITE | VAPPEND); - dac_granted &= acl_mask_granted; - - if ((acc_mode & dac_granted) == acc_mode) - return (0); - - group_matched = 1; - break; - - case ACL_GROUP: - if (!groupmember(acl->acl_entry[i].ae_id, cred)) - break; - dac_granted = 0; - if (acl->acl_entry[i].ae_perm & ACL_EXECUTE) - dac_granted |= VEXEC; - if (acl->acl_entry[i].ae_perm & ACL_READ) - dac_granted |= VREAD; - if (acl->acl_entry[i].ae_perm & ACL_WRITE) - dac_granted |= (VWRITE | VAPPEND); - dac_granted &= acl_mask_granted; - - if ((acc_mode & dac_granted) == acc_mode) - return (0); - - group_matched = 1; - break; - - default: - break; - } - } - - if (group_matched == 1) { - /* - * There was a match, but it did not grant rights via - * pure DAC. Try again, this time with privilege. - */ - for (i = 0; i < acl->acl_cnt; i++) { - switch (acl->acl_entry[i].ae_tag) { - case ACL_GROUP_OBJ: - if (!groupmember(file_gid, cred)) - break; - dac_granted = 0; - if (acl->acl_entry[i].ae_perm & ACL_EXECUTE) - dac_granted |= VEXEC; - if (acl->acl_entry[i].ae_perm & ACL_READ) - dac_granted |= VREAD; - if (acl->acl_entry[i].ae_perm & ACL_WRITE) - dac_granted |= (VWRITE | VAPPEND); - dac_granted &= acl_mask_granted; - - if ((acc_mode & (dac_granted | cap_granted)) != - acc_mode) - break; - - if (privused != NULL) - *privused = 1; - return (0); - - case ACL_GROUP: - if (!groupmember(acl->acl_entry[i].ae_id, - cred)) - break; - dac_granted = 0; - if (acl->acl_entry[i].ae_perm & ACL_EXECUTE) - dac_granted |= VEXEC; - if (acl->acl_entry[i].ae_perm & ACL_READ) - dac_granted |= VREAD; - if (acl->acl_entry[i].ae_perm & ACL_WRITE) - dac_granted |= (VWRITE | VAPPEND); - dac_granted &= acl_mask_granted; - - if ((acc_mode & (dac_granted | cap_granted)) != - acc_mode) - break; - - if (privused != NULL) - *privused = 1; - return (0); - - default: - break; - } - } - /* - * Even with privilege, group membership was not sufficient. - * Return failure. - */ - goto error; - } - - /* - * Fall back on ACL_OTHER. ACL_MASK is not applied to ACL_OTHER. - */ - dac_granted = 0; - if (acl_other->ae_perm & ACL_EXECUTE) - dac_granted |= VEXEC; - if (acl_other->ae_perm & ACL_READ) - dac_granted |= VREAD; - if (acl_other->ae_perm & ACL_WRITE) - dac_granted |= (VWRITE | VAPPEND); - - if ((acc_mode & dac_granted) == acc_mode) - return (0); - if ((acc_mode & (dac_granted | cap_granted)) == acc_mode) { - if (privused != NULL) - *privused = 1; - return (0); - } - -error: - return ((acc_mode & VADMIN) ? EPERM : EACCES); -} - -/* - * For the purposes of filesystems maintaining the _OBJ entries in an - * inode with a mode_t field, this routine converts a mode_t entry - * to an acl_perm_t. - */ -acl_perm_t -acl_posix1e_mode_to_perm(acl_tag_t tag, mode_t mode) -{ - acl_perm_t perm = 0; - - switch(tag) { - case ACL_USER_OBJ: - if (mode & S_IXUSR) - perm |= ACL_EXECUTE; - if (mode & S_IRUSR) - perm |= ACL_READ; - if (mode & S_IWUSR) - perm |= ACL_WRITE; - return (perm); - - case ACL_GROUP_OBJ: - if (mode & S_IXGRP) - perm |= ACL_EXECUTE; - if (mode & S_IRGRP) - perm |= ACL_READ; - if (mode & S_IWGRP) - perm |= ACL_WRITE; - return (perm); - - case ACL_OTHER: - if (mode & S_IXOTH) - perm |= ACL_EXECUTE; - if (mode & S_IROTH) - perm |= ACL_READ; - if (mode & S_IWOTH) - perm |= ACL_WRITE; - return (perm); - - default: - printf("acl_posix1e_mode_to_perm: invalid tag (%d)\n", tag); - return (0); - } -} - -/* - * Given inode information (uid, gid, mode), return an acl entry of the - * appropriate type. - */ -struct acl_entry -acl_posix1e_mode_to_entry(acl_tag_t tag, uid_t uid, gid_t gid, mode_t mode) -{ - struct acl_entry acl_entry; - - acl_entry.ae_tag = tag; - acl_entry.ae_perm = acl_posix1e_mode_to_perm(tag, mode); - switch(tag) { - case ACL_USER_OBJ: - acl_entry.ae_id = uid; - break; - - case ACL_GROUP_OBJ: - acl_entry.ae_id = gid; - break; - - case ACL_OTHER: - acl_entry.ae_id = ACL_UNDEFINED_ID; - break; - - default: - acl_entry.ae_id = ACL_UNDEFINED_ID; - printf("acl_posix1e_mode_to_entry: invalid tag (%d)\n", tag); - } - - return (acl_entry); -} - -/* - * Utility function to generate a file mode given appropriate ACL entries. - */ -mode_t -acl_posix1e_perms_to_mode(struct acl_entry *acl_user_obj_entry, - struct acl_entry *acl_group_obj_entry, struct acl_entry *acl_other_entry) -{ - mode_t mode; - - mode = 0; - if (acl_user_obj_entry->ae_perm & ACL_EXECUTE) - mode |= S_IXUSR; - if (acl_user_obj_entry->ae_perm & ACL_READ) - mode |= S_IRUSR; - if (acl_user_obj_entry->ae_perm & ACL_WRITE) - mode |= S_IWUSR; - if (acl_group_obj_entry->ae_perm & ACL_EXECUTE) - mode |= S_IXGRP; - if (acl_group_obj_entry->ae_perm & ACL_READ) - mode |= S_IRGRP; - if (acl_group_obj_entry->ae_perm & ACL_WRITE) - mode |= S_IWGRP; - if (acl_other_entry->ae_perm & ACL_EXECUTE) - mode |= S_IXOTH; - if (acl_other_entry->ae_perm & ACL_READ) - mode |= S_IROTH; - if (acl_other_entry->ae_perm & ACL_WRITE) - mode |= S_IWOTH; - - return (mode); -} - -/* - * Utility function to generate a file mode given a complete POSIX.1e - * access ACL. Note that if the ACL is improperly formed, this may - * result in a panic. - */ -mode_t -acl_posix1e_acl_to_mode(struct acl *acl) -{ - struct acl_entry *acl_mask, *acl_user_obj, *acl_group_obj, *acl_other; - int i; - - /* - * Find the ACL entries relevant to a POSIX permission mode. - */ - acl_user_obj = acl_group_obj = acl_other = acl_mask = NULL; - for (i = 0; i < acl->acl_cnt; i++) { - switch (acl->acl_entry[i].ae_tag) { - case ACL_USER_OBJ: - acl_user_obj = &acl->acl_entry[i]; - break; - - case ACL_GROUP_OBJ: - acl_group_obj = &acl->acl_entry[i]; - break; - - case ACL_OTHER: - acl_other = &acl->acl_entry[i]; - break; - - case ACL_MASK: - acl_mask = &acl->acl_entry[i]; - break; - - case ACL_USER: - case ACL_GROUP: - break; - - default: - panic("acl_posix1e_acl_to_mode: bad ae_tag"); - } - } - - if (acl_user_obj == NULL || acl_group_obj == NULL || acl_other == NULL) - panic("acl_posix1e_acl_to_mode: missing base ae_tags"); - - /* - * POSIX.1e specifies that if there is an ACL_MASK entry, we replace - * the mode "group" bits with its permissions. If there isn't, we - * use the ACL_GROUP_OBJ permissions. - */ - if (acl_mask != NULL) - return (acl_posix1e_perms_to_mode(acl_user_obj, acl_mask, - acl_other)); - else - return (acl_posix1e_perms_to_mode(acl_user_obj, acl_group_obj, - acl_other)); -} - -/* - * Perform a syntactic check of the ACL, sufficient to allow an - * implementing filesystem to determine if it should accept this and - * rely on the POSIX.1e ACL properties. - */ -int -acl_posix1e_check(struct acl *acl) -{ - int num_acl_user_obj, num_acl_user, num_acl_group_obj, num_acl_group; - int num_acl_mask, num_acl_other, i; - - /* - * Verify that the number of entries does not exceed the maximum - * defined for acl_t. - * Verify that the correct number of various sorts of ae_tags are - * present: - * Exactly one ACL_USER_OBJ - * Exactly one ACL_GROUP_OBJ - * Exactly one ACL_OTHER - * If any ACL_USER or ACL_GROUP entries appear, then exactly one - * ACL_MASK entry must also appear. - * Verify that all ae_perm entries are in ACL_PERM_BITS. - * Verify all ae_tag entries are understood by this implementation. - * Note: Does not check for uniqueness of qualifier (ae_id) field. - */ - num_acl_user_obj = num_acl_user = num_acl_group_obj = num_acl_group = - num_acl_mask = num_acl_other = 0; - if (acl->acl_cnt > ACL_MAX_ENTRIES || acl->acl_cnt < 0) - return (EINVAL); - for (i = 0; i < acl->acl_cnt; i++) { - /* - * Check for a valid tag. - */ - switch(acl->acl_entry[i].ae_tag) { - case ACL_USER_OBJ: - acl->acl_entry[i].ae_id = ACL_UNDEFINED_ID; /* XXX */ - if (acl->acl_entry[i].ae_id != ACL_UNDEFINED_ID) - return (EINVAL); - num_acl_user_obj++; - break; - case ACL_GROUP_OBJ: - acl->acl_entry[i].ae_id = ACL_UNDEFINED_ID; /* XXX */ - if (acl->acl_entry[i].ae_id != ACL_UNDEFINED_ID) - return (EINVAL); - num_acl_group_obj++; - break; - case ACL_USER: - if (acl->acl_entry[i].ae_id == ACL_UNDEFINED_ID) - return (EINVAL); - num_acl_user++; - break; - case ACL_GROUP: - if (acl->acl_entry[i].ae_id == ACL_UNDEFINED_ID) - return (EINVAL); - num_acl_group++; - break; - case ACL_OTHER: - acl->acl_entry[i].ae_id = ACL_UNDEFINED_ID; /* XXX */ - if (acl->acl_entry[i].ae_id != ACL_UNDEFINED_ID) - return (EINVAL); - num_acl_other++; - break; - case ACL_MASK: - acl->acl_entry[i].ae_id = ACL_UNDEFINED_ID; /* XXX */ - if (acl->acl_entry[i].ae_id != ACL_UNDEFINED_ID) - return (EINVAL); - num_acl_mask++; - break; - default: - return (EINVAL); - } - /* - * Check for valid perm entries. - */ - if ((acl->acl_entry[i].ae_perm | ACL_PERM_BITS) != - ACL_PERM_BITS) - return (EINVAL); - } - if ((num_acl_user_obj != 1) || (num_acl_group_obj != 1) || - (num_acl_other != 1) || (num_acl_mask != 0 && num_acl_mask != 1)) - return (EINVAL); - if (((num_acl_group != 0) || (num_acl_user != 0)) && - (num_acl_mask != 1)) - return (EINVAL); - return (0); -} - -/* - * Given a requested mode for a new object, and a default ACL, combine - * the two to produce a new mode. Be careful not to clear any bits that - * aren't intended to be affected by the POSIX.1e ACL. Eventually, - * this might also take the cmask as an argument, if we push that down - * into per-filesystem-code. - */ -mode_t -acl_posix1e_newfilemode(mode_t cmode, struct acl *dacl) -{ - mode_t mode; - - mode = cmode; - /* - * The current composition policy is that a permission bit must - * be set in *both* the ACL and the requested creation mode for - * it to appear in the resulting mode/ACL. First clear any - * possibly effected bits, then reconstruct. - */ - mode &= ACL_PRESERVE_MASK; - mode |= (ACL_OVERRIDE_MASK & cmode & acl_posix1e_acl_to_mode(dacl)); - - return (mode); -} - -/* * These calls wrap the real vnode operations, and are called by the * syscall code once the syscall has converted the path or file * descriptor to a vnode (unlocked). The aclp pointer is assumed ==== //depot/projects/smpng/sys/kern/subr_acl_posix1e.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1999-2003 Robert N. M. Watson + * Copyright (c) 1999-2006 Robert N. M. Watson * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -27,43 +27,23 @@ */ /* * Developed by the TrustedBSD Project. - * Support for POSIX.1e access control lists. + * + * ACL support routines specific to POSIX.1e access control lists. These are + * utility routines for code common across file systems implementing POSIX.1e + * ACLs. */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_acl_posix1e.c,v 1.47 2005/09/17 22:01:14 csjp Exp $"); - -#include "opt_mac.h" +__FBSDID("$FreeBSD: src/sys/kern/subr_acl_posix1e.c,v 1.49 2006/07/06 23:37:38 rwatson Exp $"); #include #include -#include -#include -#include -#include #include #include -#include -#include -#include -#include -#include -#include -#include #include #include #include -#include - -uma_zone_t acl_zone; -static int vacl_set_acl(struct thread *td, struct vnode *vp, - acl_type_t type, struct acl *aclp); -static int vacl_get_acl(struct thread *td, struct vnode *vp, - acl_type_t type, struct acl *aclp); -static int vacl_aclcheck(struct thread *td, struct vnode *vp, - acl_type_t type, struct acl *aclp); - /* * Implement a version of vaccess() that understands POSIX.1e ACL semantics. * Return 0 on success, else an errno value. Should be merged into @@ -643,394 +623,3 @@ return (mode); } - -/* - * These calls wrap the real vnode operations, and are called by the - * syscall code once the syscall has converted the path or file - * descriptor to a vnode (unlocked). The aclp pointer is assumed - * still to point to userland, so this should not be consumed within - * the kernel except by syscall code. Other code should directly - * invoke VOP_{SET,GET}ACL. - */ - -/* - * Given a vnode, set its ACL. - */ -static int -vacl_set_acl(struct thread *td, struct vnode *vp, acl_type_t type, - struct acl *aclp) -{ - struct acl inkernacl; - struct mount *mp; - int error; - - error = copyin(aclp, &inkernacl, sizeof(struct acl)); - if (error) - return(error); - error = vn_start_write(vp, &mp, V_WAIT | PCATCH); - if (error != 0) - return (error); - VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); -#ifdef MAC - error = mac_check_vnode_setacl(td->td_ucred, vp, type, &inkernacl); - if (error != 0) - goto out; -#endif - error = VOP_SETACL(vp, type, &inkernacl, td->td_ucred, td); -#ifdef MAC -out: -#endif - VOP_UNLOCK(vp, 0, td); - vn_finished_write(mp); - return(error); -} - -/* - * Given a vnode, get its ACL. - */ -static int -vacl_get_acl(struct thread *td, struct vnode *vp, acl_type_t type, - struct acl *aclp) -{ - struct acl inkernelacl; - int error; - - VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); -#ifdef MAC - error = mac_check_vnode_getacl(td->td_ucred, vp, type); - if (error != 0) - goto out; -#endif - error = VOP_GETACL(vp, type, &inkernelacl, td->td_ucred, td); -#ifdef MAC -out: -#endif - VOP_UNLOCK(vp, 0, td); - if (error == 0) - error = copyout(&inkernelacl, aclp, sizeof(struct acl)); - return (error); -} - -/* - * Given a vnode, delete its ACL. - */ -static int -vacl_delete(struct thread *td, struct vnode *vp, acl_type_t type) -{ - struct mount *mp; - int error; - - error = vn_start_write(vp, &mp, V_WAIT | PCATCH); - if (error) - return (error); - VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); -#ifdef MAC - error = mac_check_vnode_deleteacl(td->td_ucred, vp, type); - if (error) - goto out; -#endif - error = VOP_SETACL(vp, type, 0, td->td_ucred, td); -#ifdef MAC -out: -#endif - VOP_UNLOCK(vp, 0, td); - vn_finished_write(mp); - return (error); -} - -/* - * Given a vnode, check whether an ACL is appropriate for it - */ -static int -vacl_aclcheck(struct thread *td, struct vnode *vp, acl_type_t type, - struct acl *aclp) -{ - struct acl inkernelacl; - int error; - - error = copyin(aclp, &inkernelacl, sizeof(struct acl)); - if (error) - return(error); - error = VOP_ACLCHECK(vp, type, &inkernelacl, td->td_ucred, td); - return (error); -} - -/* - * syscalls -- convert the path/fd to a vnode, and call vacl_whatever. - * Don't need to lock, as the vacl_ code will get/release any locks - * required. - */ - -/* - * Given a file path, get an ACL for it - * - * MPSAFE - */ -int -__acl_get_file(struct thread *td, struct __acl_get_file_args *uap) -{ - struct nameidata nd; - int vfslocked, error; - - NDINIT(&nd, LOOKUP, MPSAFE|FOLLOW, UIO_USERSPACE, uap->path, td); - error = namei(&nd); - vfslocked = NDHASGIANT(&nd); - if (error == 0) { - error = vacl_get_acl(td, nd.ni_vp, uap->type, uap->aclp); - NDFREE(&nd, 0); - } - VFS_UNLOCK_GIANT(vfslocked); - return (error); -} - -/* - * Given a file path, get an ACL for it; don't follow links. - * - * MPSAFE - */ -int -__acl_get_link(struct thread *td, struct __acl_get_link_args *uap) -{ - struct nameidata nd; - int vfslocked, error; - - NDINIT(&nd, LOOKUP, MPSAFE|NOFOLLOW, UIO_USERSPACE, uap->path, td); - error = namei(&nd); - vfslocked = NDHASGIANT(&nd); - if (error == 0) { - error = vacl_get_acl(td, nd.ni_vp, uap->type, uap->aclp); - NDFREE(&nd, 0); - } - VFS_UNLOCK_GIANT(vfslocked); - return (error); -} - -/* - * Given a file path, set an ACL for it - * - * MPSAFE - */ -int -__acl_set_file(struct thread *td, struct __acl_set_file_args *uap) -{ - struct nameidata nd; - int vfslocked, error; - - NDINIT(&nd, LOOKUP, MPSAFE|FOLLOW, UIO_USERSPACE, uap->path, td); - error = namei(&nd); - vfslocked = NDHASGIANT(&nd); - if (error == 0) { - error = vacl_set_acl(td, nd.ni_vp, uap->type, uap->aclp); - NDFREE(&nd, 0); - } - VFS_UNLOCK_GIANT(vfslocked); - return (error); -} - -/* - * Given a file path, set an ACL for it; don't follow links. - * - * MPSAFE - */ -int -__acl_set_link(struct thread *td, struct __acl_set_link_args *uap) -{ - struct nameidata nd; - int vfslocked, error; - - NDINIT(&nd, LOOKUP, MPSAFE|NOFOLLOW, UIO_USERSPACE, uap->path, td); - error = namei(&nd); - vfslocked = NDHASGIANT(&nd); - if (error == 0) { - error = vacl_set_acl(td, nd.ni_vp, uap->type, uap->aclp); - NDFREE(&nd, 0); - } - VFS_UNLOCK_GIANT(vfslocked); - return (error); -} - -/* - * Given a file descriptor, get an ACL for it - * - * MPSAFE - */ -int -__acl_get_fd(struct thread *td, struct __acl_get_fd_args *uap) -{ - struct file *fp; - int vfslocked, error; - - error = getvnode(td->td_proc->p_fd, uap->filedes, &fp); - if (error == 0) { - vfslocked = VFS_LOCK_GIANT(fp->f_vnode->v_mount); - error = vacl_get_acl(td, fp->f_vnode, uap->type, uap->aclp); - fdrop(fp, td); - VFS_UNLOCK_GIANT(vfslocked); - } - return (error); -} - -/* - * Given a file descriptor, set an ACL for it - * - * MPSAFE - */ -int -__acl_set_fd(struct thread *td, struct __acl_set_fd_args *uap) -{ - struct file *fp; - int vfslocked, error; - - error = getvnode(td->td_proc->p_fd, uap->filedes, &fp); - if (error == 0) { - vfslocked = VFS_LOCK_GIANT(fp->f_vnode->v_mount); - error = vacl_set_acl(td, fp->f_vnode, uap->type, uap->aclp); - fdrop(fp, td); - VFS_UNLOCK_GIANT(vfslocked); - } - return (error); -} - -/* - * Given a file path, delete an ACL from it. - * - * MPSAFE - */ -int -__acl_delete_file(struct thread *td, struct __acl_delete_file_args *uap) -{ - struct nameidata nd; - int vfslocked, error; - - NDINIT(&nd, LOOKUP, MPSAFE|FOLLOW, UIO_USERSPACE, uap->path, td); - error = namei(&nd); - vfslocked = NDHASGIANT(&nd); - if (error == 0) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 7 17:28:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6320C16A4E6; Fri, 7 Jul 2006 17:28:54 +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 0E72316A4E1 for ; Fri, 7 Jul 2006 17:28:54 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 109BA43D6D for ; Fri, 7 Jul 2006 17:28:52 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67HSpJI053596 for ; Fri, 7 Jul 2006 17:28:51 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67HSphB053593 for perforce@freebsd.org; Fri, 7 Jul 2006 17:28:51 GMT (envelope-from rdivacky@FreeBSD.org) Date: Fri, 7 Jul 2006 17:28:51 GMT Message-Id: <200607071728.k67HSphB053593@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100906 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 17:28:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=100906 Change 100906 by rdivacky@rdivacky_witten on 2006/07/07 17:28:09 o introduce locking using rwlocks o fix bug in linux_clone() regarding pid o introduce em_find() Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#7 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#10 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#6 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#7 (text+ko) ==== @@ -32,6 +32,9 @@ #define _I386_LINUX_LINUX_H_ #include /* for sigval union */ +#include +#include +#include #include @@ -769,4 +772,13 @@ SLIST_ENTRY(linux_emuldata) emuldatas; }; +#define EMUL_RLOCK(l) rw_rlock(l) +#define EMUL_RUNLOCK(l) rw_runlock(l) +#define EMUL_WLOCK(l) rw_wlock(l) +#define EMUL_WUNLOCK(l) rw_wunlock(l) + +/* for em_find use */ +#define EMUL_LOCKED 1 +#define EMUL_UNLOCKED 0 + #endif /* !_I386_LINUX_LINUX_H_ */ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#10 (text+ko) ==== @@ -65,10 +65,12 @@ SLIST_HEAD(emuldata_head, linux_emuldata) emuldata_head = SLIST_HEAD_INITIALIZER(emuldata_head); struct linux_emuldata *emuldata_headp; /* where we store the emulation data */ +struct rwlock emul_lock; static int linux_proc_init(struct thread *, pid_t); int linux_proc_exit(struct thread *); int linux_userret(struct thread *); +static struct linux_emuldata *em_find(pid_t pid, int locked); struct l_descriptor { l_uint entry_number; @@ -285,6 +287,25 @@ return (linux_select(td, &newsel)); } +/* this returns locked reference to the emuldata entry (if found) */ +static struct linux_emuldata * +em_find(pid_t pid, int locked) +{ + struct linux_emuldata *em; + + if (locked == EMUL_UNLOCKED) + EMUL_RLOCK(&emul_lock); + + SLIST_FOREACH(em, &emuldata_head, emuldatas) + if (em->pid == pid) + break; + + if (em == NULL && locked == EMUL_UNLOCKED) + EMUL_RUNLOCK(&emul_lock); + + return (em); +} + int linux_fork(struct thread *td, struct linux_fork_args *args) { @@ -308,10 +329,12 @@ return (error); #if 0 + EMUL_RLOCK(&emul_data); /* impossible to not find it */ SLIST_FOREACH(em, &emuldata_head, emuldatas) if (em->pid == td->td_retval[0]) break; + EMUL_RUNLOCK(&emul_data); #endif return (0); } @@ -405,17 +428,21 @@ return (error); /* create the emuldata */ - linux_proc_init(td, td->td_retval[0]); - SLIST_FOREACH(em, &emuldata_head, emuldatas) - if (em->pid == td->td_retval[0]) - break; + error = linux_proc_init(td, p2->p_pid); + /* reference it - no need to check this */ + em = em_find(p2->p_pid, EMUL_UNLOCKED); + KASSERT(em != NULL, "no emuldata after proc_init()!\n"); /* and adjust it */ if (args->flags & CLONE_PARENT_SETTID) { - if (args->parent_tidptr == NULL) + if (args->parent_tidptr == NULL) { + EMUL_RUNLOCK(&emul_lock); return (EINVAL); + } error = copyout(&td->td_proc->p_pid, args->parent_tidptr, sizeof(td->td_proc->p_pid)); - if (error) + if (error) { + EMUL_RUNLOCK(&emul_lock); return (error); + } } if (args->flags & CLONE_CHILD_CLEARTID) @@ -427,6 +454,7 @@ em->child_set_tid = args->child_tidptr; else em->child_set_tid = NULL; + EMUL_RUNLOCK(&emul_lock); PROC_LOCK(p2); p2->p_sigparent = exit_signal; @@ -1022,7 +1050,6 @@ linux_proc_init(struct thread *td, pid_t child) { struct linux_emuldata *em, *p_em; - int found = 0; struct proc *p; /* XXX: locking? */ @@ -1030,16 +1057,13 @@ /* non-exec call */ MALLOC(em, struct linux_emuldata *, sizeof *em, M_LINUX, M_WAITOK | M_ZERO); em->pid = child; + EMUL_WLOCK(&emul_lock); SLIST_INSERT_HEAD(&emuldata_head, em, emuldatas); } else { - found = 0; /* lookup the old one */ - SLIST_FOREACH(em, &emuldata_head, emuldatas) - if (em->pid == td->td_proc->p_pid) { - found = 1; - break; - } - if (found == 0) { + em = em_find(td->td_proc->p_pid, EMUL_UNLOCKED); + /* XXX: this might be turned into KASSERT once its tested enough */ + if (em == NULL) { /* this should not happen */ #ifdef DEBUG printf("emuldata not found in exec case.\n"); @@ -1052,22 +1076,24 @@ em->child_set_tid = NULL; /* SLIST is inefficient - use hash instead */ - /* find the emuldata for the parent process */ - SLIST_FOREACH(p_em, &emuldata_head, emuldatas) - if (p_em->pid == td->td_proc->p_pid) { - found = 1; - break; + /* I hope I rewrote the semantics right */ + if (child != 0) { + /* find the emuldata for the parent process */ + p_em = em_find(td->td_proc->p_pid, EMUL_LOCKED); + if (p_em == NULL) { + em->clear_tid = NULL; + em->set_tid = NULL; + } else { + em->clear_tid = p_em->clear_tid; + em->set_tid = p_em->set_tid; } - - if (found) { - em->clear_tid = p_em->clear_tid; - em->set_tid = p_em->set_tid; + EMUL_WUNLOCK(&emul_lock); } else { em->clear_tid = NULL; em->set_tid = NULL; + EMUL_RUNLOCK(&emul_lock); } - /* XXX: sched_lock locking? */ /* find the newly created thread and set the P_LINUX flag */ @@ -1087,21 +1113,34 @@ int error; /* find the emuldata */ - SLIST_FOREACH(em, &emuldata_head, emuldatas) - if (em->pid == td->td_proc->p_pid) - break; + em = em_find(td->td_proc->p_pid, EMUL_UNLOCKED); +#ifdef DEBUG + if (em == NULL) { + printf("we didnt find emuldata for the exiting process.\n"); + return (0); + } +#endif if (em->clear_tid != NULL) { int null = 0; error = copyout(&null, em->clear_tid, sizeof(null)); - if (error) + if (error) { + EMUL_RUNLOCK(&emul_lock); return (error); + } /* TODO: futexes stuff */ } + EMUL_RUNLOCK(&emul_lock); + /* XXX: there is a race but I think we can ommit that + * because its not very possible that the same process + * will exit on different cpus etc. + */ + EMUL_WLOCK(&emul_lock); SLIST_REMOVE(&emuldata_head, em, linux_emuldata, emuldatas); + EMUL_WUNLOCK(&emul_lock); /* clean the stuff up */ FREE(em, M_LINUX); @@ -1116,13 +1155,20 @@ int error = 0; /* find the emuldata */ - SLIST_FOREACH(em, &emuldata_head, emuldatas) - if (em->pid == td->td_proc->p_pid) - break; + em = em_find(td->td_proc->p_pid, EMUL_UNLOCKED); + +#ifdef DEBUG + if (child == NULL) { + printf("we didnt find emuldata for the userreting process.\n"); + EMUL_RUNLOCK(&emul_lock); + return (0); + } +#endif if (em->set_tid != NULL) error = copyout(&td->td_proc->p_pid, em->set_tid, sizeof(td->td_proc->p_pid)); + EMUL_RUNLOCK(&emul_lock); return (error); } @@ -1132,12 +1178,19 @@ struct linux_emuldata *em; /* find the emuldata */ - SLIST_FOREACH(em, &emuldata_head, emuldatas) - if (em->pid == td->td_proc->p_pid) - break; + em = em_find(td->td_proc->p_pid, EMUL_UNLOCKED); + +#ifdef DEBUG + if (child == NULL) { + printf("we didnt find emuldata for the userreting process.\n"); + EMUL_RUNLOCK(&emul_lock); + return (0); + } +#endif em->clear_tid = args->tidptr; td->td_retval[0] = td->td_proc->p_pid; + EMUL_RUNLOCK(&emul_lock); return 0; } ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#6 (text+ko) ==== @@ -111,6 +111,7 @@ extern int linux_userret(struct thread *); extern int linux_proc_exit(struct thread *); +extern struct rwlock emul_lock; /* * Linux syscalls return negative errno's, we do positive and map them @@ -917,6 +918,7 @@ SLIST_INIT(&emuldata_head); linux_proc_exit_p = linux_proc_exit; linux_userret_p = linux_userret; + rw_init(&emul_lock, "emuldata lock"); break; case MOD_UNLOAD: for (brandinfo = &linux_brandlist[0]; *brandinfo != NULL; @@ -940,6 +942,7 @@ printf("Could not deinstall ELF interpreter entry\n"); linux_proc_exit_p = NULL; linux_userret_p = NULL; + rw_destroy(&emul_lock); break; default: return EOPNOTSUPP; From owner-p4-projects@FreeBSD.ORG Fri Jul 7 17:54:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C0BAE16A4E5; Fri, 7 Jul 2006 17:54:33 +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 8473C16A4E1 for ; Fri, 7 Jul 2006 17:54:33 +0000 (UTC) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4640B43D45 for ; Fri, 7 Jul 2006 17:54:33 +0000 (GMT) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67HsXSk055295 for ; Fri, 7 Jul 2006 17:54:33 GMT (envelope-from swhitman@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67HsXcP055292 for perforce@freebsd.org; Fri, 7 Jul 2006 17:54:33 GMT (envelope-from swhitman@FreeBSD.org) Date: Fri, 7 Jul 2006 17:54:33 GMT Message-Id: <200607071754.k67HsXcP055292@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swhitman@FreeBSD.org using -f From: Spencer Whitman To: Perforce Change Reviews Cc: Subject: PERFORCE change 100908 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 17:54:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100908 Change 100908 by swhitman@swhitman_joethecat on 2006/07/07 17:53:55 Added hooks for other preprocessor # functions Affected files ... .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#9 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#7 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/test.h#2 edit Differences ... ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#9 (text+ko) ==== @@ -226,6 +226,11 @@ cppfile(cfs->h, r); } +/* + * Define statment should be of the form: + * #define NAME(vars) value + * If value continues along more than one line, it should end with a \\n + */ static void cpp_define(CPP_ARGS) { @@ -235,6 +240,14 @@ } static void +cpp_undef(CPP_ARGS) +{ + /* struct cppfilestate *cfs __unused, const char *h __unused, + const char *b __unused, const char *e __unused */ + printf("#undef of %V\n",String(b,e)); +} + +static void cppchunk(struct cppfilestate *cfs, const char *s, const char *e) { /* NOTE: cfs-> is uninitalized for first call to cppchunk */ @@ -255,7 +268,13 @@ cpp_func *func; } cpp_kw[] = { { "define", 0, cpp_define }, - { "ifdef", 0, NULL }, + { "undef", 0, cpp_undef }, + /* { "ifdef", 0, NULL }, */ + /* { "ifndef", 0, NULL }, */ + /* { "endif", 0, NULL }, */ + /* { "if defined", 0, NULL }, */ + /* { "else", 0, NULL }, */ + /* { "elif", 0, NULL }, */ { "error", 0, cpp_error }, { "include", 0, cpp_include }, { "pragma", 0, cpp_pragma }, ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#7 (text+ko) ==== ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/test.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ #define HI 10 -#define ' +char * bla = "one" # "two" typedef void * void_star; From owner-p4-projects@FreeBSD.ORG Fri Jul 7 17:54:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E873E16A524; Fri, 7 Jul 2006 17:54:33 +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 C158916A4E6 for ; Fri, 7 Jul 2006 17:54:33 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 84BCA43D45 for ; Fri, 7 Jul 2006 17:54:33 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67HsXk2055301 for ; Fri, 7 Jul 2006 17:54:33 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67HsX1q055298 for perforce@freebsd.org; Fri, 7 Jul 2006 17:54:33 GMT (envelope-from jhb@freebsd.org) Date: Fri, 7 Jul 2006 17:54:33 GMT Message-Id: <200607071754.k67HsX1q055298@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100909 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 17:54:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100909 Change 100909 by jhb@jhb_mutex on 2006/07/07 17:54:09 Update. Affected files ... .. //depot/projects/smpng/sys/notes#73 edit .. //depot/user/jhb/acpipci/notes#182 edit Differences ... ==== //depot/projects/smpng/sys/notes#73 (text+ko) ==== @@ -105,12 +105,8 @@ - ibcs2_semsys() - ibcs2_ioctl() - ibcs2_getdents() - + ibcs2_poll() - + axe ibcs2_poll.h - ibcs2_sigprocmask() - xenix_rdchk() - - ibcs2_getgroups() - - ibcs2_setgruops() - don't mess with td_retval in any kern_foo() functions Active child branches: ==== //depot/user/jhb/acpipci/notes#182 (text+ko) ==== @@ -1,6 +1,4 @@ Todo: -- Change Alpha to use the simple i8254 timecounter implementation and axe - handleclock() and possibly platform.clockintr pointer. - Ethernet locking notes: - Use callout_*() rather than timeout() so you can use CALLOUT_MPSAFE. May have to change the timeout routine (foo_tick) to return immediately if @@ -29,8 +27,6 @@ - if_timer? - if_hwassist? - if_mtu? -- change the callout code to use sleepq's directly instead of having a - normal mutex for the drain stuff - Fixup locking in various network device drivers: - nve - lge @@ -76,6 +72,13 @@ - ACPI can use producer memory address resources - Adjust $PIR to trust BIOS IRQ over $PIR entry even for $PIR entry with only a single IRQ +- Fix hint unit wiring: + - Allocate unit numbers by starting at 0 and looking for a free and + compatible one + - Need a method to see if a given (driver-name, unit) tuple have any hints + - Need a bus_generic_hint_compatible() that rejects any devices with + resource hints (port, mem, irq, drq) + - Need bus_hint_compatible() methods for ISA and ACPI Unrelated to this branch: - Work on cleaning up nested includes in sys/* headers. According to Bruce, From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:46:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 359C216A4E1; Fri, 7 Jul 2006 18:46:44 +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 0C52916A4DA for ; Fri, 7 Jul 2006 18:46:44 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8CE4043D45 for ; Fri, 7 Jul 2006 18:46:43 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67IkhK9060006 for ; Fri, 7 Jul 2006 18:46:43 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67Ikhkh060003 for perforce@freebsd.org; Fri, 7 Jul 2006 18:46:43 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:46:43 GMT Message-Id: <200607071846.k67Ikhkh060003@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100913 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:46:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=100913 Change 100913 by jb@jb_freebsd2 on 2006/07/07 18:46:22 Use u_long arg to ioctl to avoid sign-extension on 64-bit architectures. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_impl.h#10 edit .. //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dtrace.h#2 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_impl.h#10 (text) ==== @@ -560,7 +560,11 @@ extern void dt_set_errmsg(dtrace_hdl_t *, const char *, const char *, const char *, int, const char *, va_list); +#if defined(sun) extern int dt_ioctl(dtrace_hdl_t *, int, void *); +#else +extern int dt_ioctl(dtrace_hdl_t *, u_long, void *); +#endif extern int dt_status(dtrace_hdl_t *, processorid_t); extern long dt_sysconf(dtrace_hdl_t *, int); extern ssize_t dt_write(dtrace_hdl_t *, int, const void *, size_t); ==== //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dtrace.h#2 (text) ==== @@ -521,7 +521,11 @@ * entry point to obtain a library handle. */ struct dtrace_vector { +#if defined(sun) int (*dtv_ioctl)(void *, int, void *); +#else + int (*dtv_ioctl)(void *, u_long, void *); +#endif int (*dtv_lookup_by_addr)(void *, GElf_Addr, GElf_Sym *, dtrace_syminfo_t *); int (*dtv_status)(void *, processorid_t); From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:49:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 822FB16A4E2; Fri, 7 Jul 2006 18:49:48 +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 5EA3816A4E0 for ; Fri, 7 Jul 2006 18:49:48 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D80C243D53 for ; Fri, 7 Jul 2006 18:49:47 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67Inl0d060093 for ; Fri, 7 Jul 2006 18:49:47 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67Inl8n060090 for perforce@freebsd.org; Fri, 7 Jul 2006 18:49:47 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:49:47 GMT Message-Id: <200607071849.k67Inl8n060090@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100914 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:49:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=100914 Change 100914 by jb@jb_freebsd2 on 2006/07/07 18:48:50 On sparc64 gcc is sign-extending the value passed to dt_ioctl despite the fact that it's declared as long and the _IOC macro is typed as unsigned long. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_subr.c#9 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_subr.c#9 (text) ==== @@ -471,10 +471,19 @@ } int +#if defined(sun) dt_ioctl(dtrace_hdl_t *dtp, int val, void *arg) +#else +dt_ioctl(dtrace_hdl_t *dtp, u_long val, void *arg) +#endif { const dtrace_vector_t *v = dtp->dt_vector; +#if !defined(sun) + /* XXX Avoid sign extension. This shouldn't be necessary. */ + val &= 0xffffffff; +#endif + if (v != NULL) return (v->dtv_ioctl(dtp->dt_varg, val, arg)); From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:50:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0656116A500; Fri, 7 Jul 2006 18:50:51 +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 C114A16A50E for ; Fri, 7 Jul 2006 18:50:50 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6807843D49 for ; Fri, 7 Jul 2006 18:50:50 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67Ioonq060250 for ; Fri, 7 Jul 2006 18:50:50 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67IonNZ060247 for perforce@freebsd.org; Fri, 7 Jul 2006 18:50:49 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:50:49 GMT Message-Id: <200607071850.k67IonNZ060247@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100915 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:50:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100915 Change 100915 by jb@jb_freebsd2 on 2006/07/07 18:50:20 Remove debugging printfs now that 32GB works fine. Affected files ... .. //depot/projects/dtrace/src/sys/vm/vm_map.c#6 edit .. //depot/projects/dtrace/src/sys/vm/vm_page.c#6 edit Differences ... ==== //depot/projects/dtrace/src/sys/vm/vm_map.c#6 (text+ko) ==== @@ -159,7 +159,6 @@ vm_map_startup(void) { mtx_init(&map_sleep_mtx, "vm map sleep mutex", NULL, MTX_DEF); - printf("uma_zcreate\n"); mapzone = uma_zcreate("MAP", sizeof(struct vm_map), NULL, #ifdef INVARIANTS vm_map_zdtor, @@ -167,15 +166,11 @@ NULL, #endif vm_map_zinit, vm_map_zfini, UMA_ALIGN_PTR, UMA_ZONE_NOFREE); - printf("uma_prealloc\n"); uma_prealloc(mapzone, MAX_KMAP); - printf("KMAP ENTRY\n"); kmapentzone = uma_zcreate("KMAP ENTRY", sizeof(struct vm_map_entry), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_MTXCLASS | UMA_ZONE_VM); - printf("prealloc kmapentzone\n"); uma_prealloc(kmapentzone, MAX_KMAPENT); - printf("uma_zcreate MAP ENTRY\n"); mapentzone = uma_zcreate("MAP ENTRY", sizeof(struct vm_map_entry), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0); } ==== //depot/projects/dtrace/src/sys/vm/vm_page.c#6 (text+ko) ==== @@ -222,7 +222,6 @@ nblocks = 0; vaddr = round_page(vaddr); - printf("checking physavail\n"); for (i = 0; phys_avail[i + 1]; i += 2) { phys_avail[i] = round_page(phys_avail[i]); phys_avail[i + 1] = trunc_page(phys_avail[i + 1]); @@ -253,7 +252,6 @@ * Initialize the queue headers for the free queue, the active queue * and the inactive queue. */ - printf("vm_pageq_init\n"); vm_pageq_init(); /* @@ -262,12 +260,9 @@ */ new_end = end - (boot_pages * UMA_SLAB_SIZE); new_end = trunc_page(new_end); - printf("vm_page_startup pmap_map\n"); mapped = pmap_map(&vaddr, new_end, end, VM_PROT_READ | VM_PROT_WRITE); - printf("bzero\n"); bzero((void *)mapped, end - new_end); - printf("uma_startup\n"); uma_startup((void *)mapped, boot_pages); #if defined(__amd64__) || defined(__i386__) @@ -338,7 +333,6 @@ */ cnt.v_page_count = 0; cnt.v_free_count = 0; - printf("checking vm.blacklist\n"); list = getenv("vm.blacklist"); for (i = 0; phys_avail[i + 1] && npages > 0; i += 2) { pa = phys_avail[i]; @@ -353,7 +347,6 @@ pa += PAGE_SIZE; } } - printf("passed vm.blacklist check\n"); freeenv(list); return (vaddr); } From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:51:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C7B2716A4E2; Fri, 7 Jul 2006 18:51:53 +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 A427C16A4E0 for ; Fri, 7 Jul 2006 18:51:53 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2383943D6B for ; Fri, 7 Jul 2006 18:51:52 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67IpqIq060335 for ; Fri, 7 Jul 2006 18:51:52 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67Ippf5060332 for perforce@freebsd.org; Fri, 7 Jul 2006 18:51:51 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:51:51 GMT Message-Id: <200607071851.k67Ippf5060332@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100916 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:51:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=100916 Change 100916 by jb@jb_freebsd2 on 2006/07/07 18:51:10 Add a definition for compatibility with Solaris. Affected files ... .. //depot/projects/dtrace/src/sys/sparc64/include/asi.h#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/sparc64/include/asi.h#3 (text+ko) ==== @@ -49,6 +49,11 @@ #define ASI_SL 0x89 #define ASI_PNFL 0x8a #define ASI_SNFL 0x8b + +/* + * Mnemonic asis + */ +#define ASI_USER ASI_AIUS /* * UltraSPARC extensions. ASIs limited to a certain family are annotated. From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:52:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 08C2C16A4E0; Fri, 7 Jul 2006 18:52:56 +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 AB70A16A4DA for ; Fri, 7 Jul 2006 18:52:55 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF68243D5F for ; Fri, 7 Jul 2006 18:52:53 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67IqrJB060449 for ; Fri, 7 Jul 2006 18:52:53 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67IqrqH060446 for perforce@freebsd.org; Fri, 7 Jul 2006 18:52:53 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:52:53 GMT Message-Id: <200607071852.k67IqrqH060446@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100917 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:52:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=100917 Change 100917 by jb@jb_freebsd2 on 2006/07/07 18:52:08 Add definitions for compatibility with Solaris. Affected files ... .. //depot/projects/dtrace/src/sys/sparc64/include/asm.h#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/sparc64/include/asm.h#3 (text+ko) ==== @@ -93,12 +93,14 @@ CNAME(x): #define ENTRY(x) _ENTRY(x) +#define ENTRY_NP(x) _ENTRY(x) #define END(x) .size x, . - x #define STACK_ALIGN 16 #define SET_SIZE(x) END(x) #define SA(X) (((X)+(STACK_ALIGN-1)) & ~(STACK_ALIGN-1)) #define WINDOWSIZE64 (16*8) +#define WINDOWSIZE WINDOWSIZE64 #define MINFRAME64 (WINDOWSIZE64 + 48) #define MINFRAME MINFRAME64 /* From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:53:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 29A6816A4E5; Fri, 7 Jul 2006 18:53:56 +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 05DD716A4E1 for ; Fri, 7 Jul 2006 18:53:56 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A507143D45 for ; Fri, 7 Jul 2006 18:53:55 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67IrtPs060506 for ; Fri, 7 Jul 2006 18:53:55 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67IrtPt060503 for perforce@freebsd.org; Fri, 7 Jul 2006 18:53:55 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:53:55 GMT Message-Id: <200607071853.k67IrtPt060503@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100918 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:53:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=100918 Change 100918 by jb@jb_freebsd2 on 2006/07/07 18:53:37 Add system call trace support for the 'systrace' DTrace provider on sun4v. Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/sun4v/trap.c#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/sun4v/trap.c#3 (text+ko) ==== @@ -42,6 +42,7 @@ #include "opt_ddb.h" #include "opt_ktr.h" +#include "opt_kdtrace.h" #include "opt_ktrace.h" #include @@ -92,6 +93,22 @@ #include #include +#ifdef KDTRACE +#include +#include + +/* + * These are hooks which are initialised by the dtrace module + * when it is loaded. This keeps the DTrace implementation + * opaque. + * + * This is a hook which is initialised by the systrace module + * when it is loaded. This keeps the DTrace syscall provider + * implementation opaque. + */ +systrace_probe_func_t systrace_probe_func; +#endif + void trap(struct trapframe *tf, int64_t type, uint64_t data); void syscall(struct trapframe *tf); @@ -624,8 +641,33 @@ PTRACESTOP_SC(p, td, S_PT_SCE); +#ifdef KDTRACE + /* + * If the systrace module has registered it's probe + * callback and if there is a probe active for the + * syscall 'entry', process the probe. + */ + if (systrace_probe_func != NULL && callp->sy_entry != 0) + (*systrace_probe_func)(callp->sy_entry, code, callp, + args); +#endif + error = (*callp->sy_call)(td, argp); +#ifdef KDTRACE + /* Save the error return variable for DTrace to reference. */ + td->td_errno = error; + + /* + * If the systrace module has registered it's probe + * callback and if there is a probe active for the + * syscall 'return', process the probe. + */ + if (systrace_probe_func != NULL && callp->sy_return != 0) + (*systrace_probe_func)(callp->sy_return, code, callp, + args); +#endif + CTR5(KTR_SYSC, "syscall: p=%p error=%d %s return %#lx %#lx ", p, error, syscallnames[code], td->td_retval[0], td->td_retval[1]); From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:56:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0FB6216A4E6; Fri, 7 Jul 2006 18:56:00 +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 DBE0F16A4E2 for ; Fri, 7 Jul 2006 18:55:59 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4C81C43D78 for ; Fri, 7 Jul 2006 18:55:59 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67ItxSH060678 for ; Fri, 7 Jul 2006 18:55:59 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67Itwpu060675 for perforce@freebsd.org; Fri, 7 Jul 2006 18:55:58 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:55:58 GMT Message-Id: <200607071855.k67Itwpu060675@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100920 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:56:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=100920 Change 100920 by jb@jb_freebsd2 on 2006/07/07 18:55:42 Add a high resolution time function for DTrace. This is what it uses for vtime (thread execution time which takes into account of context switches). Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/sun4v/tick.c#2 edit Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/sun4v/tick.c#2 (text+ko) ==== @@ -27,6 +27,8 @@ #include __FBSDID("$FreeBSD: src/sys/sparc64/sparc64/tick.c,v 1.20 2006/02/11 09:33:07 phk Exp $"); +#include "opt_kdtrace.h" + #include #include #include @@ -194,3 +196,17 @@ intr_restore_all(s); } +/* + * DTrace needs a high resolution time function which can + * be called from a probe context and guaranteed not to have + * instrumented with probes itself. + * + * Returns nanoseconds since boot. + */ +#ifdef KDTRACE +uint64_t +dtrace_gethrtime() +{ + return (rd(tick) * (uint64_t) 1000000000 / tick_freq); +} +#endif From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:58:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C208E16A4E1; Fri, 7 Jul 2006 18:58:02 +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 88A5E16A4DA for ; Fri, 7 Jul 2006 18:58:02 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4DBA143D45 for ; Fri, 7 Jul 2006 18:58:02 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67Iw2xd060813 for ; Fri, 7 Jul 2006 18:58:02 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67Iw1aV060810 for perforce@freebsd.org; Fri, 7 Jul 2006 18:58:01 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:58:01 GMT Message-Id: <200607071858.k67Iw1aV060810@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100921 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:58:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=100921 Change 100921 by jb@jb_freebsd2 on 2006/07/07 18:57:11 While porting to sun4v, treat some providers as "not yet". Affected files ... .. //depot/projects/dtrace/src/sys/modules/dtrace/Makefile#17 edit .. //depot/projects/dtrace/src/sys/modules/dtrace/Makefile.inc#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/modules/dtrace/Makefile#17 (text+ko) ==== @@ -3,11 +3,14 @@ .include .include "Makefile.inc" -SUBDIR= dtrace \ - fbt \ - profile \ - prototype \ - sdt \ - systrace +SUBDIR= dtrace \ + profile \ + systrace + +.if ${MACHINE_ARCH} == "i386" +SUBDIR+= fbt \ + prototype \ + sdt +.endif .include ==== //depot/projects/dtrace/src/sys/modules/dtrace/Makefile.inc#5 (text+ko) ==== @@ -3,9 +3,11 @@ load : -kldload cyclic -kldload dtrace +.if ${MACHINE_ARCH} == "i386" -kldload sdt -kldload fbt -kldload prototype +.endif -kldload profile -kldload systrace kldstat @@ -13,9 +15,11 @@ unload : -kldunload systrace -kldunload profile +.if ${MACHINE_ARCH} == "i386" -kldunload prototype -kldunload fbt -kldunload sdt +.endif -kldunload dtrace -kldunload cyclic kldstat From owner-p4-projects@FreeBSD.ORG Fri Jul 7 18:59:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0A3F316A4E1; Fri, 7 Jul 2006 18:59:07 +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 D763F16A4DE for ; Fri, 7 Jul 2006 18:59:06 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4966E43D49 for ; Fri, 7 Jul 2006 18:59:04 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67Ix4Q2060928 for ; Fri, 7 Jul 2006 18:59:04 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67Ix4AW060925 for perforce@freebsd.org; Fri, 7 Jul 2006 18:59:04 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 18:59:04 GMT Message-Id: <200607071859.k67Ix4AW060925@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100922 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 18:59:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100922 Change 100922 by jb@jb_freebsd2 on 2006/07/07 18:58:34 Instruction size and disassembly functions are only required on i386. Affected files ... .. //depot/projects/dtrace/src/sys/modules/dtrace/dtrace/Makefile#7 edit Differences ... ==== //depot/projects/dtrace/src/sys/modules/dtrace/dtrace/Makefile#7 (text+ko) ==== @@ -7,9 +7,13 @@ SRCS= dtrace.c \ dtrace_mutex.c \ dtrace_asm.S \ - dtrace_subr.c \ - dis_tables.c \ + dtrace_subr.c + +.if ${MACHINE_ARCH} == "i386" +SRCS+= dis_tables.c \ instr_size.c +.endif + SRCS+= bus_if.h device_if.h vnode_if.h CFLAGS+= -I${.CURDIR}/../../../cddl/dev/dtrace \ From owner-p4-projects@FreeBSD.ORG Fri Jul 7 19:02:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4B7C216A4DE; Fri, 7 Jul 2006 19:02:09 +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 2752A16A4DA for ; Fri, 7 Jul 2006 19:02:09 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8635A43D58 for ; Fri, 7 Jul 2006 19:02:08 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67J28Pu061116 for ; Fri, 7 Jul 2006 19:02:08 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67J28fl061113 for perforce@freebsd.org; Fri, 7 Jul 2006 19:02:08 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 19:02:08 GMT Message-Id: <200607071902.k67J28fl061113@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100923 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 19:02:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=100923 Change 100923 by jb@jb_freebsd2 on 2006/07/07 19:01:28 Instruction size and disassembly functions are only required on i386. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_load.c#15 edit .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_unload.c#13 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_load.c#15 (text+ko) ==== @@ -27,8 +27,10 @@ { dtrace_provider_id_t id; +#if defined(__i386__) /* Hang our hook for DTrace traps during probes. */ dtrace_instr_size_func = dtrace_instr_size; +#endif /* Hang our hook for thread switches. */ dtrace_vtime_switch_func = dtrace_vtime_switch; ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_unload.c#13 (text+ko) ==== @@ -161,9 +161,10 @@ dtrace_vtime_active = 0; dtrace_vtime_switch_func = NULL; +#if defined(__i386__) /* Reset our hook for DTrace traps during probes. */ dtrace_instr_size_func = NULL; - +#endif return (error); } From owner-p4-projects@FreeBSD.ORG Fri Jul 7 19:03:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7E3E416A4E1; Fri, 7 Jul 2006 19:03:10 +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 56A6816A4DA for ; Fri, 7 Jul 2006 19:03:10 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1D02543D45 for ; Fri, 7 Jul 2006 19:03:10 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67J39I6062404 for ; Fri, 7 Jul 2006 19:03:09 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67J39ks062401 for perforce@freebsd.org; Fri, 7 Jul 2006 19:03:09 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 19:03:09 GMT Message-Id: <200607071903.k67J39ks062401@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100924 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 19:03:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=100924 Change 100924 by jb@jb_freebsd2 on 2006/07/07 19:03:03 Cast to a long variable (to avoid a gcc warning) and then allow that to be truncated to an int. Yes, this is a hack. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_clone.c#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_clone.c#5 (text+ko) ==== @@ -50,7 +50,7 @@ return; /* Allocate a unique minor number. */ - u = (int) vmem_alloc(dtrace_minor, 1, VM_BESTFIT | VM_SLEEP); + u = (long) vmem_alloc(dtrace_minor, 1, VM_BESTFIT | VM_SLEEP); /* Clone the device to the new minor number. */ if (clone_create(&dtrace_clones, &dtrace_cdevsw, &u, dev, 0) != 0) From owner-p4-projects@FreeBSD.ORG Fri Jul 7 19:04:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6880516A4DF; Fri, 7 Jul 2006 19:04:12 +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 472EF16A4DE for ; Fri, 7 Jul 2006 19:04:12 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D2D7543D49 for ; Fri, 7 Jul 2006 19:04:11 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67J4BX8062435 for ; Fri, 7 Jul 2006 19:04:11 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67J4Bqu062432 for perforce@freebsd.org; Fri, 7 Jul 2006 19:04:11 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 19:04:11 GMT Message-Id: <200607071904.k67J4Bqu062432@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100925 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 19:04:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=100925 Change 100925 by jb@jb_freebsd2 on 2006/07/07 19:04:07 sparc64 support. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace.c#31 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace.c#31 (text+ko) ==== @@ -475,7 +475,6 @@ static int dtrace_enabling_matchstate(dtrace_state_t *, int *); static int dtrace_enabling_replicate(dtrace_state_t *, dtrace_probedesc_t *, dtrace_probedesc_t *); static int dtrace_enabling_retain(dtrace_enabling_t *); -static int dtrace_getustack_common(uint64_t *, int, uintptr_t, uintptr_t); static int dtrace_hash_collisions(dtrace_hash_t *, dtrace_probe_t *); static int dtrace_helper_destroygen(int); static int dtrace_helper_slurp(dof_hdr_t *, dof_helper_t *); @@ -580,6 +579,14 @@ void dtrace_resume(void); void dtrace_suspend(void); +#if defined(__i386__) +static int dtrace_getustack_common(uint64_t *, int, uintptr_t, uintptr_t); +#endif + +#if defined(__sparc64__) +static int dtrace_getustack_common(uint64_t *, int, uintptr_t); +#endif + /* Temporary hacks during porting this code. */ #include @@ -665,6 +672,9 @@ #if defined(__i386__) #include #endif +#if defined(__sparc64__) +#include +#endif SYSINIT(dtrace_load, SI_SUB_DTRACE, SI_ORDER_FIRST, dtrace_load, NULL) SYSINIT(dtrace_anon_init, SI_SUB_DTRACE_ANON, SI_ORDER_FIRST, dtrace_anon_init, NULL) From owner-p4-projects@FreeBSD.ORG Fri Jul 7 19:06:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 578A016A4E0; Fri, 7 Jul 2006 19:06:15 +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 1B5DE16A4DF for ; Fri, 7 Jul 2006 19:06:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D50FD43D46 for ; Fri, 7 Jul 2006 19:06:14 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67J6EZt062616 for ; Fri, 7 Jul 2006 19:06:14 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67J6ER0062613 for perforce@freebsd.org; Fri, 7 Jul 2006 19:06:14 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 19:06:14 GMT Message-Id: <200607071906.k67J6ER0062613@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100926 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 19:06:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=100926 Change 100926 by jb@jb_freebsd2 on 2006/07/07 19:06:01 Change the priv hack definitions back to just integers. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.h#15 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.h#15 (text+ko) ==== @@ -32,13 +32,13 @@ #define TQ_NOSLEEP 0x01 /* cannot block for memory; may fail */ #define TQ_NOQUEUE 0x02 /* Do not enqueue if can't dispatch */ #define TQ_NOALLOC 0x04 /* cannot allocate memory; may fail */ -#define PRIV_EFFECTIVE (1UL << 0) -#define PRIV_DTRACE_KERNEL (1UL << 1) -#define PRIV_DTRACE_PROC (1UL << 2) -#define PRIV_DTRACE_USER (1UL << 3) -#define PRIV_PROC_OWNER (1UL << 4) -#define PRIV_PROC_ZONE (1UL << 5) -#define PRIV_ALL ~0UL +#define PRIV_EFFECTIVE (1 << 0) +#define PRIV_DTRACE_KERNEL (1 << 1) +#define PRIV_DTRACE_PROC (1 << 2) +#define PRIV_DTRACE_USER (1 << 3) +#define PRIV_PROC_OWNER (1 << 4) +#define PRIV_PROC_ZONE (1 << 5) +#define PRIV_ALL ~0 typedef struct __dev_info *dev_info_t; typedef int minor_t; typedef int major_t; From owner-p4-projects@FreeBSD.ORG Fri Jul 7 19:08:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CC7CC16A4DF; Fri, 7 Jul 2006 19:08:18 +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 8D3DC16A4DD for ; Fri, 7 Jul 2006 19:08:18 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 371AC43D53 for ; Fri, 7 Jul 2006 19:08:18 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67J8IWi062739 for ; Fri, 7 Jul 2006 19:08:18 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67J8IpE062736 for perforce@freebsd.org; Fri, 7 Jul 2006 19:08:18 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 19:08:18 GMT Message-Id: <200607071908.k67J8IpE062736@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100927 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 19:08:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=100927 Change 100927 by jb@jb_freebsd2 on 2006/07/07 19:07:36 Move some hack functions into the i386 specific file to avoid clashing with the sparc64 ones. These aren't hacks -- they are just incomplete. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.c#18 edit .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/i386/dtrace_subr.c#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.c#18 (text+ko) ==== @@ -18,61 +18,16 @@ dtrace_speculation_clean }; void -dtrace_sync(void) -{ -#ifdef DOODAD - dtrace_xcall(DTRACE_CPUALL, (dtrace_xcall_t)dtrace_sync_func, NULL); -#endif -} -void dtrace_vpanic(const char *fmt, __va_list args) { kdb_backtrace(); vprintf(fmt,args); } -int -dtrace_getipl(void) -{ - return 0; -} boolean_t priv_policy_only(const cred_t *a, int b, boolean_t c) { return 0; } -#ifdef DOODAD -static int -dtrace_xcall_func(dtrace_xcall_t func, void *arg) -{ - (*func)(arg); - - return (0); -} -#endif -void -dtrace_xcall(processorid_t cpu, dtrace_xcall_t func, void *arg) -{ -#ifdef DOODAD - cpuset_t set; - - CPUSET_ZERO(set); - - if (cpu == DTRACE_CPUALL) { - CPUSET_ALL(set); - } else { - CPUSET_ADD(set, cpu); - } - - kpreempt_disable(); - xc_sync((xc_arg_t)func, (xc_arg_t)arg, 0, X_CALL_HIPRI, set, - (xc_func_t)dtrace_xcall_func); - kpreempt_enable(); -#else - critical_enter(); - (*func)(arg); - critical_exit(); -#endif -} taskqid_t taskq_dispatch(taskq_t *a, task_func_t b, void *c, uint_t d) { ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/i386/dtrace_subr.c#3 (text+ko) ==== @@ -134,13 +134,15 @@ dtrace_invop_func = NULL; } -#ifdef DOODAD int dtrace_getipl(void) { +#ifdef DOODAD return (CPU->cpu_pri); +#else + return (0); +#endif } -#endif /*ARGSUSED*/ void @@ -171,11 +173,11 @@ return (0); } - -/*ARGSUSED*/ +#endif void dtrace_xcall(processorid_t cpu, dtrace_xcall_t func, void *arg) { +#ifdef DOODAD cpuset_t set; CPUSET_ZERO(set); @@ -190,18 +192,28 @@ xc_sync((xc_arg_t)func, (xc_arg_t)arg, 0, X_CALL_HIPRI, set, (xc_func_t)dtrace_xcall_func); kpreempt_enable(); +#else + critical_enter(); + (*func)(arg); + critical_exit(); +#endif } +#ifdef DOODAD void dtrace_sync_func(void) {} +#endif void dtrace_sync(void) { - dtrace_xcall(DTRACE_CPUALL, (dtrace_xcall_t)dtrace_sync_func, NULL); +#ifdef DOODAD + dtrace_xcall(DTRACE_CPUALL, (dtrace_xcall_t)dtrace_sync_func, NULL); +#endif } +#ifdef DOODAD int (*dtrace_fasttrap_probe_ptr)(struct regs *); int (*dtrace_pid_probe_ptr)(struct regs *); int (*dtrace_return_probe_ptr)(struct regs *); From owner-p4-projects@FreeBSD.ORG Fri Jul 7 19:10:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A44B916A4E5; Fri, 7 Jul 2006 19:10:21 +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 8116C16A4DE for ; Fri, 7 Jul 2006 19:10:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 310B143D46 for ; Fri, 7 Jul 2006 19:10:21 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67JALJA062876 for ; Fri, 7 Jul 2006 19:10:21 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67JAKqw062873 for perforce@freebsd.org; Fri, 7 Jul 2006 19:10:20 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 19:10:20 GMT Message-Id: <200607071910.k67JAKqw062873@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100928 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 19:10:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=100928 Change 100928 by jb@jb_freebsd2 on 2006/07/07 19:09:19 Add sparc64 support to the dtrace module. Work-in-progress, so some functions are just stubs. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/sparc64/dtrace_asm.S#1 add .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/sparc64/dtrace_isa.c#1 add .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/sparc64/dtrace_subr.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jul 7 19:12:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B229116A4DF; Fri, 7 Jul 2006 19:12:24 +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 8B46816A4DD for ; Fri, 7 Jul 2006 19:12:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3222943D53 for ; Fri, 7 Jul 2006 19:12:24 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67JCO0s063024 for ; Fri, 7 Jul 2006 19:12:24 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67JCNFx063021 for perforce@freebsd.org; Fri, 7 Jul 2006 19:12:23 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 19:12:23 GMT Message-Id: <200607071912.k67JCNFx063021@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100929 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 19:12:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=100929 Change 100929 by jb@jb_freebsd2 on 2006/07/07 19:11:34 Add the sparc64 machine dependent functions for the cyclic subsystem. This is lacking the actual high resolution timer interrupt functions. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/sparc64/cyclic_machdep.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jul 7 19:32:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B4A6616A4EA; Fri, 7 Jul 2006 19:32:18 +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 6906616A4E5 for ; Fri, 7 Jul 2006 19:32:18 +0000 (UTC) (envelope-from adamartin@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2A92D43D58 for ; Fri, 7 Jul 2006 19:31:49 +0000 (GMT) (envelope-from adamartin@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67JVn6F064011 for ; Fri, 7 Jul 2006 19:31:49 GMT (envelope-from adamartin@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67JVmqH064008 for perforce@freebsd.org; Fri, 7 Jul 2006 19:31:48 GMT (envelope-from adamartin@FreeBSD.org) Date: Fri, 7 Jul 2006 19:31:48 GMT Message-Id: <200607071931.k67JVmqH064008@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to adamartin@FreeBSD.org using -f From: Adam Martin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100930 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 19:32:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=100930 Change 100930 by adamartin@adamartin_tethys on 2006/07/07 19:31:09 Updates to protocol header, and a document describing the way it works. More updates are queued to go, but I want to record this intermediate work, which Erez has reviewed. Affected files ... .. //depot/projects/soc2006/adamartin_autofs/AutoFS-Proposal/AutoFS.protocol#1 add .. //depot/projects/soc2006/adamartin_autofs/AutoFS-Proposal/protocol_datatypes.h#2 edit Differences ... ==== //depot/projects/soc2006/adamartin_autofs/AutoFS-Proposal/protocol_datatypes.h#2 (text+ko) ==== @@ -1,14 +1,15 @@ #ifndef AUTOFS_PROTOCOL_HEADER #define AUTOFS_PROTOCOL_HEADER -/***** The protocol between AutoFS and AMD consists of these data types, +/***** The protocol between AutoFS and Automounter consists of these data types, strung together, as explained below. *****/ -#define MAX_PATH_LENGTH ( 1024 ) struct message_header { + uint64_t flags; /** 64 bits of flags, for some future usage, yet to + be determined. **/ uint64_t transaction_id; /** negative 1 and 0 are reserved tid's **/ uint32_t message_type; void message_data[]; /** You re-cast this handle to the @@ -16,48 +17,72 @@ }; -#define AUTOFS_ACK ( 0x20 ) +#define COMMAND_ACK ( 0x20 ) + +#define COMMAND_ACKNOWLEDGE ( COMMAND_ACK ) + +/** The ACK command can be sent by either party, AutoFS or Automounter, to +terminate a transaction. Question: Should all transactions end with an ACK? +Further Question: Should all commands end on the AutoFS side? **/ + + -#define AUTOFS_MOUNT_REQUEST ( 0x01 ) +#define COMMAND_MOUNT_REQUEST ( 0x01 ) struct mount_request +/** This is normally sent by AutoFS to Automounter, except under one specific +circumstance, where Automounter can send an unmount request to AutoFS. This is +explained in the examples file. **/ { uint32_t action; /** Mount or unmount **/ - char mountpoint [ MAX_PATH_LENGTH ]; +# define ACTION_MOUNT ( 0x01 ) +# define ACTION_UNMOUNT ( 0x02 ) + char mountpoint[]; }; -#define AUTOFS_MOUNT ( 0x01 ) -#define AUTOFS_UNMOUNT ( 0x02 ) -#define AUTOFS_MOUNT_DONE ( 0x02 ) +#define COMMAND_MOUNT_DONE ( 0x02 ) struct mount_done +/** Automounter returns this after any mount command **/ { uint32_t status; /** Failed, succeeded, etc. **/ }; -#define AUTOFS_AMD_HELLO ( 0x03 ) +#define COMMAND_HELLO ( 0x03 ) -struct autofs_amd_hello +struct hello +/** Automounter sends this command to initiate a session with the AutoFS **/ { uint32_t proto_ver; }; -#define AUTOFS_GREETING ( 0x04 ) struct managed_mount +/** This structure is supplemental to mount management commands. Both AutoFS +and Automounter commands use this format to encode the mountpoints that will +be managed. **/ { uint32_t status; + /** Automounter uses the status field to encode the action to perform, + (add or remove from the list) at current. AutoFS will report the + status of managed mounts in this same field to Automounter -- mounted, + unmounted, etc. **/ uint32_t timeout; /** In seconds? **/ uint32_t type; /** Network, local, etc. We can define several types later. **/ - char mountpoint [ MAX_PATH_LENGTH ]; + char mountpoint[]; +} -struct autofs_greeting +#define COMMAND_AUTOFS_GREETING ( 0x04 ) +struct greeting +/** AutoFS sends this command to Automounter, after getting the "Hello" +command. Automounter should parse the mount management list, to check any +state it must record, and to take any appropriate actions. **/ { uint32_t status; uint32_t proto_ver; @@ -67,19 +92,49 @@ -#define AUTOFS_AMD_GREETING ( 0x05 ) +#define COMMAND_GREETING_RESPONSE ( 0x05 ) -struct amd_greeting_response +struct greeting_response +/** Automounter will send this command to finish an initialization transaction. +AutoFS will modify its internal mount management table to reflect Automounter's wishes, and handle the new mountpoints **/ { uint32_t session_id; - uint32_t list_action; /** Append to list, replace list, perhaps we - can add others later? **/ uint32_t n_mounts; struct managed_mount mounts[]; }; + +#define COMMAND_MODIFY_MOUNTS ( 0x06 ) + +struct modify_mounts +/** Automounter can send this command at any time, to re-initialize, or modify +mounts. Automounter should never have more than ONE mount-modification request +in flight at any given time, as TID's are only generated by AutoFS.**/ + +/** Question for FreeBSD folk, and Prof. Zadok: What if we let Automounter +generate the TID field here, and AutoFS merely copies that field back, when +replying? We cannot guarantee the isolation of these transactions, but +Automounter can re-use TID's from transactions it wants to interlace with +modify_mount actions? **/ +{ + uint32_t n_mounts; + struct managed_mount mounts[]; +} + +#define COMMAND_MODIFY_MOUNTS_ACKNOWLEDGE ( 0x07 ) + +struct modify_mounts_acknowledge +/** AutoFS will issue this command in response to either of a modify_mounts +command, or a greetings_response command. The status field of mounts, in this +case, is the success or failure of modifying the mount table as requested by +the matching slot in the modify_mounts or greetings_response command. **/ +{ + uint32_t n_mounts; + struct managed_mounts mounts[]; +} + /**** -How it all works: +How it all works: (See AutoFS.protocol for a detailed explanation) Each side drops raw data into the data-pipe (a pseudo-device) and picks it up from this data-pipe. From the perspective of the protocol handler, on either @@ -87,13 +142,14 @@ received, the handler should first apply the "protocol_header" struct to the bytes. From that point, a switch statement on the "type" field in the header determines the next structure to use, attached to the next field of bytes. On -unknown types, AutoFS should send a response back to AMD, and request AMD to -restart? Similarly so with AMD. This part I suppose could be made better? +unknown types, AutoFS should send a response back to Automounter, and request +Automounter to restart? Similarly so with Automounter. This part I suppose +could be made better? Generally, the nature of interaction goes something like this: -AMD AutoFS -Hello +Automounter AutoFS +Hello, I would like to talk protocol version XYZZY @@ -108,46 +164,50 @@ Any mounted filesystems will preclude the capability to replace the existing list in -AutoFS. AMD must be instructed -to unmount those filesystems. +AutoFS. Automounter must be +instructed to unmount those +filesystems. + - Acknowledge + modify_mounts_acknowledge ------------------ sometime later a mount is requested -------------------- Please mount filesystem xyzzy -AMD will perform the -mounting, and then when -finished, will notfiy -AutoFS of the status -of the attempt (fail -or succeed.) +Automounter will perform +the mounting, and then +when finished, will +notfiy AutoFS of the +status of the attempt +(fail or succeed.) Acknowledge ----------------- a similar process is incurred for unmount -------------- -Additionally for unmount, AMD my request that AutoFS be notified of -an unmount attempt. Such a transaction will look like this: +Additionally for unmount, Automounter my request that AutoFS be notified of an +unmount attempt. Such a transaction will look like this: -AMD will send an unmount -request for xyzzy, without -a TID stamp. (0, perhaps?) +Automounter will send an +unmount request for xyzzy, +without a TID stamp. (use +a 0 perhaps?) AutoFS will send back an identical request with a generated timestamp. -AMD will perform the unmount -and then notify as normal. +Automounter will perform the +unmount and then notify as +normal. Acknowledge. ---------------------------------------------------------------------- -If AutoFS receives a greeting request from an already established AMD session, -AutoFS will interpret this as an attempt to re-synchronize the state between -the two entities. All the primary rules apply. +If AutoFS receives a greeting request from an already established Automounter +session, AutoFS will interpret this as an attempt to re-synchronize the state +between the two entities. All the primary rules apply. The AutoFS devices will only allow ONE process to be connected to them at any given time. (This obviously precludes child-processes, which AutoFS will From owner-p4-projects@FreeBSD.ORG Fri Jul 7 20:04:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5D1B116A4E1; Fri, 7 Jul 2006 20:04:31 +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 2163816A4DF for ; Fri, 7 Jul 2006 20:04:31 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C92E043D46 for ; Fri, 7 Jul 2006 20:04:30 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67K4UYZ068347 for ; Fri, 7 Jul 2006 20:04:30 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67K4U7S068343 for perforce@freebsd.org; Fri, 7 Jul 2006 20:04:30 GMT (envelope-from jhb@freebsd.org) Date: Fri, 7 Jul 2006 20:04:30 GMT Message-Id: <200607072004.k67K4U7S068343@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100933 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 20:04:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=100933 Change 100933 by jhb@jhb_mutex on 2006/07/07 20:03:33 Gah. Affected files ... .. //depot/projects/smpng/sys/kern/sysv_sem.c#40 edit Differences ... ==== //depot/projects/smpng/sys/kern/sysv_sem.c#40 (text+ko) ==== @@ -678,7 +678,7 @@ #endif error = 0; - rval = 0; + *rval = 0; switch (cmd) { case IPC_RMID: From owner-p4-projects@FreeBSD.ORG Fri Jul 7 20:12:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BFEE816A4DF; Fri, 7 Jul 2006 20:12:42 +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 9B4FE16A4DA for ; Fri, 7 Jul 2006 20:12:42 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 47EAE43D46 for ; Fri, 7 Jul 2006 20:12:42 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67KCgbc069060 for ; Fri, 7 Jul 2006 20:12:42 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67KCgFW069057 for perforce@freebsd.org; Fri, 7 Jul 2006 20:12:42 GMT (envelope-from jb@freebsd.org) Date: Fri, 7 Jul 2006 20:12:42 GMT Message-Id: <200607072012.k67KCgFW069057@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 100934 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 20:12:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=100934 Change 100934 by jb@jb_freebsd2 on 2006/07/07 20:12:18 Add sparc64 dtrace headers. Affected files ... .. //depot/projects/dtrace/src/sys/sparc64/include/dtrace.h#1 add .. //depot/projects/dtrace/src/sys/sparc64/include/dtrace_asm.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jul 7 20:25:01 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 94A2E16A4E1; Fri, 7 Jul 2006 20:25:01 +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 479C716A4DD for ; Fri, 7 Jul 2006 20:25:01 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E08EC43D5E for ; Fri, 7 Jul 2006 20:24:57 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67KOvP5071873 for ; Fri, 7 Jul 2006 20:24:57 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67KOv4D071870 for perforce@freebsd.org; Fri, 7 Jul 2006 20:24:57 GMT (envelope-from gabor@FreeBSD.org) Date: Fri, 7 Jul 2006 20:24:57 GMT Message-Id: <200607072024.k67KOv4D071870@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 100935 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 20:25:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=100935 Change 100935 by gabor@gabor_spitfire on 2006/07/07 20:24:03 Pass just --prefix=${PREFIX} to the configure script when GNU_CONFIGURE is set, not --prefix=${DESTDIR}${PREFIX}. GNU configure scripts are aware of the environmental DESTDIR variable, so the latter one mixed things up. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#12 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#12 (text+ko) ==== @@ -2766,7 +2766,7 @@ .if !defined(CONFIGURE_MAX_CMD_LEN) CONFIGURE_MAX_CMD_LEN!= ${SYSCTL} -n kern.argmax .endif -CONFIGURE_ARGS+= --prefix=${DESTDIR}${PREFIX} ${CONFIGURE_TARGET} +CONFIGURE_ARGS+= --prefix=${PREFIX} ${CONFIGURE_TARGET} CONFIGURE_ENV+= lt_cv_sys_max_cmd_len=${CONFIGURE_MAX_CMD_LEN} HAS_CONFIGURE= yes .endif From owner-p4-projects@FreeBSD.ORG Fri Jul 7 20:29:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C522A16A4DF; Fri, 7 Jul 2006 20:29:03 +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 A053016A4DA for ; Fri, 7 Jul 2006 20:29:03 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4C8E043D46 for ; Fri, 7 Jul 2006 20:29:03 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67KT3nP072040 for ; Fri, 7 Jul 2006 20:29:03 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67KT2XO072037 for perforce@freebsd.org; Fri, 7 Jul 2006 20:29:02 GMT (envelope-from bms@freebsd.org) Date: Fri, 7 Jul 2006 20:29:02 GMT Message-Id: <200607072029.k67KT2XO072037@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 100936 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 20:29:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=100936 Change 100936 by bms@bms_montagne on 2006/07/07 20:28:11 Use the correct -march value (mips32). With this change, the kernel links. Affected files ... .. //depot/projects/mips2/src/sys/conf/Makefile.mips#5 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/Makefile.mips#5 (text+ko) ==== @@ -36,7 +36,7 @@ # # XXXMIPS: Without it, you'll be bombed by warnings. # -ARCH_FLAGS=-march=mips3 +ARCH_FLAGS=-march=mips32 CFLAGS+=-fno-pic $(ARCH_FLAGS) SYSTEM_LD+= -Ttext 0x80100000 HACK_EXTRA_FLAGS+=-fno-pic $(ARCH_FLAGS) From owner-p4-projects@FreeBSD.ORG Fri Jul 7 21:00:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A735B16A4E1; Fri, 7 Jul 2006 21:00:43 +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 80A6A16A4DD for ; Fri, 7 Jul 2006 21:00:43 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4CFF143D45 for ; Fri, 7 Jul 2006 21:00:43 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67L0hn4081181 for ; Fri, 7 Jul 2006 21:00:43 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67L0hHf081178 for perforce@freebsd.org; Fri, 7 Jul 2006 21:00:43 GMT (envelope-from imp@freebsd.org) Date: Fri, 7 Jul 2006 21:00:43 GMT Message-Id: <200607072100.k67L0hHf081178@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100937 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 21:00:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=100937 Change 100937 by imp@imp_lighthouse on 2006/07/07 21:00:32 Nits Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_ssc.c#5 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_ssc.c#5 (text+ko) ==== @@ -67,11 +67,11 @@ #define AT91_SSC_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) #define AT91_SSC_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) #define AT91_SSC_LOCK_INIT(_sc) \ - mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->dev), \ + mtx_init(&(_sc)->sc_mtx, device_get_nameunit((_sc)->dev), \ "ssc", MTX_DEF) -#define AT91_SSC_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); -#define AT91_SSC_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); -#define AT91_SSC_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); +#define AT91_SSC_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->sc_mtx); +#define AT91_SSC_ASSERT_LOCKED(_sc) mtx_assert(&(_sc)->sc_mtx, MA_OWNED); +#define AT91_SSC_ASSERT_UNLOCKED(_sc) mtx_assert(&(_sc)->sc_mtx, MA_NOTOWNED); #define CDEV2SOFTC(dev) ((dev)->si_drv1) static devclass_t at91_ssc_devclass; From owner-p4-projects@FreeBSD.ORG Fri Jul 7 21:39:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D2AAA16A4E6; Fri, 7 Jul 2006 21:39:32 +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 9632016A4E0 for ; Fri, 7 Jul 2006 21:39:32 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3CDF543D45 for ; Fri, 7 Jul 2006 21:39:32 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67LdWOb083924 for ; Fri, 7 Jul 2006 21:39:32 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67LdWAv083921 for perforce@freebsd.org; Fri, 7 Jul 2006 21:39:32 GMT (envelope-from cognet@freebsd.org) Date: Fri, 7 Jul 2006 21:39:32 GMT Message-Id: <200607072139.k67LdWAv083921@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 100938 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 21:39:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=100938 Change 100938 by cognet@cognet on 2006/07/07 21:39:20 Regen the gnu/contrib patches : - Hack a bit bfd to provide my own grok_prstatus function for arm, which hardcodes the size and offset of the pr_reg field in the struct prstatus. - Include armfbsd-nat.c even if we're building a cross-debugger, just, in this case, include the definitions of the struct reg and the struct fpreg (hopefully those won't change much), and do not attempt to run ptrace. This seems to be enough to use a cross-gdb on amd64 to examine an arm core file. Affected files ... .. //depot/projects/arm/contrib-arm.diff#4 edit .. //depot/projects/arm/gnu-arm.diff#12 edit Differences ... ==== //depot/projects/arm/contrib-arm.diff#4 (text+ko) ==== @@ -1,10 +1,10 @@ Index: contrib/binutils/ld/emulparams/armelf_fbsd.sh =================================================================== -RCS file: /home/ncvs/src/contrib/binutils/ld/emulparams/armelf_fbsd.sh,v +RCS file: /cognet/ncvs/src/contrib/binutils/ld/emulparams/armelf_fbsd.sh,v retrieving revision 1.1.1.1 diff -u -p -r1.1.1.1 armelf_fbsd.sh --- contrib/binutils/ld/emulparams/armelf_fbsd.sh 22 Feb 2002 04:18:15 -0000 1.1.1.1 -+++ contrib/binutils/ld/emulparams/armelf_fbsd.sh 21 Oct 2004 21:30:03 -0000 ++++ contrib/binutils/ld/emulparams/armelf_fbsd.sh 29 Aug 2005 12:39:39 -0000 @@ -1,2 +1,7 @@ . ${srcdir}/emulparams/armelf.sh . ${srcdir}/emulparams/elf_fbsd.sh @@ -15,12 +15,12 @@ +unset EMBEDDED Index: contrib/gcc/config/arm/arm.md =================================================================== -RCS file: /home/ncvs/src/contrib/gcc/config/arm/arm.md,v -retrieving revision 1.1.1.6 -diff -u -p -r1.1.1.6 arm.md ---- contrib/gcc/config/arm/arm.md 28 Jul 2004 03:11:35 -0000 1.1.1.6 -+++ contrib/gcc/config/arm/arm.md 6 Apr 2005 20:06:06 -0000 -@@ -8834,12 +8834,12 @@ +RCS file: /cognet/ncvs/src/contrib/gcc/config/arm/arm.md,v +retrieving revision 1.1.1.7 +diff -u -p -r1.1.1.7 arm.md +--- contrib/gcc/config/arm/arm.md 3 Jun 2005 03:28:42 -0000 1.1.1.7 ++++ contrib/gcc/config/arm/arm.md 29 Aug 2005 12:39:39 -0000 +@@ -8836,12 +8836,12 @@ ldm[2] = operands[4]; } if (GET_CODE (XEXP (operands[2], 0)) != REG) @@ -36,7 +36,7 @@ { arith[1] = ldm[1]; arith[2] = ldm[2]; -@@ -8869,7 +8869,7 @@ +@@ -8871,7 +8871,7 @@ else output_asm_insn (\"ldm%?ia\\t%0, {%1, %2}\", ldm); } @@ -45,7 +45,7 @@ { ldm[0] = XEXP (operands[2], 0); if (val1 < val2) -@@ -8877,6 +8877,14 @@ +@@ -8879,6 +8879,14 @@ else output_asm_insn (\"ldm%?da\\t%0, {%1, %2}\", ldm); } @@ -62,11 +62,11 @@ }" Index: contrib/gcc/config/arm/freebsd.h =================================================================== -RCS file: /home/ncvs/src/contrib/gcc/config/arm/freebsd.h,v +RCS file: /cognet/ncvs/src/contrib/gcc/config/arm/freebsd.h,v retrieving revision 1.1.1.3 diff -u -p -r1.1.1.3 freebsd.h --- contrib/gcc/config/arm/freebsd.h 28 Jul 2004 03:11:35 -0000 1.1.1.3 -+++ contrib/gcc/config/arm/freebsd.h 19 Jan 2005 17:09:58 -0000 ++++ contrib/gcc/config/arm/freebsd.h 29 Aug 2005 12:39:39 -0000 @@ -22,7 +22,10 @@ #undef SUBTARGET_EXTRA_SPECS @@ -165,34 +165,14 @@ + (void) sysarch (0, &s); \ + } \ +while (0) -Index: contrib/gcc/config/arm/t-xscale-elf -=================================================================== -RCS file: /home/ncvs/src/contrib/gcc/config/arm/t-xscale-elf,v -retrieving revision 1.1.1.2 -diff -u -p -r1.1.1.2 t-xscale-elf ---- contrib/gcc/config/arm/t-xscale-elf 28 Jul 2004 03:11:35 -0000 1.1.1.2 -+++ contrib/gcc/config/arm/t-xscale-elf 21 Oct 2004 21:30:03 -0000 -@@ -37,9 +37,9 @@ MULTILIB_EXCEPTIONS += *mhard-float/*mth - - MULTILIB_REDUNDANT_DIRS = interwork/thumb=thumb - --MULTILIB_OPTIONS += mcpu=iwmmxt --MULTILIB_DIRNAMES += iwmmxt --MULTILIB_REDUNDANT_DIRS += interwork/thumb/iwmmxt=thumb -+#MULTILIB_OPTIONS += mcpu=iwmmxt -+#MULTILIB_DIRNAMES += iwmmxt -+#MULTILIB_REDUNDANT_DIRS += interwork/thumb/iwmmxt=thumb - - EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o - Index: contrib/gdb/gdb/armfbsd-nat.c =================================================================== RCS file: contrib/gdb/gdb/armfbsd-nat.c diff -N contrib/gdb/gdb/armfbsd-nat.c --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ contrib/gdb/gdb/armfbsd-nat.c 15 Aug 2004 00:57:52 -0000 -@@ -0,0 +1,464 @@ -+/* Native-dependent code for BSD Unix running on ARM's, for GDB. ++++ contrib/gdb/gdb/armfbsd-nat.c 7 Jul 2006 21:33:39 -0000 +@@ -0,0 +1,516 @@ ++ /* Native-dependent code for BSD Unix running on ARM's, for GDB. + Copyright 1988, 1989, 1991, 1992, 1994, 1996, 1999, 2002 + Free Software Foundation, Inc. + @@ -216,21 +196,48 @@ +#include "defs.h" + +#ifndef FETCH_INFERIOR_REGISTERS ++#ifndef CROSS_DEBUGGER +#error Not FETCH_INFERIOR_REGISTERS ++#endif +#endif /* !FETCH_INFERIOR_REGISTERS */ + +#include "arm-tdep.h" + +#include +#include -+#include -+#include ++#ifndef CROSS_DEBUGGER ++#include ++#include ++#endif +#include "inferior.h" +#include "regcache.h" +#include "gdbcore.h" + +extern int arm_apcs_32; + ++#ifdef CROSS_DEBUGGER ++struct reg { ++ unsigned int r[13]; ++ unsigned int r_sp; ++ unsigned int r_lr; ++ unsigned int r_pc; ++ unsigned int r_cpsr; ++}; ++ ++typedef struct fp_extended_precision { ++ u_int32_t fp_exponent; ++ u_int32_t fp_mantissa_hi; ++ u_int32_t fp_mantissa_lo; ++} fp_extended_precision_t; ++ ++typedef struct fp_extended_precision fp_reg_t; ++ ++struct fpreg { ++ unsigned int fpr_fpsr; ++ fp_reg_t fpr[8]; ++}; ++#endif ++ +void +supply_gregset (struct reg *gregset) +{ @@ -269,6 +276,7 @@ +fetch_register (int regno) +{ + struct reg inferior_registers; ++#ifndef CROSS_DEBUGGER + int ret; + + ret = ptrace (PT_GETREGS, PIDGET (inferior_ptid), @@ -279,6 +287,7 @@ + warning ("unable to fetch general register"); + return; + } ++#endif + + switch (regno) + { @@ -313,9 +322,12 @@ +fetch_regs (void) +{ + struct reg inferior_registers; ++#ifndef CROSS_DEBUGGER + int ret; ++#endif + int regno; + ++#ifndef CROSS_DEBUGGER + ret = ptrace (PT_GETREGS, PIDGET (inferior_ptid), + (PTRACE_ARG3_TYPE) &inferior_registers, 0); + @@ -324,6 +336,7 @@ + warning ("unable to fetch general registers"); + return; + } ++#endif + + supply_gregset (&inferior_registers); +} @@ -332,6 +345,7 @@ +fetch_fp_register (int regno) +{ + struct fpreg inferior_fp_registers; ++#ifndef CROSS_DEBUGGER + int ret; + + ret = ptrace (PT_GETFPREGS, PIDGET (inferior_ptid), @@ -342,6 +356,7 @@ + warning ("unable to fetch floating-point register"); + return; + } ++#endif + + switch (regno) + { @@ -361,9 +376,12 @@ +fetch_fp_regs (void) +{ + struct fpreg inferior_fp_registers; ++#ifndef CROSS_DEBUGGER + int ret; ++#endif + int regno; + ++#ifndef CROSS_DEBUGGER + ret = ptrace (PT_GETFPREGS, PIDGET (inferior_ptid), + (PTRACE_ARG3_TYPE) &inferior_fp_registers, 0); + @@ -372,6 +390,7 @@ + warning ("unable to fetch general registers"); + return; + } ++#endif + + supply_fpregset (&inferior_fp_registers); +} @@ -398,6 +417,7 @@ +store_register (int regno) +{ + struct reg inferior_registers; ++#ifndef CROSS_DEBUGGER + int ret; + + ret = ptrace (PT_GETREGS, PIDGET (inferior_ptid), @@ -408,6 +428,7 @@ + warning ("unable to fetch general registers"); + return; + } ++#endif + + switch (regno) + { @@ -455,11 +476,13 @@ + break; + } + ++#ifndef CROSS_DEBUGGER + ret = ptrace (PT_SETREGS, PIDGET (inferior_ptid), + (PTRACE_ARG3_TYPE) &inferior_registers, 0); + + if (ret < 0) + warning ("unable to write register %d to inferior", regno); ++#endif +} + +static void @@ -495,17 +518,20 @@ + inferior_registers.r_pc = pc_val | psr_val; + } + ++#ifndef CROSS_DEBUGGER + ret = ptrace (PT_SETREGS, PIDGET (inferior_ptid), + (PTRACE_ARG3_TYPE) &inferior_registers, 0); + + if (ret < 0) + warning ("unable to store general registers"); ++#endif +} + +static void +store_fp_register (int regno) +{ + struct fpreg inferior_fp_registers; ++#ifndef CROSS_DEBUGGER + int ret; + + ret = ptrace (PT_GETFPREGS, PIDGET (inferior_ptid), @@ -516,6 +542,7 @@ + warning ("unable to fetch floating-point registers"); + return; + } ++#endif + + switch (regno) + { @@ -530,11 +557,13 @@ + break; + } + ++#ifndef CROSS_DEBUGGER + ret = ptrace (PT_SETFPREGS, PIDGET (inferior_ptid), + (PTRACE_ARG3_TYPE) &inferior_fp_registers, 0); + + if (ret < 0) + warning ("unable to write register %d to inferior", regno); ++#endif +} + +static void @@ -551,11 +580,13 @@ + + regcache_collect (ARM_FPS_REGNUM, (char *) &inferior_fp_registers.fpr_fpsr); + ++#ifndef CROSS_DEBUGGER + ret = ptrace (PT_SETFPREGS, PIDGET (inferior_ptid), + (PTRACE_ARG3_TYPE) &inferior_fp_registers, 0); + + if (ret < 0) + warning ("unable to store floating-point registers"); ++#endif +} + +void @@ -575,6 +606,7 @@ + } +} + ++ +struct md_core +{ + struct reg intreg; @@ -661,7 +693,7 @@ RCS file: contrib/gdb/gdb/armfbsd-tdep.c diff -N contrib/gdb/gdb/armfbsd-tdep.c --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ contrib/gdb/gdb/armfbsd-tdep.c 27 Feb 2005 20:44:28 -0000 ++++ contrib/gdb/gdb/armfbsd-tdep.c 29 Aug 2005 12:39:39 -0000 @@ -0,0 +1,67 @@ +/* Target-specific functions for ARM running under NetBSD. + Copyright 2002, 2003 Free Software Foundation, Inc. @@ -730,33 +762,33 @@ + gdbarch_register_osabi (bfd_arch_arm, 0, GDB_OSABI_FREEBSD_ELF, + arm_freebsd_elf_init_abi); +} +Index: contrib/gdb/gdb/config/arm/fbsd.mh +=================================================================== +RCS file: contrib/gdb/gdb/config/arm/fbsd.mh +diff -N contrib/gdb/gdb/config/arm/fbsd.mh +--- /dev/null 1 Jan 1970 00:00:00 -0000 ++++ contrib/gdb/gdb/config/arm/fbsd.mh 7 Jul 2006 21:29:38 -0000 +@@ -0,0 +1,4 @@ ++# Host ARM running FreeBSD ++NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o armfbsd-nat.o ++XM_FILE=xm-fbsd.h ++NAT_FILE=nm-fbsd.h Index: contrib/gdb/gdb/config/arm/fbsd.mt =================================================================== RCS file: contrib/gdb/gdb/config/arm/fbsd.mt diff -N contrib/gdb/gdb/config/arm/fbsd.mt --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ contrib/gdb/gdb/config/arm/fbsd.mt 15 Aug 2004 00:33:53 -0000 ++++ contrib/gdb/gdb/config/arm/fbsd.mt 29 Aug 2005 12:39:39 -0000 @@ -0,0 +1,3 @@ +# Target: ARM running FreeBSD +TDEPFILES= arm-tdep.o armfbsd-tdep.o fbsd-tdep.o solib.o solib-svr4.o +TM_FILE=tm-fbsd.h -Index: contrib/gdb/gdb/config/arm/fbsdelf.h -=================================================================== -RCS file: contrib/gdb/gdb/config/arm/fbsdelf.h -diff -N contrib/gdb/gdb/config/arm/fbsdelf.h ---- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ contrib/gdb/gdb/config/arm/fbsdelf.h 15 Aug 2004 00:03:06 -0000 -@@ -0,0 +1,4 @@ -+# Host ARM running NetBSD -+NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o armfbsd-nat.o -+XM_FILE=xm-fbsd.h -+NAT_FILE=nm-fbsd.h Index: contrib/gdb/gdb/config/arm/nm-fbsd.h =================================================================== RCS file: contrib/gdb/gdb/config/arm/nm-fbsd.h diff -N contrib/gdb/gdb/config/arm/nm-fbsd.h --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ contrib/gdb/gdb/config/arm/nm-fbsd.h 15 Aug 2004 00:11:57 -0000 ++++ contrib/gdb/gdb/config/arm/nm-fbsd.h 29 Aug 2005 12:39:39 -0000 @@ -0,0 +1,30 @@ +/* Native-dependent definitions for ARM running NetBSD, for GDB. + Copyright 1986, 1987, 1989, 1992, 1994, 1999 Free Software Foundation, Inc. @@ -793,7 +825,7 @@ RCS file: contrib/gdb/gdb/config/arm/tm-fbsd.h diff -N contrib/gdb/gdb/config/arm/tm-fbsd.h --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ contrib/gdb/gdb/config/arm/tm-fbsd.h 15 Aug 2004 00:06:04 -0000 ++++ contrib/gdb/gdb/config/arm/tm-fbsd.h 29 Aug 2005 12:39:39 -0000 @@ -0,0 +1,26 @@ +/* Macro definitions for ARM running under NetBSD. + Copyright 2003 Free Software Foundation, Inc. @@ -826,7 +858,7 @@ RCS file: contrib/gdb/gdb/config/arm/xm-fbsd.h diff -N contrib/gdb/gdb/config/arm/xm-fbsd.h --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ contrib/gdb/gdb/config/arm/xm-fbsd.h 15 Aug 2004 00:08:17 -0000 ++++ contrib/gdb/gdb/config/arm/xm-fbsd.h 29 Aug 2005 12:39:39 -0000 @@ -0,0 +1,20 @@ +/* Parameters for execution on an ARM running NetBSD, for GDB. + Copyright 1994 Free Software Foundation, Inc. ==== //depot/projects/arm/gnu-arm.diff#12 (text+ko) ==== @@ -4,7 +4,7 @@ retrieving revision 1.55 diff -u -p -r1.55 Makefile --- gnu/lib/libgcc/Makefile 18 Mar 2006 21:37:03 -0000 1.55 -+++ gnu/lib/libgcc/Makefile 19 Mar 2006 21:13:20 -0000 ++++ gnu/lib/libgcc/Makefile 6 Jul 2006 23:54:06 -0000 @@ -98,8 +98,11 @@ LIB2FUNCS_EXTRA = qrnnd.asm # from config/arm/t-strongarm-elf CFLAGS+= -Dinhibit_libc -fno-inline @@ -34,7 +34,7 @@ retrieving revision 1.56 diff -u -p -r1.56 Makefile --- gnu/lib/libstdc++/Makefile 22 Jul 2005 17:18:58 -0000 1.56 -+++ gnu/lib/libstdc++/Makefile 29 Aug 2005 12:39:27 -0000 ++++ gnu/lib/libstdc++/Makefile 6 Jul 2006 23:54:06 -0000 @@ -174,6 +174,10 @@ TARGETHDRSNAME_c_locale.h= c++locale.h TARGETHDRSNAME_new_allocator_base.h= c++allocator.h TARGETHDRSDIR= ${CXXINCLUDEDIR}/bits @@ -52,7 +52,7 @@ retrieving revision 1.88 diff -u -p -r1.88 Makefile --- gnu/usr.bin/Makefile 17 Mar 2006 18:54:22 -0000 1.88 -+++ gnu/usr.bin/Makefile 18 Mar 2006 01:46:32 -0000 ++++ gnu/usr.bin/Makefile 6 Jul 2006 23:54:06 -0000 @@ -24,7 +24,7 @@ SUBDIR= bc \ sort \ ${_texinfo} @@ -67,7 +67,7 @@ RCS file: gnu/usr.bin/binutils/as/arm-freebsd/targ-cpu.h diff -N gnu/usr.bin/binutils/as/arm-freebsd/targ-cpu.h --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/binutils/as/arm-freebsd/targ-cpu.h 29 Aug 2005 12:39:27 -0000 ++++ gnu/usr.bin/binutils/as/arm-freebsd/targ-cpu.h 6 Jul 2006 23:54:06 -0000 @@ -0,0 +1,3 @@ +/* $FreeBSD$ */ + @@ -77,7 +77,7 @@ RCS file: gnu/usr.bin/binutils/ld/Makefile.arm diff -N gnu/usr.bin/binutils/ld/Makefile.arm --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/binutils/ld/Makefile.arm 29 Aug 2005 12:39:27 -0000 ++++ gnu/usr.bin/binutils/ld/Makefile.arm 6 Jul 2006 23:54:06 -0000 @@ -0,0 +1,12 @@ +# $FreeBSD$ + @@ -96,8 +96,8 @@ RCS file: gnu/usr.bin/binutils/libbfd/Makefile.arm diff -N gnu/usr.bin/binutils/libbfd/Makefile.arm --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/binutils/libbfd/Makefile.arm 20 May 2006 22:58:30 -0000 -@@ -0,0 +1,24 @@ ++++ gnu/usr.bin/binutils/libbfd/Makefile.arm 7 Jul 2006 21:11:14 -0000 +@@ -0,0 +1,43 @@ +# $FreeBSD$ + +DEFAULT_VECTOR= bfd_elf32_littlearm_vec @@ -107,7 +107,6 @@ + elf32.c \ + elf32-gen.c \ + elflink.c \ -+ elfarm-nabi.c \ + elfarm-oabi.c \ + elf32-arm-fbsd.c \ + elf32-target.h @@ -121,13 +120,33 @@ +CLEANFILES+= elf32-arm-fbsd.c + +elf32-arm-fbsd.c: elfarm-nabi.c -+ cat ${.ALLSRC} | sed s/ELFOSABI_ARM/ELFOSABI_FREEBSD/g >${.TARGET} ++ cat ${.ALLSRC} | sed -e s/ELFOSABI_ARM/ELFOSABI_FREEBSD/g \ ++ -e "s/\(.*#define.*\)elf32_arm_nabi_grok_prstatus/\1elf32_fbsd_arm_grok_prstatus/" -e s/"#include.*elf32-arm.h.*//" >${.TARGET}; \ ++ echo '\ ++ static bfd_boolean elf32_fbsd_arm_grok_prstatus(bfd *abfd, Elf_Internal_Note *note) \ ++ { \ ++ size_t raw_size; \ ++ int offset; \ ++ if (note->descsz != 96) \ ++ return (FALSE); \ ++ offset = 28; \ ++ raw_size = 68; \ ++ if (elf_tdata(abfd)->core_signal == 0) \ ++ elf_tdata (abfd)->core_signal = ((int *)(note->descdata))[5]; \ ++ elf_tdata (abfd)->core_pid = ((int *)(note->descdata))[6]; \ ++ /* Make a ".reg/999" section. */ \ ++ return _bfd_elfcore_make_pseudosection (abfd, ".reg", \ ++ raw_size, note->descpos + offset); \ ++}' >> ${.TARGET}; \ ++ echo '#include "elf32-arm.h"' >> ${.TARGET} ++ ++ Index: gnu/usr.bin/binutils/libopcodes/Makefile.arm =================================================================== RCS file: gnu/usr.bin/binutils/libopcodes/Makefile.arm diff -N gnu/usr.bin/binutils/libopcodes/Makefile.arm --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/binutils/libopcodes/Makefile.arm 29 Aug 2005 12:39:27 -0000 ++++ gnu/usr.bin/binutils/libopcodes/Makefile.arm 6 Jul 2006 23:54:06 -0000 @@ -0,0 +1,4 @@ +# $FreeBSD$ + @@ -139,7 +158,7 @@ retrieving revision 1.82 diff -u -p -r1.82 Makefile --- gnu/usr.bin/cc/cc_tools/Makefile 17 Mar 2006 18:54:23 -0000 1.82 -+++ gnu/usr.bin/cc/cc_tools/Makefile 19 Mar 2006 21:13:24 -0000 ++++ gnu/usr.bin/cc/cc_tools/Makefile 6 Jul 2006 23:54:06 -0000 @@ -216,7 +216,9 @@ CLEANFILES+= fini .if ${TARGET_ARCH} == "amd64" TARGET_INC= i386/biarch64.h @@ -168,7 +187,7 @@ retrieving revision 1.18 diff -u -p -r1.18 auto-host.h --- gnu/usr.bin/cc/cc_tools/auto-host.h 28 Jul 2004 05:27:20 -0000 1.18 -+++ gnu/usr.bin/cc/cc_tools/auto-host.h 29 Aug 2005 12:39:27 -0000 ++++ gnu/usr.bin/cc/cc_tools/auto-host.h 6 Jul 2006 23:54:06 -0000 @@ -523,7 +523,7 @@ /* The number of bytes in type int */ #define SIZEOF_INT 4 @@ -183,14 +202,12 @@ RCS file: gnu/usr.bin/gdb/arch/arm/Makefile diff -N gnu/usr.bin/gdb/arch/arm/Makefile --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/gdb/arch/arm/Makefile 29 Aug 2005 12:39:27 -0000 -@@ -0,0 +1,16 @@ ++++ gnu/usr.bin/gdb/arch/arm/Makefile 7 Jul 2006 00:02:26 -0000 +@@ -0,0 +1,14 @@ +# $FreeBSD$ + +GENSRCS+= xm.h -+.if !defined(GDB_CROSS_DEBUGGER) +LIBSRCS+= armfbsd-nat.c -+.endif +LIBSRCS+= arm-tdep.c armfbsd-tdep.c solib.c solib-svr4.c + +nm.h: @@ -206,7 +223,7 @@ RCS file: gnu/usr.bin/gdb/arch/arm/config.h diff -N gnu/usr.bin/gdb/arch/arm/config.h --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/gdb/arch/arm/config.h 29 Aug 2005 12:39:27 -0000 ++++ gnu/usr.bin/gdb/arch/arm/config.h 6 Jul 2006 23:55:39 -0000 @@ -0,0 +1,553 @@ +/* $FreeBSD$ */ + @@ -378,7 +395,7 @@ +/* #undef HAVE_LIBUNWIND */ + +/* hostfile */ -+#define GDB_XM_FILE config/arm/xm-nbsd.h ++#define GDB_XM_FILE config/arm/xm-fbsd.h + +/* targetfile */ +#define GDB_TM_FILE config/arm/tm-fbsd.h @@ -766,7 +783,7 @@ RCS file: gnu/usr.bin/gdb/arch/arm/init.c diff -N gnu/usr.bin/gdb/arch/arm/init.c --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/gdb/arch/arm/init.c 29 Aug 2005 12:39:27 -0000 ++++ gnu/usr.bin/gdb/arch/arm/init.c 7 Jul 2006 00:02:16 -0000 @@ -0,0 +1,226 @@ +/* $FreeBSD$ */ + @@ -787,8 +804,8 @@ +extern initialize_file_ftype _initialize_kernel_u_addr; +extern initialize_file_ftype _initialize_infptrace; +extern initialize_file_ftype _initialize_inftarg; ++#endif +extern initialize_file_ftype _initialize_arm_fbsdnat; -+#endif +extern initialize_file_ftype _initialize_remote; +extern initialize_file_ftype _initialize_dcache; +extern initialize_file_ftype _initialize_sr_support; @@ -898,8 +915,8 @@ + _initialize_kernel_u_addr (); + _initialize_infptrace (); + _initialize_inftarg (); ++#endif + _initialize_arm_fbsdnat (); -+#endif + _initialize_remote (); + _initialize_dcache (); + _initialize_sr_support (); @@ -999,7 +1016,7 @@ RCS file: gnu/usr.bin/gdb/kgdb/trgt_arm.c diff -N gnu/usr.bin/gdb/kgdb/trgt_arm.c --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/gdb/kgdb/trgt_arm.c 13 Jun 2006 16:26:07 -0000 ++++ gnu/usr.bin/gdb/kgdb/trgt_arm.c 6 Jul 2006 23:54:06 -0000 @@ -0,0 +1,224 @@ +/* + * Copyright (c) 2004 Marcel Moolenaar From owner-p4-projects@FreeBSD.ORG Fri Jul 7 22:46:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B3C4416A4E1; Fri, 7 Jul 2006 22:46:57 +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 9020416A4DA for ; Fri, 7 Jul 2006 22:46:57 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 46BBB43D45 for ; Fri, 7 Jul 2006 22:46:57 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67Mkv4d088105 for ; Fri, 7 Jul 2006 22:46:57 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67MkubG088102 for perforce@freebsd.org; Fri, 7 Jul 2006 22:46:56 GMT (envelope-from imp@freebsd.org) Date: Fri, 7 Jul 2006 22:46:56 GMT Message-Id: <200607072246.k67MkubG088102@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100941 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 22:46:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=100941 Change 100941 by imp@imp_lighthouse on 2006/07/07 22:46:26 Nit-o-matic Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_ssc.c#6 edit .. //depot/projects/arm/src/sys/arm/at91/at91_sscreg.h#4 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_ssc.c#6 (text+ko) ==== @@ -31,8 +31,6 @@ #include #include #include -#include -#include #include #include #include ==== //depot/projects/arm/src/sys/arm/at91/at91_sscreg.h#4 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Fri Jul 7 22:47:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C37916A4E1; Fri, 7 Jul 2006 22:47:59 +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 58F4E16A4DA for ; Fri, 7 Jul 2006 22:47:59 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1403743D46 for ; Fri, 7 Jul 2006 22:47:59 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k67MlwsB088152 for ; Fri, 7 Jul 2006 22:47:58 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k67Mlw9V088149 for perforce@freebsd.org; Fri, 7 Jul 2006 22:47:58 GMT (envelope-from imp@freebsd.org) Date: Fri, 7 Jul 2006 22:47:58 GMT Message-Id: <200607072247.k67Mlw9V088149@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100942 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jul 2006 22:47:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=100942 Change 100942 by imp@imp_lighthouse on 2006/07/07 22:47:13 Add the meat of the TC drivre that TSC will need. Not sure if this should be MF->FreeBSD or not... won't hurt to be here in p4. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_tc.c#2 edit .. //depot/projects/arm/src/sys/arm/at91/at91_tcreg.h#2 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_tc.c#2 (text+ko) ==== @@ -29,13 +29,14 @@ #include #include +#include #include +#include #include +#include #include -#include -#include +#include #include -#include #include #include @@ -50,6 +51,7 @@ #define MAX_COUNTER 3 struct at91tc_counter { + void *intrhand; /* Interrupt handle */ struct resource *irq_res; /* IRQ resource */ struct at91tc_softc *sc; bus_size_t offset; @@ -59,6 +61,9 @@ struct resource *mem_res; /* Memory resource */ device_t dev; struct at91tc_counter tc[MAX_COUNTER]; + struct mtx sc_mtx; /* basically a perimeter lock */ + struct cdev *cdev; + int overflows; }; #define RD4(counter, off) \ @@ -70,8 +75,26 @@ #define WR4sc(sc, off, val) \ bus_write_4(sc->mem_res, (off), (val)) +#define AT91TC_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) +#define AT91TC_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) +#define AT91TC_LOCK_INIT(_sc) \ + mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->dev), \ + "tc", MTX_DEF) +#define AT91TC_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); +#define AT91TC_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); +#define AT91TC_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); +#define CDEV2SOFTC(dev) ((dev)->si_drv1) + +/* helper routines */ +static int at91tc_activate(device_t dev); +static void at91tc_deactivate(device_t dev); +static void at91tc_counter_init(struct at91tc_softc *, struct at91tc_counter *, + int unit); + #ifdef AT91_TSC +static driver_intr_t at91tc_counter_isr; + static struct at91tc_counter *at91tc_tc; static unsigned @@ -104,14 +127,146 @@ static int at91tc_attach(device_t dev) { + struct at91tc_softc *sc = device_get_softc(dev); + int err, i; + + sc->dev = dev; + err = at91tc_activate(dev); + if (err) + goto out; + AT91TC_LOCK_INIT(sc); + + sc->tc[0].offset = TC_TC0_OFFSET; + sc->tc[1].offset = TC_TC1_OFFSET; + sc->tc[2].offset = TC_TC2_OFFSET; #ifdef AT91_TSC if (device_get_unit(dev) == 0) + // On the TSC board, we have 5MHz going into TIOA2. Setup + // TC1's XC1 to use this. + WR4sc(sc, TC_BMR, TC_BMR_XC1_TIOA2); +#endif + for (i = 0; i < MAX_COUNTER; i++) + at91tc_counter_init(sc, &sc->tc[i], i); +#ifdef AT91_TSC + if (device_get_unit(dev) == 0) { + // XXX need cdev + // Init our timecounter. + at91tc_tc = &sc->tc[0]; tc_init(&at91tc_timecounter); + } #endif +out:; + return (err); +} + +static int +at91tc_activate(device_t dev) +{ + struct at91tc_softc *sc; + int rid; + + sc = device_get_softc(dev); + rid = 0; + sc->mem_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, + RF_ACTIVE); + if (sc->mem_res == NULL) + goto errout; return (0); +errout:; + at91tc_deactivate(dev); + return (ENOMEM); } +static void +at91tc_tc_deactivate(struct at91tc_counter *tc) +{ + if (tc->intrhand) + bus_teardown_intr(tc->sc->dev, tc->irq_res, tc->intrhand); + tc->intrhand = 0; + if (tc->irq_res) + bus_release_resource(tc->sc->dev, SYS_RES_IRQ, + rman_get_rid(tc->irq_res), tc->irq_res); + tc->irq_res = 0; +} + +static void +at91tc_deactivate(device_t dev) +{ + struct at91tc_softc *sc; + int i; + + sc = device_get_softc(dev); + for (i = 0; i < MAX_COUNTER; i++) + at91tc_tc_deactivate(&sc->tc[i]); + bus_generic_detach(sc->dev); + if (sc->mem_res) + bus_release_resource(dev, SYS_RES_IOPORT, + rman_get_rid(sc->mem_res), sc->mem_res); + sc->mem_res = 0; + return; +} + +static void +at91tc_counter_init(struct at91tc_softc *sc, struct at91tc_counter *tc, + int unit) +{ +#ifdef AT91_TSC + int rid; +#endif + + tc->sc = sc; +#ifdef AT91_TSC + // Only TC1 is needed. All others are disabled. + if (unit != 1 || device_get_unit(sc->dev) != 0) { +#endif + WR4(tc, TC_CCR, TC_CCR_CLKDIS); + WR4(tc, TC_IDR, 0xffffffff); + return; +#ifdef AT91_TSC + } + + rid = 0; + tc->irq_res = bus_alloc_resource_any(sc->dev, SYS_RES_IRQ, &rid, + RF_ACTIVE); + if (tc->irq_res == NULL) + return; + if (bus_setup_intr(sc->dev, tc->irq_res, INTR_TYPE_MISC | INTR_FAST, + at91tc_counter_isr, tc, &tc->intrhand) != 0) + return; + + // Setup TC1 into Capture Mode (WAVE=0), clocked by our external + // 5MHz, loading RA on rise and RB on falling edge + WR4(tc, TC_CMR, TC_CMR_XC1 | TC_CMR_BURST_NONE | TC_CMR_ETRGEDG_NONE | + TC_CMR_LDRA_RISE | TC_CMR_LDRB_FALL); + + WR4(tc, TC_IDR, 0xffffffff); + WR4(tc, TC_IER, TC_SR_COVFS | TC_SR_LOVRS | TC_SR_LDRAS | TC_SR_LDRBS); + + // Now that we have ISR setup, we can enable clocks and go! + WR4(tc, TC_CCR, TC_CCR_SWTRG | TC_CCR_CLKEN); +#endif +} + +#ifdef AT91_TSC +static void +at91tc_counter_isr(void *argp) +{ + struct at91tc_counter *tc = argp; + uint32_t status; + + status = RD4(tc, TC_SR); + if (status & TC_SR_COVFS) + tc->sc->overflows++; + if (status & TC_SR_LOVRS) + printf("Didn't read RA or RB in time\n"); + if (status & TC_SR_LDRAS) + printf("RA loaded at 0x%x\n", RD4(tc, TC_RA) & 0xffff); + if (status & TC_SR_LDRBS) + printf("RB loaded at 0x%x\n", RD4(tc, TC_RB) & 0xffff); +} +#endif + static device_method_t at91tc_methods[] = { DEVMETHOD(device_probe, at91tc_probe), DEVMETHOD(device_attach, at91tc_attach), @@ -119,7 +274,7 @@ }; static driver_t at91tc_driver = { - "at91_st", + "at91_tc", at91tc_methods, sizeof(struct at91tc_softc), }; ==== //depot/projects/arm/src/sys/arm/at91/at91_tcreg.h#2 (text+ko) ==== @@ -96,7 +96,7 @@ #define TC_RB 0x18 /* RB: Register B */ #define TC_RC 0x1c /* RC: Register C */ #define TC_SR 0x20 /* SR: Status Register */ -#define TC_SR_COVRS 0x00001 /* Counter Overflow Status */ +#define TC_SR_COVFS 0x00001 /* Counter Overflow Status */ #define TC_SR_LOVRS 0x00002 /* Load Overrun Status */ #define TC_SR_CPAS 0x00004 /* RA Compare Status */ #define TC_SR_CPBS 0x00008 /* RB Compare Status */ From owner-p4-projects@FreeBSD.ORG Sat Jul 8 00:26:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F322816A4DF; Sat, 8 Jul 2006 00:26:03 +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 B803516A4DA for ; Sat, 8 Jul 2006 00:26:03 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5945543D49 for ; Sat, 8 Jul 2006 00:26:03 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k680Q3B6096459 for ; Sat, 8 Jul 2006 00:26:03 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k680Q2YZ096456 for perforce@freebsd.org; Sat, 8 Jul 2006 00:26:02 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 00:26:02 GMT Message-Id: <200607080026.k680Q2YZ096456@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100949 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 00:26:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=100949 Change 100949 by imp@imp_lighthouse on 2006/07/08 00:25:55 insipient spibus implementation. Affected files ... .. //depot/projects/arm/src/sys/arm/conf/TSC4370#3 edit .. //depot/projects/arm/src/sys/conf/files#33 edit .. //depot/projects/arm/src/sys/dev/spibus/spi.h#1 add .. //depot/projects/arm/src/sys/dev/spibus/spibus.c#1 add .. //depot/projects/arm/src/sys/dev/spibus/spibus_if.m#1 add .. //depot/projects/arm/src/sys/dev/spibus/spibusvar.h#1 add Differences ... ==== //depot/projects/arm/src/sys/arm/conf/TSC4370#3 (text+ko) ==== @@ -96,9 +96,12 @@ device mem # Memory and kernel memory devices device md device at91_twi # TWI: Two Wire Interface -device at91_spi # SPI: +device at91_spi # SPI bridge support device at91_ssc device at91_tc # iic device iic device iicbus +# SPI bus +device spibus +#device at45db642 # at45db642 and maybe others ==== //depot/projects/arm/src/sys/conf/files#33 (text+ko) ==== @@ -911,6 +911,9 @@ dev/sound/midi/mpufoi_if.m optional sound dev/sound/midi/sequencer.c optional sound dev/sound/midi/synth_if.m optional sound +dev/spibus/spibus.c optional spibus \ + dependency "spibus_if.h" +dev/spibus/spibus_if.m optional spibus dev/sr/if_sr.c optional sr dev/sr/if_sr_pci.c optional sr pci dev/stg/tmc18c30.c optional stg From owner-p4-projects@FreeBSD.ORG Sat Jul 8 00:52:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3921C16A4DF; Sat, 8 Jul 2006 00:52:37 +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 EE63216A4DD for ; Sat, 8 Jul 2006 00:52:36 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9E98D43D45 for ; Sat, 8 Jul 2006 00:52:36 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k680qaEe011547 for ; Sat, 8 Jul 2006 00:52:36 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k680qaOu011544 for perforce@freebsd.org; Sat, 8 Jul 2006 00:52:36 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 00:52:36 GMT Message-Id: <200607080052.k680qaOu011544@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100951 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 00:52:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=100951 Change 100951 by imp@imp_lighthouse on 2006/07/08 00:52:29 First cut at converting to new spibus Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_spi.c#4 edit .. //depot/projects/arm/src/sys/arm/at91/at91_spireg.h#4 edit .. //depot/projects/arm/src/sys/arm/at91/files.at91#9 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_spi.c#4 (text+ko) ==== @@ -39,7 +39,10 @@ #include #include -#include +#include + +#include +#include "spibus_if.h" struct at91_spi_softc { @@ -77,7 +80,6 @@ #define AT91_SPI_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); #define AT91_SPI_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); #define AT91_SPI_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); -#define CDEV2SOFTC(dev) ((dev)->si_drv1) static devclass_t at91_spi_devclass; @@ -86,25 +88,11 @@ static int at91_spi_probe(device_t dev); static int at91_spi_attach(device_t dev); static int at91_spi_detach(device_t dev); -static void at91_spi_intr(void *); /* helper routines */ static int at91_spi_activate(device_t dev); static void at91_spi_deactivate(device_t dev); -/* cdev routines */ -static d_open_t at91_spi_open; -static d_close_t at91_spi_close; -static d_ioctl_t at91_spi_ioctl; - -static struct cdevsw at91_spi_cdevsw = -{ - .d_version = D_VERSION, - .d_open = at91_spi_open, - .d_close = at91_spi_close, - .d_ioctl = at91_spi_ioctl -}; - static int at91_spi_probe(device_t dev) { @@ -125,32 +113,32 @@ AT91_SPI_LOCK_INIT(sc); - /* - * Activate the interrupt - */ - err = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_MISC | INTR_MPSAFE, - at91_spi_intr, sc, &sc->intrhand); - if (err) { - AT91_SPI_LOCK_DESTROY(sc); - goto out; - } - sc->cdev = make_dev(&at91_spi_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600, - "spi%d", device_get_unit(dev)); - if (sc->cdev == NULL) { - err = ENOMEM; - goto out; - } - sc->cdev->si_drv1 = sc; -#if 0 - /* init */ - sc->cwgr = SPI_CWGR_CKDIV(1) | - SPI_CWGR_CHDIV(SPI_CWGR_DIV(SPI_DEF_CLK)) | - SPI_CWGR_CLDIV(SPI_CWGR_DIV(SPI_DEF_CLK)); + // reset the SPI + WR4(sc, SPI_CR, SPI_CR_SWRST); + + WR4(sc, SPI_MR, (0xf << 24) | SPI_MR_MSTR | SPI_MR_MODFDIS | + (0xE << 16)); + + WR4(sc, SPI_CSR0, SPI_CSR_CPOL | (4 << 16) | (2 << 8)); + WR4(sc, SPI_CR, SPI_CR_SPIEN); + + WR4(sc, PDC_PTCR, PDC_PTCR_TXTDIS); + WR4(sc, PDC_PTCR, PDC_PTCR_RXTDIS); + WR4(sc, PDC_RNPR, 0); + WR4(sc, PDC_RNCR, 0); + WR4(sc, PDC_TNPR, 0); + WR4(sc, PDC_TNCR, 0); + WR4(sc, PDC_RPR, 0); + WR4(sc, PDC_RCR, 0); + WR4(sc, PDC_TPR, 0); + WR4(sc, PDC_TCR, 0); + WR4(sc, PDC_PTCR, PDC_PTCR_RXTEN); + WR4(sc, PDC_PTCR, PDC_PTCR_TXTEN); + RD4(sc, SPI_RDR); + RD4(sc, SPI_SR); - WR4(sc, SPI_CR, SPI_CR_SWRST); - WR4(sc, SPI_CR, SPI_CR_MSEN | SPI_CR_SVDIS); - WR4(sc, SPI_CWGR, sc->cwgr); -#endif + device_add_child(dev, "spibus", -1); + bus_generic_attach(dev); out:; if (err) at91_spi_deactivate(dev); @@ -207,230 +195,10 @@ return; } -static void -at91_spi_intr(void *xsc) -{ - struct at91_spi_softc *sc = xsc; -#if 0 - uint32_t status; - - /* Reading the status also clears the interrupt */ - status = RD4(sc, SPI_SR); - if (status == 0) - return; - AT91_SPI_LOCK(sc); - if (status & SPI_SR_RXRDY) - sc->flags |= RXRDY; - if (status & SPI_SR_TXCOMP) - sc->flags |= TXCOMP; - if (status & SPI_SR_TXRDY) - sc->flags |= TXRDY; - AT91_SPI_UNLOCK(sc); -#endif - wakeup(sc); - return; -} - -static int -at91_spi_open(struct cdev *dev, int oflags, int devtype, struct thread *td) -{ - struct at91_spi_softc *sc; - - sc = CDEV2SOFTC(dev); - AT91_SPI_LOCK(sc); - if (!(sc->flags & OPENED)) { - sc->flags |= OPENED; -#if 0 - WR4(sc, SPI_IER, SPI_SR_TXCOMP | SPI_SR_RXRDY | SPI_SR_TXRDY | - SPI_SR_OVRE | SPI_SR_UNRE | SPI_SR_NACK); -#endif - } - AT91_SPI_UNLOCK(sc); - return (0); -} - static int -at91_spi_close(struct cdev *dev, int fflag, int devtype, struct thread *td) +at91_spi_transfer(device_t dev, device_t child, struct spi_command *cmd) { - struct at91_spi_softc *sc; - - sc = CDEV2SOFTC(dev); - AT91_SPI_LOCK(sc); - sc->flags &= ~OPENED; -#if 0 - WR4(sc, SPI_IDR, SPI_SR_TXCOMP | SPI_SR_RXRDY | SPI_SR_TXRDY | - SPI_SR_OVRE | SPI_SR_UNRE | SPI_SR_NACK); -#endif - AT91_SPI_UNLOCK(sc); - return (0); -} - -static int -at91_spi_read_master(struct at91_spi_softc *sc, struct at91_spi_io *xfr) -{ -#if 1 - return ENOTTY; -#else - uint8_t *walker; - uint8_t buffer[256]; - size_t len; - int err = 0; - - if (xfr->xfer_len > sizeof(buffer)) - return (EINVAL); - walker = buffer; - len = xfr->xfer_len; - RD4(sc, SPI_RHR); - // Master mode, with the right address and interal addr size - WR4(sc, SPI_MMR, SPI_MMR_IADRSZ(xfr->iadrsz) | SPI_MMR_MREAD | - SPI_MMR_DADR(xfr->dadr)); - WR4(sc, SPI_IADR, xfr->iadr); - WR4(sc, SPI_CR, SPI_CR_START); - while (len-- > 1) { - while (!(sc->flags & RXRDY)) { - err = msleep(sc, &sc->sc_mtx, PZERO | PCATCH, "spird", - 0); - if (err) - return (err); - } - sc->flags &= ~RXRDY; - *walker++ = RD4(sc, SPI_RHR) & 0xff; - } - WR4(sc, SPI_CR, SPI_CR_STOP); - while (!(sc->flags & TXCOMP)) { - err = msleep(sc, &sc->sc_mtx, PZERO | PCATCH, "spird2", 0); - if (err) - return (err); - } - sc->flags &= ~TXCOMP; - *walker = RD4(sc, SPI_RHR) & 0xff; - if (xfr->xfer_buf) { - AT91_SPI_UNLOCK(sc); - err = copyout(buffer, xfr->xfer_buf, xfr->xfer_len); - AT91_SPI_LOCK(sc); - } - return (err); -#endif -} - -static int -at91_spi_write_master(struct at91_spi_softc *sc, struct at91_spi_io *xfr) -{ -#if 1 - return ENOTTY; -#else - uint8_t *walker; - uint8_t buffer[256]; - size_t len; - int err; - - if (xfr->xfer_len > sizeof(buffer)) - return (EINVAL); - walker = buffer; - len = xfr->xfer_len; - AT91_SPI_UNLOCK(sc); - err = copyin(xfr->xfer_buf, buffer, xfr->xfer_len); - AT91_SPI_LOCK(sc); - if (err) - return (err); - /* Setup the xfr for later readback */ - xfr->xfer_buf = 0; - xfr->xfer_len = 1; - while (len--) { - WR4(sc, SPI_MMR, SPI_MMR_IADRSZ(xfr->iadrsz) | SPI_MMR_MWRITE | - SPI_MMR_DADR(xfr->dadr)); - WR4(sc, SPI_IADR, xfr->iadr++); - WR4(sc, SPI_THR, *walker++); - WR4(sc, SPI_CR, SPI_CR_START); - /* - * If we get signal while waiting for TXRDY, make sure we - * try to stop this device - */ - while (!(sc->flags & TXRDY)) { - err = msleep(sc, &sc->sc_mtx, PZERO | PCATCH, "spiwr", - 0); - if (err) - break; - } - WR4(sc, SPI_CR, SPI_CR_STOP); - if (err) - return (err); - while (!(sc->flags & TXCOMP)) { - err = msleep(sc, &sc->sc_mtx, PZERO | PCATCH, "spiwr2", - 0); - if (err) - return (err); - } - /* Readback */ - at91_spi_read_master(sc, xfr); - } - return (err); -#endif -} - -static int -at91_spi_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int fflag, - struct thread *td) -{ - int err = 0; - struct at91_spi_softc *sc; - - sc = CDEV2SOFTC(dev); - AT91_SPI_LOCK(sc); - while (sc->flags & XFER_PENDING) { - err = msleep(sc, &sc->sc_mtx, PZERO | PCATCH, - "spiwait", 0); - if (err) { - AT91_SPI_UNLOCK(sc); - return (err); - } - } - sc->flags |= XFER_PENDING; - - switch (cmd) - { - case SPIIOCXFER: - { - struct at91_spi_io *xfr = (struct at91_spi_io *)data; - switch (xfr->type) - { - case SPI_IO_READ_MASTER: - err = at91_spi_read_master(sc, xfr); - break; - case SPI_IO_WRITE_MASTER: - err = at91_spi_write_master(sc, xfr); - break; - default: - err = EINVAL; - break; - } - break; - } - - case SPIIOCSETCLOCK: - { -#if 0 - struct at91_spi_clock *spick = (struct at91_spi_clock *)data; - - sc->cwgr = SPI_CWGR_CKDIV(spick->ckdiv) | - SPI_CWGR_CHDIV(SPI_CWGR_DIV(spick->high_rate)) | - SPI_CWGR_CLDIV(SPI_CWGR_DIV(spick->low_rate)); - WR4(sc, SPI_CR, SPI_CR_SWRST); - WR4(sc, SPI_CR, SPI_CR_MSEN | SPI_CR_SVDIS); - WR4(sc, SPI_CWGR, sc->cwgr); -#else - err = ENOTTY; -#endif - break; - } - default: - err = ENOTTY; - break; - } - sc->flags &= ~XFER_PENDING; - AT91_SPI_UNLOCK(sc); - wakeup(sc); - return err; + return EIO; } static device_method_t at91_spi_methods[] = { @@ -439,6 +207,8 @@ DEVMETHOD(device_attach, at91_spi_attach), DEVMETHOD(device_detach, at91_spi_detach), + /* spibus interface */ + DEVMETHOD(spibus_transfer, at91_spi_transfer), { 0, 0 } }; ==== //depot/projects/arm/src/sys/arm/at91/at91_spireg.h#4 (text+ko) ==== @@ -27,4 +27,23 @@ #ifndef ARM_AT91_AT91_SPIREG_H #define ARM_AT91_AT91_SPIREG_H +#define SPI_CR 0x00 /* CR: Control Register */ +#define SPI_CR_SPIEN 0x1 +#define SPI_CR_SPIDIS 0x2 +#define SPI_CR_SWRST 0x8 +#define SPI_MR 0x04 /* MR: Mode Register */ +#define SPI_MR_MSTR 0x01 +#define SPI_MR_MODFDIS 0x10 +#define SPI_RDR 0x08 /* RDR: Receive Data Register */ +#define SPI_TDR 0x0c /* TDR: Transmit Data Register */ +#define SPI_SR 0x10 /* SR: Status Register */ +#define SPI_IER 0x14 /* IER: Interrupt Enable Regsiter */ +#define SPI_IDR 0x18 /* IDR: Interrupt Disable Regsiter */ +#define SPI_IMR 0x1c /* IMR: Interrupt Mask Regsiter */ +#define SPI_CSR0 0x30 /* CS0: Chip Select 0 */ +#define SPI_CSR_CPOL 0x01 +#define SPI_CSR1 0x34 /* CS1: Chip Select 1 */ +#define SPI_CSR2 0x38 /* CS2: Chip Select 2 */ +#define SPI_CSR3 0x3c /* CS3: Chip Select 3 */ + #endif /* ARM_AT91_AT91_SPIREG_H */ ==== //depot/projects/arm/src/sys/arm/at91/files.at91#9 (text) ==== @@ -8,7 +8,8 @@ arm/at91/at91_pmc.c standard arm/at91/at91_rtc.c standard arm/at91/at91_ssc.c optional at91_ssc -arm/at91/at91_spi.c optional at91_spi +arm/at91/at91_spi.c optional at91_spi \ + dependency "spibus_if.h" arm/at91/at91_tc.c optional at91_tc arm/at91/at91_twi.c optional at91_twi arm/at91/at91_udp.c optional at91_udp From owner-p4-projects@FreeBSD.ORG Sat Jul 8 03:04:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0089F16A4DF; Sat, 8 Jul 2006 03:04: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 D06F516A4DA for ; Sat, 8 Jul 2006 03:04:40 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6787743D46 for ; Sat, 8 Jul 2006 03:04:40 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6834eBH081392 for ; Sat, 8 Jul 2006 03:04:40 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6834dHD081383 for perforce@freebsd.org; Sat, 8 Jul 2006 03:04:39 GMT (envelope-from jhb@freebsd.org) Date: Sat, 8 Jul 2006 03:04:39 GMT Message-Id: <200607080304.k6834dHD081383@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100954 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 03:04:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=100954 Change 100954 by jhb@jhb_mutex on 2006/07/08 03:03:42 - Use PTRIN() in a few places it wasn't being used. - Push the copyout of msg.msg_namelen out to the few places that need it to simplify the interface to kern_recvit() (we can now drop the namelenp arg). Affected files ... .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#38 edit .. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#32 edit .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#84 edit .. //depot/projects/smpng/sys/sys/syscallsubr.h#43 edit Differences ... ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#38 (text+ko) ==== @@ -1000,8 +1000,8 @@ error = freebsd32_copyinmsghdr(uap->msg, &msg); if (error) return (error); - error = freebsd32_copyiniov((struct iovec32 *)(uintptr_t)m32.msg_iov, - m32.msg_iovlen, &iov, EMSGSIZE); + error = freebsd32_copyiniov(PTRIN(m32.msg_iov), m32.msg_iovlen, &iov, + EMSGSIZE); if (error) return (error); msg.msg_flags = uap->flags; @@ -1009,7 +1009,7 @@ msg.msg_iov = iov; controlp = (msg.msg_control != NULL) ? &control : NULL; - error = kern_recvit(td, uap->s, &msg, NULL, UIO_USERSPACE, + error = kern_recvit(td, uap->s, &msg, UIO_USERSPACE, UIO_USERSPACE, controlp); if (error == 0) { msg.msg_iov = uiov; @@ -1086,8 +1086,8 @@ error = freebsd32_copyinmsghdr(uap->msg, &msg); if (error) return (error); - error = freebsd32_copyiniov((struct iovec32 *)(uintptr_t)m32.msg_iov, - m32.msg_iovlen, &iov, EMSGSIZE); + error = freebsd32_copyiniov(PTRIN(m32.msg_iov), m32.msg_iovlen, &iov, + EMSGSIZE); if (error) return (error); msg.msg_iov = iov; @@ -1135,24 +1135,26 @@ int error; if (uap->fromlenaddr) { - error = copyin((void *)(uintptr_t)uap->fromlenaddr, - &msg.msg_namelen, sizeof(msg.msg_namelen)); + error = copyin(PTRIN(uap->fromlenaddr), &msg.msg_namelen, + sizeof(msg.msg_namelen)); if (error) return (error); } else { msg.msg_namelen = 0; } - msg.msg_name = (void *)(uintptr_t)uap->from; + msg.msg_name = PTRIN(uap->from); msg.msg_iov = &aiov; msg.msg_iovlen = 1; - aiov.iov_base = (void *)(uintptr_t)uap->buf; + aiov.iov_base = PTRIN(uap->buf); aiov.iov_len = uap->len; msg.msg_control = 0; msg.msg_flags = uap->flags; - error = kern_recvit(td, uap->s, &msg, - (void *)(uintptr_t)uap->fromlenaddr, UIO_USERSPACE, UIO_USERSPACE, - NULL); + error = kern_recvit(td, uap->s, &msg, UIO_USERSPACE, + UIO_USERSPACE, NULL); + if (error == 0 && uap->fromlenaddr) + error = copyout(&msg.msg_namelen, PTRIN(uap->fromlenaddr), + sizeof (msg.msg_namelen)); return (error); } @@ -1611,14 +1613,14 @@ CP(hdtr32, hdtr, trl_cnt); if (hdtr.headers != NULL) { - iov32 = (struct iovec32 *)(uintptr_t)hdtr32.headers; + iov32 = PTRIN(hdtr32.headers); error = freebsd32_copyinuio(iov32, hdtr32.hdr_cnt, &hdr_uio); if (error) goto out; } if (hdtr.trailers != NULL) { - iov32 = (struct iovec32 *)(uintptr_t)hdtr32.trailers; + iov32 = PTRIN(hdtr32.trailers); error = freebsd32_copyinuio(iov32, hdtr32.trl_cnt, &trl_uio); if (error) ==== //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#32 (text+ko) ==== @@ -1859,7 +1859,7 @@ aiov.iov_len = dat.maxlen; msg.msg_flags = 0; - error = kern_recvit(td, uap->fd, &msg, NULL, UIO_USERSPACE, + error = kern_recvit(td, uap->fd, &msg, UIO_USERSPACE, UIO_SYSSPACE, NULL); if (error) { ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#84 (text+ko) ==== @@ -952,11 +952,10 @@ } int -kern_recvit(td, s, mp, namelenp, uioseg, fromseg, controlp) +kern_recvit(td, s, mp, uioseg, fromseg, controlp) struct thread *td; int s; struct msghdr *mp; - void *namelenp; enum uio_seg uioseg, fromseg; struct mbuf **controlp; { @@ -1055,15 +1054,6 @@ bcopy(fromsa, mp->msg_name, len); } mp->msg_namelen = len; - if (namelenp && - (error = copyout(&len, namelenp, sizeof (socklen_t)))) { -#ifdef COMPAT_OLDSOCK - if (mp->msg_flags & MSG_COMPAT) - error = 0; /* old recvfrom didn't check */ - else -#endif - goto out; - } } if (mp->msg_control && controlp == NULL) { #ifdef COMPAT_OLDSOCK @@ -1132,9 +1122,19 @@ struct msghdr *mp; void *namelenp; { + int error; - return (kern_recvit(td, s, mp, namelenp, UIO_USERSPACE, UIO_USERSPACE, - NULL)); + error = kern_recvit(td, s, mp, UIO_USERSPACE, UIO_USERSPACE, NULL); + if (error) + return (error); + if (namelenp) { + error = copyout(&mp->msg_namelen, namelenp, sizeof (socklen_t)); +#ifdef COMPAT_OLDSOCK + if (mp->msg_flags & MSG_COMPAT) + error = 0; /* old recvfrom didn't check */ +#endif + } + return (error); } /* ==== //depot/projects/smpng/sys/sys/syscallsubr.h#43 (text+ko) ==== @@ -126,8 +126,7 @@ char *buf, enum uio_seg bufseg, int count); int kern_readv(struct thread *td, int fd, struct uio *auio); int kern_recvit(struct thread *td, int s, struct msghdr *mp, - void *namelenp, enum uio_seg uioseg, enum uio_seg fromseg, - struct mbuf **controlp); + enum uio_seg uioseg, enum uio_seg fromseg, struct mbuf **controlp); int kern_rename(struct thread *td, char *from, char *to, enum uio_seg pathseg); int kern_rmdir(struct thread *td, char *path, enum uio_seg pathseg); From owner-p4-projects@FreeBSD.ORG Sat Jul 8 03:16:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EB73416A4E1; Sat, 8 Jul 2006 03:16:56 +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 AD5DE16A4DA for ; Sat, 8 Jul 2006 03:16:56 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 64ADF43D45 for ; Sat, 8 Jul 2006 03:16:56 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k683GuPa086335 for ; Sat, 8 Jul 2006 03:16:56 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k683GuRv086329 for perforce@freebsd.org; Sat, 8 Jul 2006 03:16:56 GMT (envelope-from jhb@freebsd.org) Date: Sat, 8 Jul 2006 03:16:56 GMT Message-Id: <200607080316.k683GuRv086329@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100956 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 03:16:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=100956 Change 100956 by jhb@jhb_mutex on 2006/07/08 03:16:17 Tidy. Affected files ... .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#39 edit Differences ... ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#39 (text+ko) ==== @@ -1148,7 +1148,7 @@ msg.msg_iovlen = 1; aiov.iov_base = PTRIN(uap->buf); aiov.iov_len = uap->len; - msg.msg_control = 0; + msg.msg_control = NULL; msg.msg_flags = uap->flags; error = kern_recvit(td, uap->s, &msg, UIO_USERSPACE, UIO_USERSPACE, NULL); From owner-p4-projects@FreeBSD.ORG Sat Jul 8 03:26:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 008E416A4E1; Sat, 8 Jul 2006 03:26:08 +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 8EE4816A4E0 for ; Sat, 8 Jul 2006 03:26:08 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3DB3B43D58 for ; Sat, 8 Jul 2006 03:26:08 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k683Q8If088491 for ; Sat, 8 Jul 2006 03:26:08 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k683Q7Nl088485 for perforce@freebsd.org; Sat, 8 Jul 2006 03:26:07 GMT (envelope-from jhb@freebsd.org) Date: Sat, 8 Jul 2006 03:26:07 GMT Message-Id: <200607080326.k683Q7Nl088485@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 100957 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 03:26:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=100957 Change 100957 by jhb@jhb_mutex on 2006/07/08 03:25:09 Drop the uioseg arg from kern_recvit() and hardcode it instead since it's always USER_UIOSPACE. Affected files ... .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#40 edit .. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#33 edit .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#85 edit .. //depot/projects/smpng/sys/sys/syscallsubr.h#44 edit Differences ... ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#40 (text+ko) ==== @@ -1009,8 +1009,7 @@ msg.msg_iov = iov; controlp = (msg.msg_control != NULL) ? &control : NULL; - error = kern_recvit(td, uap->s, &msg, UIO_USERSPACE, - UIO_USERSPACE, controlp); + error = kern_recvit(td, uap->s, &msg, UIO_USERSPACE, controlp); if (error == 0) { msg.msg_iov = uiov; @@ -1150,8 +1149,7 @@ aiov.iov_len = uap->len; msg.msg_control = NULL; msg.msg_flags = uap->flags; - error = kern_recvit(td, uap->s, &msg, UIO_USERSPACE, - UIO_USERSPACE, NULL); + error = kern_recvit(td, uap->s, &msg, UIO_USERSPACE, NULL); if (error == 0 && uap->fromlenaddr) error = copyout(&msg.msg_namelen, PTRIN(uap->fromlenaddr), sizeof (msg.msg_namelen)); ==== //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#33 (text+ko) ==== @@ -1859,8 +1859,7 @@ aiov.iov_len = dat.maxlen; msg.msg_flags = 0; - error = kern_recvit(td, uap->fd, &msg, UIO_USERSPACE, - UIO_SYSSPACE, NULL); + error = kern_recvit(td, uap->fd, &msg, UIO_SYSSPACE, NULL); if (error) { DPRINTF(("getmsg: recvit failed %d\n", error)); ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#85 (text+ko) ==== @@ -952,11 +952,11 @@ } int -kern_recvit(td, s, mp, uioseg, fromseg, controlp) +kern_recvit(td, s, mp, fromseg, controlp) struct thread *td; int s; struct msghdr *mp; - enum uio_seg uioseg, fromseg; + enum uio_seg fromseg; struct mbuf **controlp; { struct uio auio; @@ -997,7 +997,7 @@ auio.uio_iov = mp->msg_iov; auio.uio_iovcnt = mp->msg_iovlen; - auio.uio_segflg = uioseg; + auio.uio_segflg = UIO_USERSPACE; auio.uio_rw = UIO_READ; auio.uio_td = td; auio.uio_offset = 0; /* XXX */ @@ -1124,7 +1124,7 @@ { int error; - error = kern_recvit(td, s, mp, UIO_USERSPACE, UIO_USERSPACE, NULL); + error = kern_recvit(td, s, mp, UIO_USERSPACE, NULL); if (error) return (error); if (namelenp) { ==== //depot/projects/smpng/sys/sys/syscallsubr.h#44 (text+ko) ==== @@ -126,7 +126,7 @@ char *buf, enum uio_seg bufseg, int count); int kern_readv(struct thread *td, int fd, struct uio *auio); int kern_recvit(struct thread *td, int s, struct msghdr *mp, - enum uio_seg uioseg, enum uio_seg fromseg, struct mbuf **controlp); + enum uio_seg fromseg, struct mbuf **controlp); int kern_rename(struct thread *td, char *from, char *to, enum uio_seg pathseg); int kern_rmdir(struct thread *td, char *path, enum uio_seg pathseg); From owner-p4-projects@FreeBSD.ORG Sat Jul 8 07:40:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A3AC616A4E2; Sat, 8 Jul 2006 07:40:22 +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 7861416A4E0 for ; Sat, 8 Jul 2006 07:40:22 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1E5DD43D45 for ; Sat, 8 Jul 2006 07:40:22 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k687eLq0080907 for ; Sat, 8 Jul 2006 07:40:22 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k687eLPh080895 for perforce@freebsd.org; Sat, 8 Jul 2006 07:40:21 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 07:40:21 GMT Message-Id: <200607080740.k687eLPh080895@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100965 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 07:40:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=100965 Change 100965 by imp@imp_lighthouse on 2006/07/08 07:39:39 Fix style to match other at91 drivers. I oopsed. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_tc.c#3 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_tc.c#3 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2005 Olivier Houchard. All rights reserved. + * Copyright (c) 2006 M. Warner Losh. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -25,7 +25,7 @@ #include "opt_at91.h" #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_st.c,v 1.3 2006/05/13 23:41:15 cognet Exp $"); +__FBSDID("$FreeBSD$"); #include #include @@ -46,21 +46,21 @@ #include #include -struct at91tc_softc; +struct at91_tc_softc; #define MAX_COUNTER 3 -struct at91tc_counter { +struct at91_tc_counter { void *intrhand; /* Interrupt handle */ struct resource *irq_res; /* IRQ resource */ - struct at91tc_softc *sc; + struct at91_tc_softc *sc; bus_size_t offset; }; -struct at91tc_softc { +struct at91_tc_softc { struct resource *mem_res; /* Memory resource */ device_t dev; - struct at91tc_counter tc[MAX_COUNTER]; + struct at91_tc_counter tc[MAX_COUNTER]; struct mtx sc_mtx; /* basically a perimeter lock */ struct cdev *cdev; int overflows; @@ -75,36 +75,36 @@ #define WR4sc(sc, off, val) \ bus_write_4(sc->mem_res, (off), (val)) -#define AT91TC_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) -#define AT91TC_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) -#define AT91TC_LOCK_INIT(_sc) \ +#define AT91_TC_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) +#define AT91_TC_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) +#define AT91_TC_LOCK_INIT(_sc) \ mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->dev), \ "tc", MTX_DEF) -#define AT91TC_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); -#define AT91TC_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); -#define AT91TC_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); +#define AT91_TC_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); +#define AT91_TC_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); +#define AT91_TC_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); #define CDEV2SOFTC(dev) ((dev)->si_drv1) /* helper routines */ -static int at91tc_activate(device_t dev); -static void at91tc_deactivate(device_t dev); -static void at91tc_counter_init(struct at91tc_softc *, struct at91tc_counter *, +static int at91_tc_activate(device_t dev); +static void at91_tc_deactivate(device_t dev); +static void at91_tc_counter_init(struct at91_tc_softc *, struct at91_tc_counter *, int unit); #ifdef AT91_TSC -static driver_intr_t at91tc_counter_isr; +static driver_intr_t at91_tc_counter_isr; -static struct at91tc_counter *at91tc_tc; +static struct at91_tc_counter *at91_tc_tc; static unsigned -at91tc_get_timecount(struct timecounter *tc) +at91_tc_get_timecount(struct timecounter *tc) { - return (RD4(at91tc_tc, TC_CV)); + return (RD4(at91_tc_tc, TC_CV)); } -static struct timecounter at91tc_timecounter = { - at91tc_get_timecount, /* get_timecount */ +static struct timecounter at91_tc_timecounter = { + at91_tc_get_timecount, /* get_timecount */ NULL, /* no poll_pps */ 0xfffffu, /* counter_mask */ 5000000, /* frequency */ @@ -114,7 +114,7 @@ #endif static int -at91tc_probe(device_t dev) +at91_tc_probe(device_t dev) { if (device_get_unit(dev) == 0) @@ -125,16 +125,16 @@ } static int -at91tc_attach(device_t dev) +at91_tc_attach(device_t dev) { - struct at91tc_softc *sc = device_get_softc(dev); + struct at91_tc_softc *sc = device_get_softc(dev); int err, i; sc->dev = dev; - err = at91tc_activate(dev); + err = at91_tc_activate(dev); if (err) goto out; - AT91TC_LOCK_INIT(sc); + AT91_TC_LOCK_INIT(sc); sc->tc[0].offset = TC_TC0_OFFSET; sc->tc[1].offset = TC_TC1_OFFSET; @@ -147,13 +147,13 @@ WR4sc(sc, TC_BMR, TC_BMR_XC1_TIOA2); #endif for (i = 0; i < MAX_COUNTER; i++) - at91tc_counter_init(sc, &sc->tc[i], i); + at91_tc_counter_init(sc, &sc->tc[i], i); #ifdef AT91_TSC if (device_get_unit(dev) == 0) { // XXX need cdev // Init our timecounter. - at91tc_tc = &sc->tc[0]; - tc_init(&at91tc_timecounter); + at91_tc_tc = &sc->tc[0]; + tc_init(&at91_tc_timecounter); } #endif out:; @@ -161,9 +161,9 @@ } static int -at91tc_activate(device_t dev) +at91_tc_activate(device_t dev) { - struct at91tc_softc *sc; + struct at91_tc_softc *sc; int rid; sc = device_get_softc(dev); @@ -174,12 +174,12 @@ goto errout; return (0); errout:; - at91tc_deactivate(dev); + at91_tc_deactivate(dev); return (ENOMEM); } static void -at91tc_tc_deactivate(struct at91tc_counter *tc) +at91_tc_tc_deactivate(struct at91_tc_counter *tc) { if (tc->intrhand) bus_teardown_intr(tc->sc->dev, tc->irq_res, tc->intrhand); @@ -191,14 +191,14 @@ } static void -at91tc_deactivate(device_t dev) +at91_tc_deactivate(device_t dev) { - struct at91tc_softc *sc; + struct at91_tc_softc *sc; int i; sc = device_get_softc(dev); for (i = 0; i < MAX_COUNTER; i++) - at91tc_tc_deactivate(&sc->tc[i]); + at91_tc_tc_deactivate(&sc->tc[i]); bus_generic_detach(sc->dev); if (sc->mem_res) bus_release_resource(dev, SYS_RES_IOPORT, @@ -208,7 +208,7 @@ } static void -at91tc_counter_init(struct at91tc_softc *sc, struct at91tc_counter *tc, +at91_tc_counter_init(struct at91_tc_softc *sc, struct at91_tc_counter *tc, int unit) { #ifdef AT91_TSC @@ -232,7 +232,7 @@ if (tc->irq_res == NULL) return; if (bus_setup_intr(sc->dev, tc->irq_res, INTR_TYPE_MISC | INTR_FAST, - at91tc_counter_isr, tc, &tc->intrhand) != 0) + at91_tc_counter_isr, tc, &tc->intrhand) != 0) return; // Setup TC1 into Capture Mode (WAVE=0), clocked by our external @@ -250,9 +250,9 @@ #ifdef AT91_TSC static void -at91tc_counter_isr(void *argp) +at91_tc_counter_isr(void *argp) { - struct at91tc_counter *tc = argp; + struct at91_tc_counter *tc = argp; uint32_t status; status = RD4(tc, TC_SR); @@ -267,17 +267,17 @@ } #endif -static device_method_t at91tc_methods[] = { - DEVMETHOD(device_probe, at91tc_probe), - DEVMETHOD(device_attach, at91tc_attach), +static device_method_t at91_tc_methods[] = { + DEVMETHOD(device_probe, at91_tc_probe), + DEVMETHOD(device_attach, at91_tc_attach), {0, 0}, }; -static driver_t at91tc_driver = { +static driver_t at91_tc_driver = { "at91_tc", - at91tc_methods, - sizeof(struct at91tc_softc), + at91_tc_methods, + sizeof(struct at91_tc_softc), }; -static devclass_t at91tc_devclass; +static devclass_t at91_tc_devclass; -DRIVER_MODULE(at91_st, atmelarm, at91tc_driver, at91tc_devclass, 0, 0); +DRIVER_MODULE(at91_tc, atmelarm, at91_tc_driver, at91_tc_devclass, 0, 0); From owner-p4-projects@FreeBSD.ORG Sat Jul 8 07:47:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9AC2A16A4E0; Sat, 8 Jul 2006 07:47:34 +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 633E016A4DE for ; Sat, 8 Jul 2006 07:47:34 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D12643D77 for ; Sat, 8 Jul 2006 07:47:31 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k687lVeM085759 for ; Sat, 8 Jul 2006 07:47:31 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k687lUZh085753 for perforce@freebsd.org; Sat, 8 Jul 2006 07:47:30 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 07:47:30 GMT Message-Id: <200607080747.k687lUZh085753@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100966 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 07:47:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100966 Change 100966 by imp@imp_lighthouse on 2006/07/08 07:46:42 Deck chairs Also, make quality of this time counter reflect the underlying quality of the oscillator. It is easily 20k times better than the cheapo 32k xtal that's feeding the SCLK that the other timecounter has. Alas, this source of time is available only on our expensive gear... Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_tc.c#4 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_tc.c#4 (text+ko) ==== @@ -78,14 +78,11 @@ #define AT91_TC_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) #define AT91_TC_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) #define AT91_TC_LOCK_INIT(_sc) \ - mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->dev), \ - "tc", MTX_DEF) + mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->dev), "tc", MTX_DEF) #define AT91_TC_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); #define AT91_TC_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); #define AT91_TC_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); -#define CDEV2SOFTC(dev) ((dev)->si_drv1) - /* helper routines */ static int at91_tc_activate(device_t dev); static void at91_tc_deactivate(device_t dev); @@ -109,7 +106,7 @@ 0xfffffu, /* counter_mask */ 5000000, /* frequency */ "5MHz", /* name */ - -20 /* quality */ + 20000 /* quality */ }; #endif From owner-p4-projects@FreeBSD.ORG Sat Jul 8 08:16:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7B30616A4DE; Sat, 8 Jul 2006 08:16:07 +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 51F1716A4DA for ; Sat, 8 Jul 2006 08:16:07 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1FB9F43D49 for ; Sat, 8 Jul 2006 08:16:07 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k688G6jS004438 for ; Sat, 8 Jul 2006 08:16:07 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k688G6Gt004432 for perforce@freebsd.org; Sat, 8 Jul 2006 08:16:06 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 08:16:06 GMT Message-Id: <200607080816.k688G6Gt004432@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 100968 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 08:16:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=100968 Change 100968 by imp@imp_lighthouse on 2006/07/08 08:15:16 Get started on at45db642 Affected files ... .. //depot/projects/arm/src/sys/arm/conf/TSC4370#4 edit .. //depot/projects/arm/src/sys/conf/files#34 edit .. //depot/projects/arm/src/sys/dev/flash/at45db642.c#1 add Differences ... ==== //depot/projects/arm/src/sys/arm/conf/TSC4370#4 (text+ko) ==== @@ -104,4 +104,4 @@ device iicbus # SPI bus device spibus -#device at45db642 # at45db642 and maybe others +device at45db642 # at45db642 and maybe others ==== //depot/projects/arm/src/sys/conf/files#34 (text+ko) ==== @@ -607,6 +607,7 @@ dev/firewire/if_fwip.c optional fwip dev/firewire/sbp.c optional sbp dev/firewire/sbp_targ.c optional sbp_targ +dev/flash/at45db642.c optional at45db642 dev/fxp/if_fxp.c optional fxp dev/gem/if_gem.c optional gem dev/gem/if_gem_pci.c optional gem pci From owner-p4-projects@FreeBSD.ORG Sat Jul 8 09:09:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B00EB16A4E0; Sat, 8 Jul 2006 09:09:15 +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 5D21316A4DA for ; Sat, 8 Jul 2006 09:09:15 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0829A43D49 for ; Sat, 8 Jul 2006 09:09:15 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6899F19044131 for ; Sat, 8 Jul 2006 09:09:15 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6899EJf044122 for perforce@freebsd.org; Sat, 8 Jul 2006 09:09:14 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 8 Jul 2006 09:09:14 GMT Message-Id: <200607080909.k6899EJf044122@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100971 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 09:09:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=100971 Change 100971 by hselasky@hselasky_mini_itx on 2006/07/08 09:09:13 All USB hosts controllers now allocate DMA-able memory in chunks of PAGE_SIZE bytes. This should allow the USB system to operate also when then host memory becomes fragmented. There are alot of changes. Please test. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/ehci.c#6 edit .. //depot/projects/usb/src/sys/dev/usb/ehci.h#3 edit .. //depot/projects/usb/src/sys/dev/usb/ehci_pci.c#5 edit .. //depot/projects/usb/src/sys/dev/usb/ohci.c#6 edit .. //depot/projects/usb/src/sys/dev/usb/ohci.h#3 edit .. //depot/projects/usb/src/sys/dev/usb/ohci_pci.c#5 edit .. //depot/projects/usb/src/sys/dev/usb/uhci.c#6 edit .. //depot/projects/usb/src/sys/dev/usb/uhci.h#3 edit .. //depot/projects/usb/src/sys/dev/usb/uhci_pci.c#5 edit .. //depot/projects/usb/src/sys/dev/usb/usb.c#5 edit .. //depot/projects/usb/src/sys/dev/usb/usb.h#4 edit .. //depot/projects/usb/src/sys/dev/usb/usb_port.h#5 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.c#7 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#11 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#6 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/ehci.c#6 (text+ko) ==== @@ -60,8 +60,6 @@ #include #include -#include /* bus_space_xxx() */ - #define INCLUDE_PCIXXX_H #include @@ -671,11 +669,11 @@ static void ehci_dump_sqtds(ehci_qtd_t *sqtd) { - int i; + u_int16_t i; u_int32_t stop; stop = 0; - for(i = 0; sqtd && (i < 20) && !stop; sqtd = sqtd->next, i++) + for(i = 0; sqtd && (i < 20) && !stop; sqtd = sqtd->obj_next, i++) { ehci_dump_sqtd(sqtd); stop = sqtd->qtd_next & htole32(EHCI_LINK_TERMINATE); @@ -987,7 +985,7 @@ /* the transfer is done, compute actual length and status */ for (; td != NULL; - td = td->next) + td = ((td == xfer->td_transfer_last) ? NULL : td->obj_next)) { if(td->qtd_status & htole32(EHCI_QTD_ACTIVE)) { @@ -1123,7 +1121,7 @@ for(td = xfer->td_transfer_first; td != NULL; - td = td->next) + td = ((td == xfer->td_transfer_last) ? NULL : td->obj_next)) { u_int32_t status; @@ -1403,7 +1401,7 @@ if((xfer)->interrupt_list.le_prev) { LIST_REMOVE((xfer), interrupt_list); - (xfer)->interrupt_list.le_prev = 0; + (xfer)->interrupt_list.le_prev = NULL; } return; } @@ -1411,19 +1409,20 @@ static void ehci_setup_standard_chain(struct usbd_xfer *xfer, ehci_qh_t **qh_last) { + struct usbd_page_search buf_res; /* the EHCI hardware can handle at most five 4k crossing per TD */ - u_int32_t average = ((unsigned)(EHCI_PAGE_SIZE / xfer->max_packet_size)) - * xfer->max_packet_size; + u_int32_t average = (EHCI_PAGE_SIZE - (EHCI_PAGE_SIZE % + xfer->max_packet_size)); u_int32_t qtd_status; - u_int32_t physbuffer = xfer->physbuffer; + u_int32_t buf_offset; u_int32_t len = xfer->length; u_int32_t c_error = (xfer->udev->speed == USB_SPEED_HIGH) ? 0 : htole32(EHCI_QTD_SET_CERR(3)); u_int8_t isread; u_int8_t shortpkt = 0; - ehci_qtd_t *td; + ehci_qtd_t *td_last = NULL; ehci_qh_t *qh; DPRINTFN(8, ("addr=%d endpt=%d len=%d speed=%d\n", @@ -1432,41 +1431,43 @@ td = (xfer->td_transfer_first = xfer->td_start); + buf_offset = 0; + usbd_get_page(&(xfer->buf_data), buf_offset, &buf_res); + if(xfer->pipe->methods == &ehci_device_ctrl_methods) { - isread = ((usb_device_request_t *)(xfer->buffer))-> - bmRequestType & UT_READ; + /* the first byte is "bmRequestType" */ + + isread = *((u_int8_t *)(buf_res.buffer)); + isread &= UT_READ; - /* xfer->length = sizeof(usb_device_request_t) + - * UGETW(req->wLength) - * check length ?? + /* + * check length ? */ xfer->pipe->toggle_next = 1; /* SETUP message */ - td->next = (td+1); - td->qtd_next = (td+1)->qtd_self; - td->qtd_altnext = htole32(EHCI_LINK_TERMINATE); - td->qtd_status = c_error | htole32 (EHCI_QTD_ACTIVE | EHCI_QTD_SET_PID(EHCI_QTD_PID_SETUP) | EHCI_QTD_SET_TOGGLE(0) | EHCI_QTD_SET_BYTES(sizeof(usb_device_request_t))); - td->qtd_buffer[0] = htole32(physbuffer); + td->qtd_buffer[0] = htole32(buf_res.physaddr); td->qtd_buffer_hi[0] = 0; + + buf_offset += sizeof(usb_device_request_t); + usbd_get_page(&(xfer->buf_data), buf_offset, &buf_res); + td->qtd_buffer[1] = - htole32(physbuffer + sizeof(usb_device_request_t)) & - htole32(~0xfff); + htole32(buf_res.physaddr & (~0xFFF)); td->qtd_buffer_hi[1] = 0; td->len = sizeof(usb_device_request_t); - - physbuffer += sizeof(usb_device_request_t); len -= sizeof(usb_device_request_t); - td++; + td_last = td; + td = td->obj_next; } else { @@ -1474,8 +1475,8 @@ if(xfer->length == 0) { - /* must allow access to (td-1), - * so xfer->length cannot be zero + /* must allow access to "td_last", + * so xfer->length cannot be zero! */ printf("%s: setting USBD_FORCE_SHORT_XFER!\n", __FUNCTION__); @@ -1524,27 +1525,33 @@ average = len; } - if(((void *)td) >= xfer->td_end) + if(td == NULL) { panic("%s: software wants to write more data " "than there is in the buffer!", __FUNCTION__); } - /* fill out TD */ + /* link in last TD */ - td->next = (td+1); - td->qtd_next = (td+1)->qtd_self; + if (td_last) { + td_last->qtd_next = td->qtd_self; + /* short transfers should terminate the transfer: */ + td_last->qtd_altnext = htole32(EHCI_LINK_TERMINATE); + } - /* short transfers should terminate the transfer: */ - td->qtd_altnext = htole32(EHCI_LINK_TERMINATE); + /* fill out current TD */ td->qtd_status = qtd_status | htole32(EHCI_QTD_SET_BYTES(average)); - td->qtd_buffer[0] = htole32(physbuffer); + td->qtd_buffer[0] = htole32(buf_res.physaddr); td->qtd_buffer_hi[0] = 0; + + buf_offset += average; + usbd_get_page(&(xfer->buf_data), buf_offset, &buf_res); + td->qtd_buffer[1] = - htole32(physbuffer + average) & htole32(~0xfff); + htole32(buf_res.physaddr & (~0xFFF)); td->qtd_buffer_hi[1] = 0; td->len = average; @@ -1562,13 +1569,19 @@ qtd_status ^= htole32(EHCI_QTD_TOGGLE_MASK); } - physbuffer += average; len -= average; - td++; + td_last = td; + td = td->obj_next; } if(xfer->pipe->methods == &ehci_device_ctrl_methods) { + /* link in last TD */ + + td_last->qtd_next = td->qtd_self; + /* short transfers should terminate the transfer: */ + td_last->qtd_altnext = htole32(EHCI_LINK_TERMINATE); + /* STATUS message */ td->qtd_status = c_error | (isread ? @@ -1586,26 +1599,17 @@ td->qtd_buffer[0] = 0; td->qtd_buffer_hi[0] = 0; - td->next = NULL; - td->qtd_next = htole32(EHCI_LINK_TERMINATE); - td->qtd_altnext = htole32(EHCI_LINK_TERMINATE); td->len = 0; + td_last = td; + } - physbuffer += 0; - len -= 0; - td++; - } - else - { - (td-1)->next = NULL; - (td-1)->qtd_next = htole32(EHCI_LINK_TERMINATE); - (td-1)->qtd_altnext = htole32(EHCI_LINK_TERMINATE); - (td-1)->qtd_status |= htole32(EHCI_QTD_IOC); - } + td_last->qtd_next = htole32(EHCI_LINK_TERMINATE); + td_last->qtd_altnext = htole32(EHCI_LINK_TERMINATE); + td_last->qtd_status |= htole32(EHCI_QTD_IOC); /* must have at least one frame! */ - xfer->td_transfer_last = (td-1); + xfer->td_transfer_last = td_last; #ifdef USB_DEBUG if(ehcidebug > 8) @@ -1615,9 +1619,11 @@ ehci_dump_sqtds(xfer->td_start); } #endif + qh = xfer->qh_start; - /* qh_link filled when the QH is added */ + /* the "qh_link" field is filled when the QH is added */ + qh->qh_endp = htole32 (EHCI_QH_SET_ADDR(xfer->address) | EHCI_QH_SET_ENDPT(UE_GET_ADDR(xfer->endpoint)) | @@ -1626,8 +1632,6 @@ EHCI_QH_SET_NRL(8) /* XXX */ ); - /* XXX have data toogle in qh */ - switch (xfer->udev->speed) { case USB_SPEED_LOW: qh->qh_endp |= htole32(EHCI_QH_SET_EPS(EHCI_QH_SPEED_LOW)| @@ -1683,26 +1687,35 @@ static void ehci_root_intr_done(ehci_softc_t *sc, struct usbd_xfer *xfer) { + struct usbd_page_search buf_res; u_int8_t *p; - int i, m; + u_int16_t i; + u_int16_t m; if(sc->sc_intrxfer) { /* disable further interrupts */ sc->sc_intrxfer = NULL; - p = xfer->buffer; - m = min(sc->sc_noport, (xfer->length * 8) - 1); - memset(p, 0, xfer->length); - for(i = 1; i <= m; i++) + /* clear all bits */ + usbd_bzero(&(xfer->buf_data), 0, xfer->length); + + /* set bits */ + m = (xfer->length * 8); + i = (sc->sc_noport + 1); + m = min(m,i); + for(i = 1; i < m; i++) { /* pick out CHANGE bits from the status register */ if(EOREAD4(sc, EHCI_PORTSC(i)) & EHCI_PS_CLEAR) { - p[i/8] |= 1 << (i%8); + usbd_get_page(&(xfer->buf_data), i/8, &buf_res); + p = buf_res.buffer; + *p |= 1 << (i % 8); + + DPRINTF(("port %d changed\n", i)); } } - DPRINTF(("change=0x%02x\n", *p)); xfer->actlen = xfer->length; } return; @@ -1724,9 +1737,10 @@ while(nframes--) { - if(((void *)td) >= xfer->td_end) + if(td == NULL) { - td = xfer->td_start; + panic("%s:%d: out of TD's\n", + __FUNCTION__, __LINE__); } if(pp_last >= &sc->sc_isoc_fs_p_last[EHCI_VIRTUAL_FRAMELIST_COUNT]) @@ -1766,7 +1780,7 @@ pp_last++; plen++; - td++; + td = td->obj_next; } xfer->actlen = actlen; @@ -1790,9 +1804,10 @@ while(nframes--) { - if(((void *)td) >= xfer->td_end) + if(td == NULL) { - td = xfer->td_start; + panic("%s:%d: out of TD's\n", + __FUNCTION__, __LINE__); } if(pp_last >= &sc->sc_isoc_hs_p_last[EHCI_VIRTUAL_FRAMELIST_COUNT]) @@ -1836,7 +1851,7 @@ pp_last++; td_no = 0; - td++; + td = td->obj_next; } } xfer->actlen = actlen; @@ -1915,8 +1930,8 @@ } } - xfer->td_transfer_first = 0; - xfer->td_transfer_last = 0; + xfer->td_transfer_first = NULL; + xfer->td_transfer_last = NULL; } /* finish root interrupt transfer @@ -2044,6 +2059,8 @@ .close = ehci_device_bulk_close, .enter = ehci_device_bulk_enter, .start = ehci_device_bulk_start, + .copy_in = usbd_std_bulk_intr_copy_in, + .copy_out = usbd_std_bulk_intr_copy_out, }; /*---------------------------------------------------------------------------* @@ -2075,15 +2092,6 @@ { ehci_softc_t *sc = xfer->usb_sc; - DPRINTFN(3,("type=0x%02x, request=0x%02x, " - "wValue=0x%04x, wIndex=0x%04x len=%d, addr=%d, endpt=%d\n", - ((usb_device_request_t *)(xfer->buffer))->bmRequestType, - ((usb_device_request_t *)(xfer->buffer))->bRequest, - UGETW(((usb_device_request_t *)(xfer->buffer))->wValue), - UGETW(((usb_device_request_t *)(xfer->buffer))->wIndex), - UGETW(((usb_device_request_t *)(xfer->buffer))->wLength), - xfer->address, xfer->endpoint)); - /* setup TD's and QH */ ehci_setup_standard_chain(xfer, &sc->sc_async_p_last); @@ -2104,6 +2112,8 @@ .close = ehci_device_ctrl_close, .enter = ehci_device_ctrl_enter, .start = ehci_device_ctrl_start, + .copy_in = usbd_std_ctrl_copy_in, + .copy_out = usbd_std_ctrl_copy_out, }; /*---------------------------------------------------------------------------* @@ -2194,6 +2204,8 @@ .close = ehci_device_intr_close, .enter = ehci_device_intr_enter, .start = ehci_device_intr_start, + .copy_in = usbd_std_bulk_intr_copy_in, + .copy_out = usbd_std_bulk_intr_copy_out, }; /*---------------------------------------------------------------------------* @@ -2225,9 +2237,7 @@ /* initialize all TD's */ - for(td = xfer->td_start; - ((void *)td) < xfer->td_end; - td++) + for(td = xfer->td_start; td; td = td->obj_next) { td->sitd_portaddr = sitd_portaddr; @@ -2269,14 +2279,16 @@ static void ehci_device_isoc_fs_enter(struct usbd_xfer *xfer) { + struct usbd_page_search buf_res; ehci_softc_t *sc = xfer->usb_sc; - u_int32_t physbuffer; + u_int32_t buf_offset; u_int32_t nframes; u_int16_t *plen; #ifdef USB_DEBUG u_int8_t once = 1; #endif ehci_sitd_t *td; + ehci_sitd_t *td_last = NULL; ehci_sitd_t **pp_last; DPRINTFN(5,("xfer=%p next=%d nframes=%d\n", @@ -2307,7 +2319,8 @@ return; } - physbuffer = xfer->physbuffer; + buf_offset = 0; + usbd_get_page(&(xfer->buf_data), buf_offset, &buf_res); plen = xfer->frlengths; @@ -2321,9 +2334,10 @@ while(nframes--) { - if(((void *)td) >= xfer->td_end) + if(td == NULL) { - td = xfer->td_start; + panic("%s:%d: out of TD's\n", + __FUNCTION__, __LINE__); } if(pp_last >= &sc->sc_isoc_fs_p_last[EHCI_VIRTUAL_FRAMELIST_COUNT]) @@ -2334,28 +2348,27 @@ /* reuse sitd_portaddr and sitd_back from last transfer */ /* TODO: implement support for multiple transactions */ - if(*plen > 188) + if(*plen > xfer->max_frame_size) { #ifdef USB_DEBUG if(once) { once = 0; - printf("%s: frame length(%d) exceeds %d bytes " - "(frame truncated)\n", - __FUNCTION__, *plen, 188); + printf("%s: frame length(%d) exceeds %d " + "bytes (frame truncated)\n", + __FUNCTION__, *plen, + xfer->max_frame_size); } #endif + *plen = xfer->max_frame_size; + } - /* set new frame length, so that - * a valid transfer can be setup, - * even if synchronization with - * physbuffer is lost - */ - *plen = 188; - } + td->sitd_bp[0] = htole32(buf_res.physaddr); + + buf_offset += *plen; + usbd_get_page(&(xfer->buf_data), buf_offset, &buf_res); - td->sitd_bp[0] = htole32(physbuffer); - td->sitd_bp[1] = htole32((physbuffer + *plen) & ~0xFFF); + td->sitd_bp[1] = htole32(buf_res.physaddr & (~0xFFF)); if(UE_GET_DIR(xfer->endpoint) == UE_DIR_OUT) { @@ -2386,12 +2399,12 @@ EHCI_APPEND_FS_TD(td, *pp_last); pp_last++; - physbuffer += *plen; plen++; - td++; + td_last = td; + td = td->obj_next; } - xfer->td_transfer_last = (td-1); + xfer->td_transfer_last = td_last; /* update isoc_next */ xfer->pipe->isoc_next = (pp_last - &sc->sc_isoc_fs_p_last[0]) & @@ -2426,6 +2439,8 @@ .close = ehci_device_isoc_fs_close, .enter = ehci_device_isoc_fs_enter, .start = ehci_device_isoc_fs_start, + .copy_in = usbd_std_isoc_copy_in, + .copy_out = usbd_std_isoc_copy_out, }; /*---------------------------------------------------------------------------* @@ -2438,9 +2453,7 @@ /* initialize all TD's */ - for(td = xfer->td_start; - ((void *)td) < xfer->td_end; - td++) + for(td = xfer->td_start; td; td = td->obj_next) { /* set TD inactive */ td->itd_status[0] = 0; @@ -2483,10 +2496,11 @@ static void ehci_device_isoc_hs_enter(struct usbd_xfer *xfer) { + struct usbd_page_search buf_res; ehci_softc_t *sc = xfer->usb_sc; u_int32_t status; u_int32_t page_addr; - u_int32_t physbuffer; + u_int32_t buf_offset; u_int32_t nframes; u_int16_t *plen; u_int8_t page_no; @@ -2495,6 +2509,7 @@ u_int8_t once = 1; #endif ehci_itd_t *td; + ehci_itd_t *td_last = NULL; ehci_itd_t **pp_last; DPRINTFN(5,("xfer=%p next=%d nframes=%d\n", @@ -2525,9 +2540,10 @@ return; } - physbuffer = xfer->physbuffer; + buf_offset = 0; + usbd_get_page(&(xfer->buf_data), buf_offset, &buf_res); - page_addr = physbuffer & ~0xFFF; + page_addr = buf_res.physaddr & ~0xFFF; page_no = 0; td_no = 0; @@ -2543,9 +2559,10 @@ while(nframes--) { - if(((void *)td) >= xfer->td_end) + if(td == NULL) { - td = xfer->td_start; + panic("%s:%d: out of TD's\n", + __FUNCTION__, __LINE__); } if(pp_last >= &sc->sc_isoc_hs_p_last[EHCI_VIRTUAL_FRAMELIST_COUNT]) @@ -2554,7 +2571,7 @@ } /* range check */ - if(*plen > 0xC00) + if(*plen > xfer->max_frame_size) { #ifdef USB_DEBUG if(once) @@ -2562,15 +2579,10 @@ once = 0; printf("%s: frame length(%d) exceeds %d bytes " "(frame truncated)\n", - __FUNCTION__, *plen, 0xC00); + __FUNCTION__, *plen, xfer->max_frame_size); } #endif - /* set new frame length, so that - * a valid transfer can be setup, - * even if synchronization with - * physbuffer is lost - */ - *plen = 0xC00; + *plen = xfer->max_frame_size; } if(td_no == 0) @@ -2603,7 +2615,7 @@ EHCI_ITD_ACTIVE| EHCI_ITD_IOC| EHCI_ITD_SET_PG(page_no)| - (physbuffer & 0xFFF)); + (buf_res.physaddr & 0xFFF)); } else { @@ -2611,15 +2623,16 @@ (EHCI_ITD_SET_LEN(*plen)| EHCI_ITD_ACTIVE| EHCI_ITD_SET_PG(page_no)| - (physbuffer & 0xFFF)); + (buf_res.physaddr & 0xFFF)); } - physbuffer += *plen; + buf_offset += *plen; + usbd_get_page(&(xfer->buf_data), buf_offset, &buf_res); - if((physbuffer ^ page_addr) & ~0xFFF) + if((buf_res.physaddr ^ page_addr) & ~0xFFF) { /* new page needed */ - page_addr = physbuffer & ~0xFFF; + page_addr = buf_res.physaddr & ~0xFFF; page_no++; if(page_no < 7) @@ -2669,11 +2682,12 @@ page_no = 0; td_no = 0; - td++; + td_last = td; + td = td->obj_next; } } - xfer->td_transfer_last = (td-1); + xfer->td_transfer_last = td_last; /* update isoc_next */ xfer->pipe->isoc_next = (pp_last - &sc->sc_isoc_hs_p_last[0]) & @@ -2708,6 +2722,8 @@ .close = ehci_device_isoc_hs_close, .enter = ehci_device_isoc_hs_enter, .start = ehci_device_isoc_hs_start, + .copy_in = usbd_std_isoc_copy_in, + .copy_out = usbd_std_isoc_copy_out, }; /*---------------------------------------------------------------------------* @@ -2737,7 +2753,7 @@ static const usb_device_descriptor_t ehci_devd = { - USB_DEVICE_DESCRIPTOR_SIZE, + sizeof(usb_device_descriptor_t), UDESC_DEVICE, /* type */ {0x00, 0x02}, /* USB version */ UDCLASS_HUB, /* class */ @@ -2752,7 +2768,7 @@ static const usb_device_qualifier_t ehci_odevd = { - USB_DEVICE_DESCRIPTOR_SIZE, + sizeof(usb_device_qualifier_t), UDESC_DEVICE_QUALIFIER, /* type */ {0x00, 0x02}, /* USB version */ UDCLASS_HUB, /* class */ @@ -2766,7 +2782,7 @@ static const usb_config_descriptor_t ehci_confd = { - USB_CONFIG_DESCRIPTOR_SIZE, + sizeof(usb_config_descriptor_t), UDESC_CONFIG, {USB_CONFIG_DESCRIPTOR_SIZE + USB_INTERFACE_DESCRIPTOR_SIZE + @@ -2781,7 +2797,7 @@ static const usb_interface_descriptor_t ehci_ifcd = { - USB_INTERFACE_DESCRIPTOR_SIZE, + sizeof(usb_interface_descriptor_t), UDESC_INTERFACE, 0, 0, @@ -2795,7 +2811,7 @@ static const usb_endpoint_descriptor_t ehci_endpd = { - USB_ENDPOINT_DESCRIPTOR_SIZE, + sizeof(usb_endpoint_descriptor_t), UDESC_ENDPOINT, UE_DIR_IN | EHCI_INTR_ENDPT, UE_INTERRUPT, @@ -2806,7 +2822,7 @@ static const usb_hub_descriptor_t ehci_hubd = { - USB_HUB_DESCRIPTOR_SIZE, + 0, /* dynamic length */ UDESC_HUB, 0, {0,0}, @@ -2815,28 +2831,6 @@ {0}, }; -static int -ehci_str(usb_string_descriptor_t *p, int l, char *s) -{ - int i; - - if(l == 0) - { - return (0); - } - p->bLength = (2 * strlen(s)) + 2; - if(l == 1) - { - return (1); - } - p->bDescriptorType = UDESC_STRING; - l -= 2; - for(i = 0; s[i] && (l > 1); i++, l -= 2) - { - USETW2(p->bString[i], 0, s[i]); - } - return ((2 * i) + 2); -} static void ehci_disown(ehci_softc_t *sc, int index, int lowspeed) @@ -2855,38 +2849,59 @@ ehci_root_ctrl_enter(struct usbd_xfer *xfer) { ehci_softc_t *sc = xfer->usb_sc; - usb_device_request_t *req = xfer->buffer; - void *buf; - int port, i; - int len, value, index, l, totlen = 0; - usb_port_status_t ps; - usb_hub_descriptor_t hubd; + u_int32_t port; + u_int32_t v; + u_int16_t i; + u_int16_t len; + u_int16_t value; + u_int16_t index; + u_int16_t l; + u_int16_t totlen = 0; + union { + usb_status_t stat; + usb_port_status_t ps; + usb_device_request_t req; + usb_hub_descriptor_t hubd; + usb_device_descriptor_t devd; + usb_device_qualifier_t odevd; + usb_config_descriptor_t confd; + usb_interface_descriptor_t ifcd; + usb_endpoint_descriptor_t endpd; + u_int8_t str_temp[128]; + u_int8_t byte_temp; + } u; usbd_status err; - u_int32_t v; - DPRINTFN(2,("type=0x%02x request=0x%02x\n", - req->bmRequestType, req->bRequest)); + mtx_assert(&sc->sc_bus.mtx, MA_OWNED); - mtx_assert(&sc->sc_bus.mtx, MA_OWNED); + if (xfer->length < sizeof(u.req)) { + err = USBD_INVAL; + goto done; + } /* set default actual length */ - xfer->actlen = sizeof(*req); + xfer->actlen = sizeof(u.req); + + /* copy out "request" */ + usbd_copy_out(&(xfer->buf_data), 0, &u.req, sizeof(u.req)); - len = UGETW(req->wLength); - value = UGETW(req->wValue); - index = UGETW(req->wIndex); + len = (xfer->length - sizeof(u.req)); - if(len != 0) - { - buf = (req+1); + if (len != UGETW(u.req.wLength)) { + err = USBD_INVAL; + goto done; } - else - { - buf = NULL; - } + + value = UGETW(u.req.wValue); + index = UGETW(u.req.wIndex); + + DPRINTFN(2,("type=0x%02x request=0x%02x wLen=0x%04x " + "wValue=0x%04x wIndex=0x%04x\n", + u.req.bmRequestType, u.req.bRequest, + len, value, index)); #define C(x,y) ((x) | ((y) << 8)) - switch(C(req->bRequest, req->bmRequestType)) { + switch(C(u.req.bRequest, u.req.bmRequestType)) { case C(UR_CLEAR_FEATURE, UT_WRITE_DEVICE): case C(UR_CLEAR_FEATURE, UT_WRITE_INTERFACE): case C(UR_CLEAR_FEATURE, UT_WRITE_ENDPOINT): @@ -2898,12 +2913,13 @@ case C(UR_GET_CONFIG, UT_READ_DEVICE): if(len > 0) { - *(u_int8_t *)buf = sc->sc_conf; - totlen = 1; + u.byte_temp = sc->sc_conf; + totlen = 1; + usbd_copy_in(&(xfer->buf_data), sizeof(u.req), + &u, totlen); } break; case C(UR_GET_DESCRIPTOR, UT_READ_DEVICE): - DPRINTFN(8,("wValue=0x%04x\n", value)); switch(value >> 8) { case UDESC_DEVICE: if((value & 0xff) != 0) @@ -2911,19 +2927,20 @@ err = USBD_IOERROR; goto done; } - totlen = l = min(len, USB_DEVICE_DESCRIPTOR_SIZE); - memcpy(buf, &ehci_devd, l); + totlen = min(len, sizeof(u.devd)); + + u.devd = ehci_devd; #if 0 - if(len >= 12) - { - USETW(((usb_device_descriptor_t *)buf)->idVendor, - sc->sc_id_vendor); - } + USETW(u.devd.idVendor, + sc->sc_id_vendor); #endif + usbd_copy_in(&(xfer->buf_data), sizeof(u.req), + &u, totlen); break; /* - * We can't really operate at another speed, but the spec says - * we need this descriptor. + * We can't really operate at another speed, + * but the specification says we need this + * descriptor: */ case UDESC_DEVICE_QUALIFIER: if((value & 0xff) != 0) @@ -2931,12 +2948,14 @@ err = USBD_IOERROR; goto done; } - totlen = l = min(len, USB_DEVICE_DESCRIPTOR_SIZE); - memcpy(buf, &ehci_odevd, l); + totlen = min(len, sizeof(ehci_odevd)); + usbd_copy_in(&(xfer->buf_data), sizeof(u.req), + &ehci_odevd, totlen); break; /* - * We can't really operate at another speed, but the spec says - * we need this descriptor. + * We can't really operate at another speed, + * but the specification says we need this + * descriptor: */ case UDESC_OTHER_SPEED_CONFIGURATION: case UDESC_CONFIG: @@ -2945,40 +2964,67 @@ err = USBD_IOERROR; goto done; } - totlen = l = min(len, USB_CONFIG_DESCRIPTOR_SIZE); - memcpy(buf, &ehci_confd, l); - ((usb_config_descriptor_t *)buf)->bDescriptorType = - value >> 8; - buf = ((u_int8_t *)buf) + l; + totlen = l = min(len, sizeof(u.confd)); len -= l; - l = min(len, USB_INTERFACE_DESCRIPTOR_SIZE); + + u.confd = ehci_confd; + u.confd.bDescriptorType = (value >> 8); + + usbd_copy_in(&(xfer->buf_data), sizeof(u.req), + &u, l); + + l = min(len, sizeof(ehci_ifcd)); totlen += l; - memcpy(buf, &ehci_ifcd, l); - buf = ((u_int8_t *)buf) + l; len -= l; - l = min(len, USB_ENDPOINT_DESCRIPTOR_SIZE); + + usbd_copy_in(&(xfer->buf_data), sizeof(u.req) + + sizeof(u.confd), &ehci_ifcd, l); + + l = min(len, sizeof(ehci_endpd)); totlen += l; - memcpy(buf, &ehci_endpd, l); + len -= l; + + usbd_copy_in(&(xfer->buf_data), sizeof(u.req) + + sizeof(u.confd) + sizeof(u.ifcd), + &ehci_endpd, l); break; + case UDESC_STRING: if(len == 0) { break; } - *(u_int8_t *)buf = 0; - totlen = 1; + switch (value & 0xff) { case 0: /* Language table */ - totlen = ehci_str(buf, len, "\001"); - break; + totlen = usbd_make_str_desc + (u.str_temp, sizeof(u.str_temp), + "\001"); + break; + case 1: /* Vendor */ - totlen = ehci_str(buf, len, sc->sc_vendor); - break; + totlen = usbd_make_str_desc + (u.str_temp, sizeof(u.str_temp), + sc->sc_vendor); + break; + case 2: /* Product */ - totlen = ehci_str(buf, len, "EHCI root hub"); - break; + totlen = usbd_make_str_desc + (u.str_temp, sizeof(u.str_temp), + "EHCI root hub"); + break; + default: + totlen = usbd_make_str_desc + (u.str_temp, sizeof(u.str_temp), + ""); + break; } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 8 10:11:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CED1D16A4DD; Sat, 8 Jul 2006 10:11:32 +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 A5B6016A4DF for ; Sat, 8 Jul 2006 10:11:32 +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 4826543D46 for ; Sat, 8 Jul 2006 10:11:32 +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 k68ABWpq082850 for ; Sat, 8 Jul 2006 10:11:32 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 k68ABVeD082835 for perforce@freebsd.org; Sat, 8 Jul 2006 10:11:31 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 10:11:31 GMT Message-Id: <200607081011.k68ABVeD082835@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 100972 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 10:11:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=100972 Change 100972 by rwatson@rwatson_zoo on 2006/07/08 10:10:35 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/i386/i386/sys_machdep.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_exec.c#4 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_sem.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/bsd_comp.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_atmsubr.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_fddisubr.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_fwsubr.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_iso88025subr.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/net/if_stf.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netatalk/ddp_input.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netatalk/ddp_output.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_divert.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/ip_mroute.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_process.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_socket.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_system.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_sysv_msg.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_sysv_sem.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_sysv_shm.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_vfs.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac.h#4 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#13 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#21 edit .. //depot/projects/trustedbsd/mac2/sys/ufs/ffs/ffs_vfsops.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/ufs/ufs/ufs_vnops.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/vm/swap_pager.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/vm/vm_mmap.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/i386/i386/sys_machdep.c#3 (text+ko) ==== @@ -286,7 +286,7 @@ char *iomap; #ifdef MAC - if ((error = mac_check_sysarch_ioperm(td->td_ucred)) != 0) + if ((error = mac_system_check_ioperm(td->td_ucred)) != 0) return (error); #endif if ((error = suser(td)) != 0) ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_exec.c#4 (text+ko) ==== @@ -548,7 +548,7 @@ credential_changing |= (attr.va_mode & VSGID) && oldcred->cr_gid != attr.va_gid; #ifdef MAC - will_transition = mac_execve_will_transition(oldcred, imgp->vp, + will_transition = mac_vnode_execve_will_transition(oldcred, imgp->vp, interplabel, imgp); credential_changing |= will_transition; #endif @@ -600,8 +600,8 @@ change_egid(newcred, attr.va_gid); #ifdef MAC if (will_transition) { - mac_execve_transition(oldcred, newcred, imgp->vp, - interplabel, imgp); + mac_vnode_execve_transition(oldcred, newcred, + imgp->vp, interplabel, imgp); } #endif /* ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_sem.c#3 (text+ko) ==== @@ -1,6 +1,6 @@ /*- * Copyright (c) 2002 Alfred Perlstein - * Copyright (c) 2003-2005 SPARTA, Inc. + * Copyright (c) 2003-2006 SPARTA, Inc. * Copyright (c) 2005 Robert N. M. Watson * All rights reserved. * @@ -9,6 +9,9 @@ * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), * as part of the DARPA CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -213,8 +216,8 @@ cv_init(&ret->ks_cv, "sem"); LIST_INIT(&ret->ks_users); #ifdef MAC - mac_init_posix_sem(ret); - mac_create_posix_sem(uc, ret); + mac_posix_sem_init(ret); + mac_posix_sem_create(uc, ret); #endif if (name != NULL) sem_enter(td->td_proc, ret); @@ -379,7 +382,7 @@ } } else { #ifdef MAC - error = mac_check_posix_sem_open(td->td_ucred, ks); + error = mac_posix_sem_check_open(td->td_ucred, ks); if (error) goto err_open; #endif @@ -531,7 +534,7 @@ ks = sem_lookup_byname(name); if (ks != NULL) { #ifdef MAC - error = mac_check_posix_sem_unlink(td->td_ucred, ks); + error = mac_posix_sem_check_unlink(td->td_ucred, ks); if (error) { mtx_unlock(&sem_lock); return (error); @@ -606,7 +609,7 @@ goto err; } #ifdef MAC - error = mac_check_posix_sem_post(td->td_ucred, ks); + error = mac_posix_sem_check_post(td->td_ucred, ks); if (error) goto err; #endif @@ -702,7 +705,7 @@ goto err; } #ifdef MAC - error = mac_check_posix_sem_wait(td->td_ucred, ks); + error = mac_posix_sem_check_wait(td->td_ucred, ks); if (error) { DP(("kern_sem_wait mac failed\n")); goto err; @@ -765,7 +768,7 @@ return (EINVAL); } #ifdef MAC - error = mac_check_posix_sem_getvalue(td->td_ucred, ks); + error = mac_posix_sem_check_getvalue(td->td_ucred, ks); if (error) { mtx_unlock(&sem_lock); return (error); @@ -797,7 +800,7 @@ goto err; } #ifdef MAC - error = mac_check_posix_sem_destroy(td->td_ucred, ks); + error = mac_posix_sem_check_destroy(td->td_ucred, ks); if (error) goto err; #endif ==== //depot/projects/trustedbsd/mac2/sys/net/bsd_comp.c#3 (text+ko) ==== @@ -880,7 +880,7 @@ wptr = mtod(dmp, u_char *); space = M_TRAILINGSPACE(dmp) - PPP_HDRLEN + 1; #ifdef MAC - mac_copy_mbuf(cmp, dmp); + mac_mbuf_copy(cmp, dmp); #endif /* ==== //depot/projects/trustedbsd/mac2/sys/net/if_atmsubr.c#3 (text+ko) ==== @@ -133,7 +133,7 @@ u_int32_t atm_flags; #ifdef MAC - error = mac_check_ifnet_transmit(ifp, m); + error = mac_ifnet_check_transmit(ifp, m); if (error) senderr(error); #endif @@ -266,7 +266,7 @@ return; } #ifdef MAC - mac_create_mbuf_from_ifnet(ifp, m); + mac_ifnet_create_mbuf(ifp, m); #endif ifp->if_ibytes += m->m_pkthdr.len; ==== //depot/projects/trustedbsd/mac2/sys/net/if_fddisubr.c#3 (text+ko) ==== @@ -120,7 +120,7 @@ struct fddi_header *fh; #ifdef MAC - error = mac_check_ifnet_transmit(ifp, m); + error = mac_ifnet_check_transmit(ifp, m); if (error) senderr(error); #endif @@ -406,7 +406,7 @@ } #ifdef MAC - mac_create_mbuf_from_ifnet(ifp, m); + mac_ifnet_create_mbuf(ifp, m); #endif /* ==== //depot/projects/trustedbsd/mac2/sys/net/if_fwsubr.c#3 (text+ko) ==== @@ -90,7 +90,7 @@ static int next_dgl; #ifdef MAC - error = mac_check_ifnet_transmit(ifp, m); + error = mac_ifnet_check_transmit(ifp, m); if (error) goto bad; #endif @@ -558,7 +558,7 @@ * Tag the mbuf with an appropriate MAC label before any other * consumers can get to it. */ - mac_create_mbuf_from_ifnet(ifp, m); + mac_ifnet_create_mbuf(ifp, m); #endif /* ==== //depot/projects/trustedbsd/mac2/sys/net/if_iso88025subr.c#3 (text+ko) ==== @@ -243,7 +243,7 @@ struct rtentry *rt = NULL; #ifdef MAC - error = mac_check_ifnet_transmit(ifp, m); + error = mac_ifnet_check_transmit(ifp, m); if (error) senderr(error); #endif @@ -502,7 +502,7 @@ } #ifdef MAC - mac_create_mbuf_from_ifnet(ifp, m); + mac_ifnet_create_mbuf(ifp, m); #endif /* ==== //depot/projects/trustedbsd/mac2/sys/net/if_stf.c#3 (text+ko) ==== @@ -407,7 +407,7 @@ #ifdef MAC int error; - error = mac_check_ifnet_transmit(ifp, m); + error = mac_ifnet_check_transmit(ifp, m); if (error) { m_freem(m); return (error); @@ -675,7 +675,7 @@ ifp = STF2IFP(sc); #ifdef MAC - mac_create_mbuf_from_ifnet(ifp, m); + mac_ifnet_create_mbuf(ifp, m); #endif /* ==== //depot/projects/trustedbsd/mac2/sys/netatalk/ddp_input.c#3 (text+ko) ==== @@ -411,7 +411,7 @@ #ifdef MAC SOCK_LOCK(ddp->ddp_socket); - if (mac_check_socket_deliver(ddp->ddp_socket, m) != 0) { + if (mac_socket_check_deliver(ddp->ddp_socket, m) != 0) { SOCK_UNLOCK(ddp->ddp_socket); goto out; } ==== //depot/projects/trustedbsd/mac2/sys/netatalk/ddp_output.c#3 (text+ko) ==== @@ -53,7 +53,7 @@ #ifdef MAC SOCK_LOCK(so); - mac_create_mbuf_from_socket(so, m); + mac_socket_create_mbuf(so, m); SOCK_UNLOCK(so); #endif @@ -207,7 +207,7 @@ return (ENOBUFS); } #ifdef MAC - mac_copy_mbuf(m, m0); + mac_mbuf_copy(m, m0); #endif m0->m_next = m; /* XXX perhaps we ought to align the header? */ ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_divert.c#3 (text+ko) ==== @@ -349,7 +349,7 @@ ipstat.ips_rawout++; /* XXX */ #ifdef MAC - mac_create_mbuf_from_inpcb(inp, m); + mac_inpcb_create_mbuf(inp, m); #endif error = ip_output(m, inp->inp_options, NULL, @@ -381,7 +381,7 @@ } #ifdef MAC SOCK_LOCK(so); - mac_create_mbuf_from_socket(so, m); + mac_socket_create_mbuf(so, m); SOCK_UNLOCK(so); #endif /* Send packet to input processing */ ==== //depot/projects/trustedbsd/mac2/sys/netinet/ip_mroute.c#3 (text+ko) ==== @@ -1908,7 +1908,7 @@ if (mb_copy == NULL) return; #ifdef MAC - mac_create_mbuf_multicast_encap(m, vifp->v_ifp, mb_copy); + mac_mbuf_create_multicast_encap(m, vifp->v_ifp, mb_copy); #endif mb_copy->m_data += max_linkhdr; mb_copy->m_len = sizeof(multicast_encap_iphdr); ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_process.c#3 (text+ko) ==== @@ -51,6 +51,7 @@ #include #include #include +#include #include #include #include @@ -378,7 +379,7 @@ vfslocked = VFS_LOCK_GIANT(vp->v_mount); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); result = vme->max_protection; - mac_check_vnode_mmap_downgrade(cred, vp, &result); + mac_vnode_check_mmap_downgrade(cred, vp, &result); VOP_UNLOCK(vp, 0, td); /* * Find out what maximum protection we may be allowing @@ -461,37 +462,37 @@ * buffer cache. */ void -mac_relabel_cred(struct ucred *cred, struct label *newlabel) +mac_cred_relabel(struct ucred *cred, struct label *newlabel) { - MAC_PERFORM(relabel_cred, cred, newlabel); + MAC_PERFORM(cred_relabel, cred, newlabel); } int -mac_check_cred_relabel(struct ucred *cred, struct label *newlabel) +mac_cred_check_relabel(struct ucred *cred, struct label *newlabel) { int error; - MAC_CHECK(check_cred_relabel, cred, newlabel); + MAC_CHECK(cred_check_relabel, cred, newlabel); return (error); } int -mac_check_cred_visible(struct ucred *u1, struct ucred *u2) +mac_cred_check_visible(struct ucred *u1, struct ucred *u2) { int error; if (!mac_enforce_process) return (0); - MAC_CHECK(check_cred_visible, u1, u2); + MAC_CHECK(cred_check_visible, u1, u2); return (error); } int -mac_check_proc_debug(struct ucred *cred, struct proc *proc) +mac_proc_check_debug(struct ucred *cred, struct proc *proc) { int error; @@ -500,13 +501,13 @@ if (!mac_enforce_process) return (0); - MAC_CHECK(check_proc_debug, cred, proc); + MAC_CHECK(proc_check_debug, cred, proc); return (error); } int -mac_check_proc_sched(struct ucred *cred, struct proc *proc) +mac_proc_check_sched(struct ucred *cred, struct proc *proc) { int error; @@ -515,13 +516,13 @@ if (!mac_enforce_process) return (0); - MAC_CHECK(check_proc_sched, cred, proc); + MAC_CHECK(proc_check_sched, cred, proc); return (error); } int -mac_check_proc_signal(struct ucred *cred, struct proc *proc, int signum) +mac_proc_check_signal(struct ucred *cred, struct proc *proc, int signum) { int error; @@ -530,13 +531,13 @@ if (!mac_enforce_process) return (0); - MAC_CHECK(check_proc_signal, cred, proc, signum); + MAC_CHECK(proc_check_signal, cred, proc, signum); return (error); } int -mac_check_proc_setuid(struct proc *proc, struct ucred *cred, uid_t uid) +mac_proc_check_setuid(struct proc *proc, struct ucred *cred, uid_t uid) { int error; @@ -545,12 +546,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_setuid, cred, uid); + MAC_CHECK(proc_check_setuid, cred, uid); return (error); } int -mac_check_proc_seteuid(struct proc *proc, struct ucred *cred, uid_t euid) +mac_proc_check_seteuid(struct proc *proc, struct ucred *cred, uid_t euid) { int error; @@ -559,12 +560,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_seteuid, cred, euid); + MAC_CHECK(proc_check_seteuid, cred, euid); return (error); } int -mac_check_proc_setgid(struct proc *proc, struct ucred *cred, gid_t gid) +mac_proc_check_setgid(struct proc *proc, struct ucred *cred, gid_t gid) { int error; @@ -573,12 +574,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_setgid, cred, gid); + MAC_CHECK(proc_check_setgid, cred, gid); return (error); } int -mac_check_proc_setegid(struct proc *proc, struct ucred *cred, gid_t egid) +mac_proc_check_setegid(struct proc *proc, struct ucred *cred, gid_t egid) { int error; @@ -587,12 +588,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_setegid, cred, egid); + MAC_CHECK(proc_check_setegid, cred, egid); return (error); } int -mac_check_proc_setgroups(struct proc *proc, struct ucred *cred, +mac_proc_check_setgroups(struct proc *proc, struct ucred *cred, int ngroups, gid_t *gidset) { int error; @@ -602,12 +603,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_setgroups, cred, ngroups, gidset); + MAC_CHECK(proc_check_setgroups, cred, ngroups, gidset); return (error); } int -mac_check_proc_setreuid(struct proc *proc, struct ucred *cred, uid_t ruid, +mac_proc_check_setreuid(struct proc *proc, struct ucred *cred, uid_t ruid, uid_t euid) { int error; @@ -617,12 +618,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_setreuid, cred, ruid, euid); + MAC_CHECK(proc_check_setreuid, cred, ruid, euid); return (error); } int -mac_check_proc_setregid(struct proc *proc, struct ucred *cred, gid_t rgid, +mac_proc_check_setregid(struct proc *proc, struct ucred *cred, gid_t rgid, gid_t egid) { int error; @@ -632,12 +633,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_setregid, cred, rgid, egid); + MAC_CHECK(proc_check_setregid, cred, rgid, egid); return (error); } int -mac_check_proc_setresuid(struct proc *proc, struct ucred *cred, uid_t ruid, +mac_proc_check_setresuid(struct proc *proc, struct ucred *cred, uid_t ruid, uid_t euid, uid_t suid) { int error; @@ -647,12 +648,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_setresuid, cred, ruid, euid, suid); + MAC_CHECK(proc_check_setresuid, cred, ruid, euid, suid); return (error); } int -mac_check_proc_setresgid(struct proc *proc, struct ucred *cred, gid_t rgid, +mac_proc_check_setresgid(struct proc *proc, struct ucred *cred, gid_t rgid, gid_t egid, gid_t sgid) { int error; @@ -662,12 +663,12 @@ if (!mac_enforce_suid) return (0); - MAC_CHECK(check_proc_setresgid, cred, rgid, egid, sgid); + MAC_CHECK(proc_check_setresgid, cred, rgid, egid, sgid); return (error); } int -mac_check_proc_wait(struct ucred *cred, struct proc *proc) +mac_proc_check_wait(struct ucred *cred, struct proc *proc) { int error; @@ -676,7 +677,7 @@ if (!mac_enforce_process) return (0); - MAC_CHECK(check_proc_wait, cred, proc); + MAC_CHECK(proc_check_wait, cred, proc); return (error); } ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_socket.c#2 (text+ko) ==== @@ -2,7 +2,7 @@ * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001 Ilmar S. Habibulin * Copyright (c) 2001-2005 Networks Associates Technology, Inc. - * Copyright (c) 2005 SPARTA, Inc. + * Copyright (c) 2005-2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson and Ilmar Habibulin for the @@ -49,6 +49,7 @@ #include #include #include +#include #include #include #include @@ -97,9 +98,9 @@ if (label == NULL) return (NULL); - MAC_CHECK(init_socket_label, label, flag); + MAC_CHECK(socket_init_label, label, flag); if (error) { - MAC_PERFORM(destroy_socket_label, label); + MAC_PERFORM(socket_destroy_label, label); mac_labelzone_free(label); return (NULL); } @@ -117,9 +118,9 @@ if (label == NULL) return (NULL); - MAC_CHECK(init_socket_peer_label, label, flag); + MAC_CHECK(socket_init_peer_label, label, flag); if (error) { - MAC_PERFORM(destroy_socket_peer_label, label); + MAC_PERFORM(socket_destroy_peer_label, label); mac_labelzone_free(label); return (NULL); } @@ -128,7 +129,7 @@ } int -mac_init_socket(struct socket *so, int flag) +mac_socket_init(struct socket *so, int flag) { so->so_label = mac_socket_label_alloc(flag); @@ -147,7 +148,7 @@ mac_socket_label_free(struct label *label) { - MAC_PERFORM(destroy_socket_label, label); + MAC_PERFORM(socket_destroy_label, label); mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacsockets); } @@ -156,13 +157,13 @@ mac_socket_peer_label_free(struct label *label) { - MAC_PERFORM(destroy_socket_peer_label, label); + MAC_PERFORM(socket_destroy_peer_label, label); mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacsockets); } void -mac_destroy_socket(struct socket *socket) +mac_socket_destroy(struct socket *socket) { mac_socket_label_free(socket->so_label); @@ -172,14 +173,14 @@ } void -mac_copy_socket_label(struct label *src, struct label *dest) +mac_socket_copy_label(struct label *src, struct label *dest) { - MAC_PERFORM(copy_socket_label, src, dest); + MAC_PERFORM(socket_copy_label, src, dest); } int -mac_externalize_socket_label(struct label *label, char *elements, +mac_socket_externalize_label(struct label *label, char *elements, char *outbuf, size_t outbuflen) { int error; @@ -190,7 +191,7 @@ } static int -mac_externalize_socket_peer_label(struct label *label, char *elements, +mac_socket_peer_externalize_label(struct label *label, char *elements, char *outbuf, size_t outbuflen) { int error; @@ -201,7 +202,7 @@ } int -mac_internalize_socket_label(struct label *label, char *string) +mac_socket_internalize_label(struct label *label, char *string) { int error; @@ -211,33 +212,32 @@ } void -mac_create_socket(struct ucred *cred, struct socket *socket) +mac_socket_create(struct ucred *cred, struct socket *socket) { - MAC_PERFORM(create_socket, cred, socket, socket->so_label); + MAC_PERFORM(socket_create, cred, socket, socket->so_label); } void -mac_create_socket_from_socket(struct socket *oldsocket, - struct socket *newsocket) +mac_socket_accept(struct socket *oldsocket, struct socket *newsocket) { SOCK_LOCK_ASSERT(oldsocket); - MAC_PERFORM(create_socket_from_socket, oldsocket, oldsocket->so_label, - newsocket, newsocket->so_label); + MAC_PERFORM(socket_accept, oldsocket, oldsocket->so_label, newsocket, + newsocket->so_label); } static void -mac_relabel_socket(struct ucred *cred, struct socket *socket, +mac_socket_relabel(struct ucred *cred, struct socket *socket, struct label *newlabel) { SOCK_LOCK_ASSERT(socket); - MAC_PERFORM(relabel_socket, cred, socket, socket->so_label, newlabel); + MAC_PERFORM(socket_relabel, cred, socket, socket->so_label, newlabel); } void -mac_set_socket_peer_from_mbuf(struct mbuf *mbuf, struct socket *socket) +mac_socket_set_peer_from_mbuf(struct mbuf *mbuf, struct socket *socket) { struct label *label; @@ -245,12 +245,12 @@ label = mac_mbuf_to_label(mbuf); - MAC_PERFORM(set_socket_peer_from_mbuf, mbuf, label, socket, + MAC_PERFORM(socket_set_peer_from_mbuf, mbuf, label, socket, socket->so_peerlabel); } void -mac_set_socket_peer_from_socket(struct socket *oldsocket, +mac_socket_set_peer_from_socket(struct socket *oldsocket, struct socket *newsocket) { @@ -260,24 +260,24 @@ * called in both directions, so we can't assert the lock * here currently. */ - MAC_PERFORM(set_socket_peer_from_socket, oldsocket, + MAC_PERFORM(socket_set_peer_from_socket, oldsocket, oldsocket->so_label, newsocket, newsocket->so_peerlabel); } void -mac_create_mbuf_from_socket(struct socket *socket, struct mbuf *mbuf) +mac_socket_create_mbuf(struct socket *socket, struct mbuf *mbuf) { struct label *label; label = mac_mbuf_to_label(mbuf); SOCK_LOCK_ASSERT(socket); - MAC_PERFORM(create_mbuf_from_socket, socket, socket->so_label, mbuf, + MAC_PERFORM(socket_create_mbuf, socket, socket->so_label, mbuf, label); } int -mac_check_socket_accept(struct ucred *cred, struct socket *socket) +mac_socket_check_accept(struct ucred *cred, struct socket *socket) { int error; @@ -286,13 +286,13 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_accept, cred, socket, socket->so_label); + MAC_CHECK(socket_check_accept, cred, socket, socket->so_label); return (error); } int -mac_check_socket_bind(struct ucred *ucred, struct socket *socket, +mac_socket_check_bind(struct ucred *ucred, struct socket *socket, struct sockaddr *sockaddr) { int error; @@ -302,14 +302,14 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_bind, ucred, socket, socket->so_label, + MAC_CHECK(socket_check_bind, ucred, socket, socket->so_label, sockaddr); return (error); } int -mac_check_socket_connect(struct ucred *cred, struct socket *socket, +mac_socket_check_connect(struct ucred *cred, struct socket *socket, struct sockaddr *sockaddr) { int error; @@ -319,14 +319,14 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_connect, cred, socket, socket->so_label, + MAC_CHECK(socket_check_connect, cred, socket, socket->so_label, sockaddr); return (error); } int -mac_check_socket_create(struct ucred *cred, int domain, int type, +mac_socket_check_create(struct ucred *cred, int domain, int type, int protocol) { int error; @@ -334,13 +334,13 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_create, cred, domain, type, protocol); + MAC_CHECK(socket_check_create, cred, domain, type, protocol); return (error); } int -mac_check_socket_deliver(struct socket *socket, struct mbuf *mbuf) +mac_socket_check_deliver(struct socket *socket, struct mbuf *mbuf) { struct label *label; int error; @@ -352,14 +352,14 @@ label = mac_mbuf_to_label(mbuf); - MAC_CHECK(check_socket_deliver, socket, socket->so_label, mbuf, + MAC_CHECK(socket_check_deliver, socket, socket->so_label, mbuf, label); return (error); } int -mac_check_socket_listen(struct ucred *cred, struct socket *socket) +mac_socket_check_listen(struct ucred *cred, struct socket *socket) { int error; @@ -368,12 +368,12 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_listen, cred, socket, socket->so_label); + MAC_CHECK(socket_check_listen, cred, socket, socket->so_label); return (error); } int -mac_check_socket_poll(struct ucred *cred, struct socket *so) +mac_socket_check_poll(struct ucred *cred, struct socket *so) { int error; @@ -382,12 +382,12 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_poll, cred, so, so->so_label); + MAC_CHECK(socket_check_poll, cred, so, so->so_label); return (error); } int -mac_check_socket_receive(struct ucred *cred, struct socket *so) +mac_socket_check_receive(struct ucred *cred, struct socket *so) { int error; @@ -396,27 +396,27 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_receive, cred, so, so->so_label); + MAC_CHECK(socket_check_receive, cred, so, so->so_label); return (error); } static int -mac_check_socket_relabel(struct ucred *cred, struct socket *socket, +mac_socket_check_relabel(struct ucred *cred, struct socket *socket, struct label *newlabel) { int error; SOCK_LOCK_ASSERT(socket); - MAC_CHECK(check_socket_relabel, cred, socket, socket->so_label, + MAC_CHECK(socket_check_relabel, cred, socket, socket->so_label, newlabel); return (error); } int -mac_check_socket_send(struct ucred *cred, struct socket *so) +mac_socket_check_send(struct ucred *cred, struct socket *so) { int error; @@ -425,13 +425,13 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_send, cred, so, so->so_label); + MAC_CHECK(socket_check_send, cred, so, so->so_label); return (error); } int -mac_check_socket_stat(struct ucred *cred, struct socket *so) +mac_socket_check_stat(struct ucred *cred, struct socket *so) { int error; @@ -440,13 +440,13 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_stat, cred, so, so->so_label); + MAC_CHECK(socket_check_stat, cred, so, so->so_label); return (error); } int -mac_check_socket_visible(struct ucred *cred, struct socket *socket) +mac_socket_check_visible(struct ucred *cred, struct socket *socket) { int error; @@ -455,7 +455,7 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_visible, cred, socket, socket->so_label); + MAC_CHECK(socket_check_visible, cred, socket, socket->so_label); return (error); } @@ -476,13 +476,13 @@ * before refreshing, holding both locks. */ SOCK_LOCK(so); - error = mac_check_socket_relabel(cred, so, label); + error = mac_socket_check_relabel(cred, so, label); if (error) { SOCK_UNLOCK(so); return (error); } - mac_relabel_socket(cred, so, label); + mac_socket_relabel(cred, so, label); SOCK_UNLOCK(so); /* * If the protocol has expressed interest in socket layer changes, @@ -497,7 +497,8 @@ } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 8 10:19:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6031616A4E0; Sat, 8 Jul 2006 10:19:43 +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 31E9916A4DA for ; Sat, 8 Jul 2006 10:19:43 +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 D98B343D46 for ; Sat, 8 Jul 2006 10:19:42 +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 k68AJgrA088774 for ; Sat, 8 Jul 2006 10:19:42 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 k68AJg0W088771 for perforce@freebsd.org; Sat, 8 Jul 2006 10:19:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 10:19:42 GMT Message-Id: <200607081019.k68AJg0W088771@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 100973 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 10:19:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=100973 Change 100973 by rwatson@rwatson_zoo on 2006/07/08 10:18:56 Add notes file on changes made in mac2 branch. Affected files ... .. //depot/projects/trustedbsd/mac2/mac2_notes.txt#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sat Jul 8 10:26:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9CDF216A4DD; Sat, 8 Jul 2006 10:26:52 +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 6316E16A4DE for ; Sat, 8 Jul 2006 10:26:52 +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 0D87743D49 for ; Sat, 8 Jul 2006 10:26:52 +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 k68AQpPJ094030 for ; Sat, 8 Jul 2006 10:26:51 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 k68AQpvu094024 for perforce@freebsd.org; Sat, 8 Jul 2006 10:26:51 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 10:26:51 GMT Message-Id: <200607081026.k68AQpvu094024@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 100974 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 10:26:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=100974 Change 100974 by rwatson@rwatson_zoo on 2006/07/08 10:26:20 Notes on mac2 branch. Affected files ... .. //depot/projects/trustedbsd/mac2/mac2_notes.txt#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/mac2_notes.txt#2 (text+ko) ==== @@ -1,1 +1,58 @@ Notes file for prototype changes made in the MAC2 branch. + +- Renaming of pretty much all entry points. Adopt a new naming scheme + based on: + + mpo__() + mpo__check_() + + Likewise for mac_*. This appears to shorten quite a few names + (removing '_from_', etc), and make things much more legible and + consistent. + +- Add a new subsystem class netinet to hold netinet-related methods. + +- Resort entry points in mac_framework.h, mac_policy.h by object rather + than method. This significantly improves readability. + +- Split mac.h into mac.h and mac_framework.h, breaking out user and kernel + APIs into separate kernel include files. + +Planned changes: + +- Accessor methods for slot data based on functions, in order to avoid + encoding the ABI of the slot/label mechanism into modules. Proposed + methods: + + mac__getlabel(mpc, object, &valuep); + mac__setlabel(mpc, object, value); + + These will get and set the slot field, which will be of type uintptr_t. + Locking will be unchanged. Policies will likely wrap these in their + own macro or inline to pass mpc implicitly in common use. + +- Remove label arguments from policy entry points where an accessor method + can be used. + +Already performed and merged changes: + +- Adopt SEDarwin MAC Framework change to provide mpo_foo_t prototypes for + mac_policy_ops entries. This has several advantages: + + Provide a more clear style and structure for inline documentation. + + Allow internal prototyping in policies so they can be broken into + multiple C files more easily. + +Future directions: + +- Break policy modules into multiple files by object/subsystem class, + with policy_internal.h using new mpo prototypes. + +- Explore and possibly adopt SEDarwin MAC Framework changes to allow + specific label registration for policy modules for FreeBSD. + +- Explore and possibly adopt fine-grained label registration so that slots + are only used for objects requested by the policy. I.e., policies can + request only a cred label slot, etc. This could then be used to key + memory allocation overhead on more objects. From owner-p4-projects@FreeBSD.ORG Sat Jul 8 10:59:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E84E616A4E2; Sat, 8 Jul 2006 10:59:33 +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 A3AA316A4E0 for ; Sat, 8 Jul 2006 10:59:33 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5D90F43D4C for ; Sat, 8 Jul 2006 10:59:33 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68AxXO2015946 for ; Sat, 8 Jul 2006 10:59:33 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68AxX3V015943 for perforce@freebsd.org; Sat, 8 Jul 2006 10:59:33 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 10:59:33 GMT Message-Id: <200607081059.k68AxX3V015943@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100976 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 10:59:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100976 Change 100976 by rdivacky@rdivacky_witten on 2006/07/08 10:58:38 Change get_thread_area() syscall prototype in syscalls.master. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#9 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#9 (text+ko) ==== @@ -410,7 +410,7 @@ 241 AUE_NULL UNIMPL linux_sched_setaffinity 242 AUE_NULL UNIMPL linux_sched_getaffinity 243 AUE_NULL MSTD { int linux_set_thread_area(struct l_user_desc *desc); } -244 AUE_NULL UNIMPL linux_get_thread_area +244 AUE_NULL MSTD { int linux_get_thread_area(struct l_user_desc *desc); } 245 AUE_NULL UNIMPL linux_io_setup 246 AUE_NULL UNIMPL linux_io_destroy 247 AUE_NULL UNIMPL linux_io_getevents From owner-p4-projects@FreeBSD.ORG Sat Jul 8 11:00:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8ABE316A4E0; Sat, 8 Jul 2006 11:00:35 +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 659A116A4DE for ; Sat, 8 Jul 2006 11:00:35 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 13A7B43D45 for ; Sat, 8 Jul 2006 11:00:35 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68B0YJW016664 for ; Sat, 8 Jul 2006 11:00:34 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68B0Y4M016658 for perforce@freebsd.org; Sat, 8 Jul 2006 11:00:34 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 11:00:34 GMT Message-Id: <200607081100.k68B0Y4M016658@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100977 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 11:00:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=100977 Change 100977 by rdivacky@rdivacky_witten on 2006/07/08 10:59:53 Regen after syscalls.master update. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#9 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#9 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#9 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#9 (text+ko) ==== @@ -707,6 +707,9 @@ struct linux_set_thread_area_args { char desc_l_[PADL_(struct l_user_desc *)]; struct l_user_desc * desc; char desc_r_[PADR_(struct l_user_desc *)]; }; +struct linux_get_thread_area_args { + char desc_l_[PADL_(struct l_user_desc *)]; struct l_user_desc * desc; char desc_r_[PADR_(struct l_user_desc *)]; +}; struct linux_fadvise64_args { register_t dummy; }; @@ -1050,6 +1053,7 @@ int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_tkill(struct thread *, struct linux_tkill_args *); int linux_set_thread_area(struct thread *, struct linux_set_thread_area_args *); +int linux_get_thread_area(struct thread *, struct linux_get_thread_area_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#9 (text+ko) ==== @@ -228,6 +228,7 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_tkill 238 #define LINUX_SYS_linux_set_thread_area 243 +#define LINUX_SYS_linux_get_thread_area 244 #define LINUX_SYS_linux_fadvise64 250 #define LINUX_SYS_exit_group 252 #define LINUX_SYS_linux_lookup_dcookie 253 ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#9 (text+ko) ==== @@ -263,7 +263,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 241 = linux_sched_setaffinity */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 242 = linux_sched_getaffinity */ { SYF_MPSAFE | AS(linux_set_thread_area_args), (sy_call_t *)linux_set_thread_area, AUE_NULL }, /* 243 = linux_set_thread_area */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 244 = linux_get_thread_area */ + { SYF_MPSAFE | AS(linux_get_thread_area_args), (sy_call_t *)linux_get_thread_area, AUE_NULL }, /* 244 = linux_get_thread_area */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 245 = linux_io_setup */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 246 = linux_io_destroy */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 247 = linux_io_getevents */ From owner-p4-projects@FreeBSD.ORG Sat Jul 8 11:16:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 173F316A4E2; Sat, 8 Jul 2006 11:16:56 +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 CDF9B16A4DD for ; Sat, 8 Jul 2006 11:16:55 +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 9401D43D49 for ; Sat, 8 Jul 2006 11:16:55 +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 k68BGt6M026207 for ; Sat, 8 Jul 2006 11:16:55 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 k68BGtaT026193 for perforce@freebsd.org; Sat, 8 Jul 2006 11:16:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 11:16:55 GMT Message-Id: <200607081116.k68BGtaT026193@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 100978 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 11:16:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=100978 Change 100978 by rwatson@rwatson_zoo on 2006/07/08 11:15:56 More notes. Affected files ... .. //depot/projects/trustedbsd/mac2/mac2_notes.txt#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/mac2_notes.txt#3 (text+ko) ==== @@ -10,7 +10,8 @@ (removing '_from_', etc), and make things much more legible and consistent. -- Add a new subsystem class netinet to hold netinet-related methods. +- Add a new subsystem class _netinet_ to hold netinet-related methods. + Added a pseudo-class, _policy_ for policy-related events (init, destroy). - Resort entry points in mac_framework.h, mac_policy.h by object rather than method. This significantly improves readability. @@ -18,6 +19,11 @@ - Split mac.h into mac.h and mac_framework.h, breaking out user and kernel APIs into separate kernel include files. +- Remove mount_fs label, which has generally gone unused. + +- Rename all devfs entry points to be mac_devfs_foo() rather than having + some be mac_devfsdirent_foo(). + Planned changes: - Accessor methods for slot data based on functions, in order to avoid @@ -56,3 +62,7 @@ are only used for objects requested by the policy. I.e., policies can request only a cred label slot, etc. This could then be used to key memory allocation overhead on more objects. + +- Move from just init/destroy to also attach/detach methods for the policy, + so that memory allocation can be performed without the mac policy lock + held. From owner-p4-projects@FreeBSD.ORG Sat Jul 8 11:42:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1311516A4DE; Sat, 8 Jul 2006 11:42:28 +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 B274E16A4DA for ; Sat, 8 Jul 2006 11:42:27 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 775AF43D45 for ; Sat, 8 Jul 2006 11:42:27 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68BgRbV039023 for ; Sat, 8 Jul 2006 11:42:27 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68BgROX039017 for perforce@freebsd.org; Sat, 8 Jul 2006 11:42:27 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 11:42:27 GMT Message-Id: <200607081142.k68BgROX039017@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100979 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 11:42:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=100979 Change 100979 by rdivacky@rdivacky_witten on 2006/07/08 11:41:48 Implement get_thread_area() which I forgot when I was doing the TLS stuff. Its not necessary but its good to have it for being complete. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#8 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#11 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux.h#8 (text+ko) ==== @@ -721,6 +721,11 @@ l_uint useable:1; }; +struct l_desc_struct { + unsigned long a,b; +}; + + #define LINUX_LOWERWORD 0x0000ffff /* macros which does the same thing as those in linux include/asm-um/ldt-i386.h @@ -758,6 +763,23 @@ (info)->limit_in_pages == 0 && \ (info)->useable == 0 ) +/* macros for converting segments, they do the same as those in arch/i386/kernel/process.c */ +#define GET_BASE(desc) ( \ + (((desc)->a >> 16) & LINUX_LOWERWORD) | \ + (((desc)->b << 16) & 0x00ff0000) | \ + ( (desc)->b & 0xff000000) ) + +#define GET_LIMIT(desc) ( \ + ((desc)->a & LINUX_LOWERWORD) | \ + ((desc)->b & 0xf0000) ) + +#define GET_32BIT(desc) (((desc)->b >> ENTRY_B_SEG32BIT) & 1) +#define GET_CONTENTS(desc) (((desc)->b >> ENTRY_B_CONTENTS) & 3) +#define GET_WRITABLE(desc) (((desc)->b >> ENTRY_B_READ_EXEC_ONLY) & 1) +#define GET_LIMIT_PAGES(desc) (((desc)->b >> ENTRY_B_LIMIT) & 1) +#define GET_PRESENT(desc) (((desc)->b >> ENTRY_B_SEG_NOT_PRESENT) & 1) +#define GET_USEABLE(desc) (((desc)->b >> ENTRY_B_USEABLE) & 1) + /* modeled after similar structure in NetBSD * this will be extended as we need more functionality */ ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#11 (text+ko) ==== @@ -1032,6 +1032,48 @@ } int +linux_get_thread_area(struct thread *td, struct linux_get_thread_area_args *args) +{ + + struct l_user_desc info; + int error; + int idx; + struct l_desc_struct desc; + struct segment_descriptor sd; + + error = copyin(args->desc, &info, sizeof(struct l_user_desc)); + if (error) + return (error); + + idx = info.entry_number; + /* XXX: I am not sure if we want 3 to be allowed too. */ + if (idx != 6 && idx != 3) + return (EINVAL); + + memset(&info, 0, sizeof(info)); + + sd = PCPU_GET(fsgs_gdt)[1]; + + memcpy(&desc, &sd, sizeof(desc)); + + info.entry_number = idx; + info.base_addr = GET_BASE(&desc); + info.limit = GET_LIMIT(&desc); + info.seg_32bit = GET_32BIT(&desc); + info.contents = GET_CONTENTS(&desc); + info.read_exec_only = !GET_WRITABLE(&desc); + info.limit_in_pages = GET_LIMIT_PAGES(&desc); + info.seg_not_present = !GET_PRESENT(&desc); + info.useable = GET_USEABLE(&desc); + + error = copyout(&info, args->desc, sizeof(struct l_user_desc)); + if (error) + return (EFAULT); + + return (0); +} + +int linux_gettid(struct thread *td, struct linux_gettid_args *args) { From owner-p4-projects@FreeBSD.ORG Sat Jul 8 12:10:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E4ABC16A4DF; Sat, 8 Jul 2006 12:10:34 +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 8EFDE16A4DE for ; Sat, 8 Jul 2006 12:10:34 +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 5013743D46 for ; Sat, 8 Jul 2006 12:10:34 +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 k68CAYGg057216 for ; Sat, 8 Jul 2006 12:10:34 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 k68CAXTq057210 for perforce@freebsd.org; Sat, 8 Jul 2006 12:10:33 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 12:10:33 GMT Message-Id: <200607081210.k68CAXTq057210@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 100982 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 12:10:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=100982 Change 100982 by rwatson@rwatson_zoo on 2006/07/08 12:09:59 More use of mount label instead of fslabel. Further rename socket_peer label calls to be more consistent. More comments on renaming. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#22 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#22 (text+ko) ==== @@ -149,7 +149,7 @@ typedef void (*mpo_devfs_init_label_t)(struct label *label); typedef void (*mpo_devfs_destroy_label_t)(struct label *label); typedef void (*mpo_devfs_vnode_associate_t)(struct mount *mp, - struct label *fslabel, struct devfs_dirent *de, + struct label *mountlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel); typedef void (*mpo_devfs_create_device_t)(struct ucred *cred, @@ -463,10 +463,10 @@ * Object: struct socket (Socket) */ typedef int (*mpo_socket_init_label_t)(struct label *label, int flag); -typedef int (*mpo_socket_init_peer_label_t)(struct label *label, +typedef int (*mpo_socket_peer_init_label_t)(struct label *label, int flag); typedef void (*mpo_socket_destroy_label_t)(struct label *label); -typedef void (*mpo_socket_destroy_peer_label_t)(struct label *label); +typedef void (*mpo_socket_peer_destroy_label_t)(struct label *label); typedef void (*mpo_socket_copy_label_t)(struct label *src, struct label *dest); typedef int (*mpo_socket_externalize_label_t)(struct label *label, @@ -543,13 +543,13 @@ typedef void (*mpo_vnode_init_label_t)(struct label *label); typedef void (*mpo_vnode_destroy_label_t)(struct label *label); typedef int (*mpo_vnode_associate_extattr_t)(struct mount *mp, - struct label *fslabel, struct vnode *vp, + struct label *mountlabel, struct vnode *vp, struct label *vlabel); typedef void (*mpo_vnode_associate_singlelabel_t)(struct mount *mp, - struct label *fslabel, struct vnode *vp, + struct label *mountlabel, struct vnode *vp, struct label *vlabel); typedef int (*mpo_vnode_create_extattr_t)(struct ucred *cred, - struct mount *mp, struct label *fslabel, + struct mount *mp, struct label *mountlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp); @@ -697,6 +697,9 @@ /* * XXXRW: Names here still inconsistent. + * + * Perhaps mpo_ifnet_receive(), mpo_ifnet_receive_encap(), and + * mpo_ifnet_transmit(). */ mpo_ifnet_init_label_t mpo_ifnet_init_label; mpo_ifnet_destroy_label_t mpo_ifnet_destroy_label; @@ -838,9 +841,9 @@ * be best if the "peer" label were at the protocol layer. */ mpo_socket_init_label_t mpo_socket_init_label; - mpo_socket_init_peer_label_t mpo_socket_init_peer_label; + mpo_socket_peer_init_label_t mpo_socket_peer_init_label; mpo_socket_destroy_label_t mpo_socket_destroy_label; - mpo_socket_destroy_peer_label_t mpo_socket_destroy_peer_label; + mpo_socket_peer_destroy_label_t mpo_socket_peer_destroy_label; mpo_socket_copy_label_t mpo_socket_copy_label; mpo_socket_externalize_label_t mpo_socket_externalize_label; mpo_socket_peer_externalize_label_t mpo_socket_peer_externalize_label; From owner-p4-projects@FreeBSD.ORG Sat Jul 8 12:14:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CC79416A4E0; Sat, 8 Jul 2006 12:14:40 +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 86A0D16A4DA for ; Sat, 8 Jul 2006 12:14:40 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3DE0C43D45 for ; Sat, 8 Jul 2006 12:14:40 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68CEeDW060169 for ; Sat, 8 Jul 2006 12:14:40 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68CEeOT060160 for perforce@freebsd.org; Sat, 8 Jul 2006 12:14:40 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 12:14:40 GMT Message-Id: <200607081214.k68CEeOT060160@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 100983 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 12:14:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=100983 Change 100983 by rdivacky@rdivacky_witten on 2006/07/08 12:13:52 Add linux_futex.* files from NetBSD. Obtained from: NetBSD (Emmanuel Dreyfus) Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_futex.c#1 add .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_futex.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sat Jul 8 12:23:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6EEE616A4E0; Sat, 8 Jul 2006 12:23:54 +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 3082D16A4DA for ; Sat, 8 Jul 2006 12:23:54 +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 CB5D143D4C for ; Sat, 8 Jul 2006 12:23:53 +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 k68CNr2o067937 for ; Sat, 8 Jul 2006 12:23:53 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 k68CNpqs067907 for perforce@freebsd.org; Sat, 8 Jul 2006 12:23:51 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 12:23:51 GMT Message-Id: <200607081223.k68CNpqs067907@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 100984 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 12:23:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=100984 Change 100984 by rwatson@rwatson_zoo on 2006/07/08 12:22:59 Further renaming. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_stream.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/kern_alq.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/link_elf_obj.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/uipc_usrreq.c#4 edit .. //depot/projects/trustedbsd/mac2/sys/netatalk/aarp.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/if_ether.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/igmp.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_input.c#4 edit .. //depot/projects/trustedbsd/mac2/sys/netinet/tcp_syncache.c#4 edit .. //depot/projects/trustedbsd/mac2/sys/netinet6/nd6.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_net.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac/mac_socket.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/security/mac_portacl/mac_portacl.c#2 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#14 edit .. //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#23 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_stream.c#3 (text+ko) ==== @@ -176,7 +176,7 @@ #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_send(td->td_ucred, so); + error = mac_socket_check_send(td->td_ucred, so); SOCK_UNLOCK(so); if (error) goto done1; @@ -276,7 +276,7 @@ #ifdef MAC SOCK_LOCK(so); - error = mac_check_socket_receive(td->td_ucred, so); + error = mac_socket_check_receive(td->td_ucred, so); SOCK_UNLOCK(so); if (error) goto done1; ==== //depot/projects/trustedbsd/mac2/sys/kern/kern_alq.c#3 (text+ko) ==== @@ -299,7 +299,7 @@ * XXX: VOP_WRITE error checks are ignored. */ #ifdef MAC - if (mac_check_vnode_write(alq->aq_cred, NOCRED, vp) == 0) + if (mac_vnode_check_write(alq->aq_cred, NOCRED, vp) == 0) #endif VOP_WRITE(vp, &auio, IO_UNIT | IO_APPEND, alq->aq_cred); VOP_UNLOCK(vp, 0, td); ==== //depot/projects/trustedbsd/mac2/sys/kern/link_elf_obj.c#3 (text+ko) ==== @@ -409,7 +409,7 @@ vfslocked = NDHASGIANT(&nd); NDFREE(&nd, NDF_ONLY_PNBUF); #ifdef MAC - error = mac_check_kld_load(td->td_ucred, nd.ni_vp); + error = mac_kld_check_load(td->td_ucred, nd.ni_vp); if (error) { goto out; } ==== //depot/projects/trustedbsd/mac2/sys/kern/uipc_usrreq.c#4 (text+ko) ==== @@ -951,8 +951,8 @@ unp3->unp_flags |= UNP_WANTCRED; #ifdef MAC SOCK_LOCK(so); - mac_socket_set_peer_from_socket(so, so3); - mac_socket_set_peer_from_socket(so3, so); + mac_socket_peer_set_from_socket(so, so3); + mac_socket_peer_set_from_socket(so3, so); SOCK_UNLOCK(so); #endif ==== //depot/projects/trustedbsd/mac2/sys/netatalk/aarp.c#3 (text+ko) ==== @@ -183,7 +183,7 @@ return; } #ifdef MAC - mac_create_mbuf_linklayer(ifp, m); + mac_mbuf_create_linklayer(ifp, m); #endif m->m_len = sizeof(*ea); m->m_pkthdr.len = sizeof(*ea); @@ -616,7 +616,7 @@ return; } #ifdef MAC - mac_create_mbuf_linklayer(ifp, m); + mac_mbuf_create_linklayer(ifp, m); #endif m->m_len = sizeof(*ea); m->m_pkthdr.len = sizeof(*ea); ==== //depot/projects/trustedbsd/mac2/sys/netinet/if_ether.c#3 (text+ko) ==== @@ -350,7 +350,7 @@ ah = mtod(m, struct arphdr *); bzero((caddr_t)ah, m->m_len); #ifdef MAC - mac_create_mbuf_linklayer(ifp, m); + mac_mbuf_create_linklayer(ifp, m); #endif ah->ar_pro = htons(ETHERTYPE_IP); ah->ar_hln = ifp->if_addrlen; /* hardware address length */ ==== //depot/projects/trustedbsd/mac2/sys/netinet/igmp.c#3 (text+ko) ==== @@ -469,7 +469,7 @@ m->m_pkthdr.rcvif = loif; #ifdef MAC - mac_create_mbuf_linklayer(inm->inm_ifp, m); + mac_mbuf_create_linklayer(inm->inm_ifp, m); #endif m->m_pkthdr.len = sizeof(struct ip) + IGMP_MINLEN; MH_ALIGN(m, IGMP_MINLEN + sizeof(struct ip)); ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_input.c#4 (text+ko) ==== @@ -1403,7 +1403,7 @@ soisconnected(so); #ifdef MAC SOCK_LOCK(so); - mac_socket_set_peer_from_mbuf(m, so); + mac_socket_peer_set_from_mbuf(m, so); SOCK_UNLOCK(so); #endif /* Do window scaling on this connection? */ ==== //depot/projects/trustedbsd/mac2/sys/netinet/tcp_syncache.c#4 (text+ko) ==== @@ -562,7 +562,7 @@ } #ifdef MAC SOCK_LOCK(so); - mac_socket_set_peer_from_mbuf(m, so); + mac_socket_peer_set_from_mbuf(m, so); SOCK_UNLOCK(so); #endif ==== //depot/projects/trustedbsd/mac2/sys/netinet6/nd6.c#3 (text+ko) ==== @@ -2129,7 +2129,7 @@ #endif #ifdef MAC - mac_create_mbuf_linklayer(ifp, m); + mac_mbuf_create_linklayer(ifp, m); #endif if ((ifp->if_flags & IFF_LOOPBACK) != 0) { return ((*ifp->if_output)(origifp, m, (struct sockaddr *)dst, ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_net.c#3 (text+ko) ==== @@ -326,27 +326,27 @@ } void -mac_create_mbuf_linklayer(struct ifnet *ifnet, struct mbuf *mbuf) +mac_ifnet_create_mbuf(struct ifnet *ifnet, struct mbuf *mbuf) { struct label *label; label = mac_mbuf_to_label(mbuf); MAC_IFNET_LOCK(ifnet); - MAC_PERFORM(create_mbuf_linklayer, ifnet, ifnet->if_label, mbuf, - label); + MAC_PERFORM(ifnet_create_mbuf, ifnet, ifnet->if_label, mbuf, label); MAC_IFNET_UNLOCK(ifnet); } void -mac_ifnet_create_mbuf(struct ifnet *ifnet, struct mbuf *mbuf) +mac_mbuf_create_linklayer(struct ifnet *ifnet, struct mbuf *mbuf) { struct label *label; label = mac_mbuf_to_label(mbuf); MAC_IFNET_LOCK(ifnet); - MAC_PERFORM(ifnet_create_mbuf, ifnet, ifnet->if_label, mbuf, label); + MAC_PERFORM(mbuf_create_linklayer, ifnet, ifnet->if_label, mbuf, + label); MAC_IFNET_UNLOCK(ifnet); } ==== //depot/projects/trustedbsd/mac2/sys/security/mac/mac_socket.c#3 (text+ko) ==== @@ -118,9 +118,9 @@ if (label == NULL) return (NULL); - MAC_CHECK(socket_init_peer_label, label, flag); + MAC_CHECK(socket_peer_init_label, label, flag); if (error) { - MAC_PERFORM(socket_destroy_peer_label, label); + MAC_PERFORM(socket_peer_destroy_label, label); mac_labelzone_free(label); return (NULL); } @@ -157,7 +157,7 @@ mac_socket_peer_label_free(struct label *label) { - MAC_PERFORM(socket_destroy_peer_label, label); + MAC_PERFORM(socket_peer_destroy_label, label); mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacsockets); } @@ -237,7 +237,7 @@ } void -mac_socket_set_peer_from_mbuf(struct mbuf *mbuf, struct socket *socket) +mac_socket_peer_set_from_mbuf(struct mbuf *mbuf, struct socket *socket) { struct label *label; @@ -245,12 +245,12 @@ label = mac_mbuf_to_label(mbuf); - MAC_PERFORM(socket_set_peer_from_mbuf, mbuf, label, socket, + MAC_PERFORM(socket_peer_set_from_mbuf, mbuf, label, socket, socket->so_peerlabel); } void -mac_socket_set_peer_from_socket(struct socket *oldsocket, +mac_socket_peer_set_from_socket(struct socket *oldsocket, struct socket *newsocket) { @@ -260,7 +260,7 @@ * called in both directions, so we can't assert the lock * here currently. */ - MAC_PERFORM(socket_set_peer_from_socket, oldsocket, + MAC_PERFORM(socket_peer_set_from_socket, oldsocket, oldsocket->so_label, newsocket, newsocket->so_peerlabel); } ==== //depot/projects/trustedbsd/mac2/sys/security/mac_portacl/mac_portacl.c#2 (text+ko) ==== @@ -1,5 +1,6 @@ /*- * Copyright (c) 2003-2004 Networks Associates Technology, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed for the FreeBSD Project by Network @@ -7,6 +8,9 @@ * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), * as part of the DARPA CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -162,7 +166,7 @@ * and access via sysctl. */ static void -destroy(struct mac_policy_conf *mpc) +policy_destroy(struct mac_policy_conf *mpc) { mtx_destroy(&rule_mtx); @@ -170,7 +174,7 @@ } static void -init(struct mac_policy_conf *mpc) +policy_init(struct mac_policy_conf *mpc) { mtx_init(&rule_mtx, "rule_mtx", NULL, MTX_DEF); @@ -438,7 +442,7 @@ * the source port is left up to the IP stack to determine automatically. */ static int -check_socket_bind(struct ucred *cred, struct socket *so, +socket_check_bind(struct ucred *cred, struct socket *so, struct label *socketlabel, struct sockaddr *sockaddr) { struct sockaddr_in *sin; @@ -489,9 +493,9 @@ static struct mac_policy_ops mac_portacl_ops = { - .mpo_destroy = destroy, - .mpo_init = init, - .mpo_check_socket_bind = check_socket_bind, + .mpo_policy_destroy = policy_destroy, + .mpo_policy_init = policy_init, + .mpo_socket_check_bind = socket_check_bind, }; MAC_POLICY_SET(&mac_portacl_ops, trustedbsd_mac_portacl, ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_framework.h#14 (text+ko) ==== @@ -118,8 +118,8 @@ void mac_ifnet_init(struct ifnet *); void mac_ifnet_destroy(struct ifnet *); void mac_ifnet_create(struct ifnet *ifp); -void mac_create_mbuf_linklayer(struct ifnet *ifnet, struct mbuf *m); void mac_ifnet_create_mbuf(struct ifnet *ifnet, struct mbuf *m); +void mac_mbuf_create_linklayer(struct ifnet *ifnet, struct mbuf *m); void mac_mbuf_create_multicast_encap(struct mbuf *oldmbuf, struct ifnet *ifnet, struct mbuf *newmbuf); int mac_ifnet_check_transmit(struct ifnet *ifnet, struct mbuf *m); @@ -226,9 +226,9 @@ void mac_socket_create(struct ucred *cred, struct socket *socket); void mac_socket_accept(struct socket *oldsocket, struct socket *newsocket); -void mac_socket_set_peer_from_mbuf(struct mbuf *mbuf, +void mac_socket_peer_set_from_mbuf(struct mbuf *mbuf, struct socket *socket); -void mac_socket_set_peer_from_socket(struct socket *oldsocket, +void mac_socket_peer_set_from_socket(struct socket *oldsocket, struct socket *newsocket); int mac_socket_check_accept(struct ucred *cred, struct socket *so); int mac_socket_check_bind(struct ucred *cred, struct socket *so, ==== //depot/projects/trustedbsd/mac2/sys/sys/mac_policy.h#23 (text+ko) ==== @@ -198,10 +198,10 @@ char *element_name, char *element_data, int *claimed); typedef void (*mpo_ifnet_create_t)(struct ifnet *ifnet, struct label *ifnetlabel); -typedef void (*mpo_create_mbuf_linklayer_t)(struct ifnet *ifnet, +typedef void (*mpo_ifnet_create_mbuf_t)(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel); -typedef void (*mpo_ifnet_create_mbuf_t)(struct ifnet *ifnet, +typedef void (*mpo_mbuf_create_linklayer_t)(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel); typedef void (*mpo_mbuf_create_multicast_encap_t)(struct mbuf *oldmbuf, @@ -482,13 +482,13 @@ struct label *newsocketlabel); typedef void (*mpo_socket_relabel_t)(struct ucred *cred, struct socket *so, struct label *oldlabel, struct label *newlabel); -typedef void (*mpo_socket_set_peer_from_socket_t)(struct socket *oldsocket, +typedef void (*mpo_socket_peer_set_from_socket_t)(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketpeerlabel); typedef void (*mpo_socket_create_mbuf_t)(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel); -typedef void (*mpo_socket_set_peer_from_mbuf_t)(struct mbuf *mbuf, +typedef void (*mpo_socket_peer_set_from_mbuf_t)(struct mbuf *mbuf, struct label *mbuflabel, struct socket *so, struct label *socketpeerlabel); typedef int (*mpo_socket_check_accept_t)(struct ucred *cred, @@ -707,8 +707,8 @@ mpo_ifnet_externalize_label_t mpo_ifnet_externalize_label; mpo_ifnet_internalize_label_t mpo_ifnet_internalize_label; mpo_ifnet_create_t mpo_ifnet_create; - mpo_create_mbuf_linklayer_t mpo_create_mbuf_linklayer; mpo_ifnet_create_mbuf_t mpo_ifnet_create_mbuf; + mpo_mbuf_create_linklayer_t mpo_mbuf_create_linklayer; mpo_mbuf_create_multicast_encap_t mpo_mbuf_create_multicast_encap; mpo_ifnet_relabel_t mpo_ifnet_relabel; mpo_ifnet_check_relabel_t mpo_ifnet_check_relabel; @@ -851,9 +851,9 @@ mpo_socket_create_t mpo_socket_create; mpo_socket_accept_t mpo_socket_accept; mpo_socket_relabel_t mpo_socket_relabel; - mpo_socket_set_peer_from_socket_t mpo_socket_set_peer_from_socket; + mpo_socket_peer_set_from_socket_t mpo_socket_peer_set_from_socket; mpo_socket_create_mbuf_t mpo_socket_create_mbuf; - mpo_socket_set_peer_from_mbuf_t mpo_socket_set_peer_from_mbuf; + mpo_socket_peer_set_from_mbuf_t mpo_socket_peer_set_from_mbuf; mpo_socket_check_accept_t mpo_socket_check_accept; mpo_socket_check_bind_t mpo_socket_check_bind; mpo_socket_check_connect_t mpo_socket_check_connect; From owner-p4-projects@FreeBSD.ORG Sat Jul 8 12:26:12 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A1B2D16A4E2; Sat, 8 Jul 2006 12:26:12 +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 78CF916A4DF for ; Sat, 8 Jul 2006 12:26:12 +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 1D01F43D5C for ; Sat, 8 Jul 2006 12:25:57 +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 k68CPvI2069423 for ; Sat, 8 Jul 2006 12:25:57 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 k68CPuWi069413 for perforce@freebsd.org; Sat, 8 Jul 2006 12:25:56 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 12:25:56 GMT Message-Id: <200607081225.k68CPuWi069413@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 100985 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 12:26:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=100985 Change 100985 by rwatson@rwatson_zoo on 2006/07/08 12:25:00 Rename. Drop fslabel. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_biba/mac_biba.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_biba/mac_biba.c#2 (text+ko) ==== @@ -1,6 +1,7 @@ /*- * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2005 McAfee, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -10,6 +11,9 @@ * DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA * CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -501,7 +505,7 @@ * Policy module operations. */ static void -mac_biba_init(struct mac_policy_conf *conf) +mac_biba_policy_init(struct mac_policy_conf *conf) { zone_biba = uma_zcreate("mac_biba", sizeof(struct mac_biba), NULL, @@ -786,7 +790,7 @@ * a lot like file system objects. */ static void -mac_biba_create_devfs_device(struct ucred *cred, struct mount *mp, +mac_biba_devfs_create_device(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *devfs_dirent, struct label *label) { struct mac_biba *mac_biba; @@ -808,7 +812,7 @@ } static void -mac_biba_create_devfs_directory(struct mount *mp, char *dirname, +mac_biba_devfs_create_directory(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *devfs_dirent, struct label *label) { struct mac_biba *mac_biba; @@ -818,7 +822,7 @@ } static void -mac_biba_create_devfs_symlink(struct ucred *cred, struct mount *mp, +mac_biba_devfs_create_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, struct label *delabel) { @@ -831,20 +835,18 @@ } static void -mac_biba_create_mount(struct ucred *cred, struct mount *mp, - struct label *mntlabel, struct label *fslabel) +mac_biba_mount_create(struct ucred *cred, struct mount *mp, + struct label *mntlabel) { struct mac_biba *source, *dest; source = SLOT(cred->cr_label); dest = SLOT(mntlabel); mac_biba_copy_effective(source, dest); - dest = SLOT(fslabel); - mac_biba_copy_effective(source, dest); } static void -mac_biba_relabel_vnode(struct ucred *cred, struct vnode *vp, +mac_biba_vnode_relabel(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *label) { struct mac_biba *source, *dest; @@ -856,7 +858,7 @@ } static void -mac_biba_update_devfsdirent(struct mount *mp, +mac_biba_devfs_update(struct mount *mp, struct devfs_dirent *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel) { @@ -869,7 +871,7 @@ } static void -mac_biba_associate_vnode_devfs(struct mount *mp, struct label *fslabel, +mac_biba_devfs_vnode_associate(struct mount *mp, struct label *mountlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { @@ -882,13 +884,13 @@ } static int -mac_biba_associate_vnode_extattr(struct mount *mp, struct label *fslabel, +mac_biba_vnode_associate_extattr(struct mount *mp, struct label *mountlabel, struct vnode *vp, struct label *vlabel) { struct mac_biba temp, *source, *dest; int buflen, error; - source = SLOT(fslabel); + source = SLOT(mountlabel); dest = SLOT(vlabel); buflen = sizeof(temp); @@ -897,7 +899,7 @@ error = vn_extattr_get(vp, IO_NODELOCKED, MAC_BIBA_EXTATTR_NAMESPACE, MAC_BIBA_EXTATTR_NAME, &buflen, (char *) &temp, curthread); if (error == ENOATTR || error == EOPNOTSUPP) { - /* Fall back to the fslabel. */ + /* Fall back to the mountlabel. */ mac_biba_copy_effective(source, dest); return (0); } else if (error) @@ -922,20 +924,20 @@ } static void -mac_biba_associate_vnode_singlelabel(struct mount *mp, - struct label *fslabel, struct vnode *vp, struct label *vlabel) +mac_biba_vnode_associate_singlelabel(struct mount *mp, + struct label *mountlabel, struct vnode *vp, struct label *vlabel) { struct mac_biba *source, *dest; - source = SLOT(fslabel); + source = SLOT(mountlabel); dest = SLOT(vlabel); mac_biba_copy_effective(source, dest); } static int -mac_biba_create_vnode_extattr(struct ucred *cred, struct mount *mp, - struct label *fslabel, struct vnode *dvp, struct label *dlabel, +mac_biba_vnode_create_extattr(struct ucred *cred, struct mount *mp, + struct label *mountlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp) { struct mac_biba *source, *dest, temp; @@ -957,7 +959,7 @@ } static int -mac_biba_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, +mac_biba_vnode_setlabel_extattr(struct ucred *cred, struct vnode *vp, struct label *vlabel, struct label *intlabel) { struct mac_biba *source, temp; @@ -982,7 +984,7 @@ * Labeling event operations: IPC object. */ static void -mac_biba_create_inpcb_from_socket(struct socket *so, struct label *solabel, +mac_biba_inpcb_create(struct socket *so, struct label *solabel, struct inpcb *inp, struct label *inplabel) { struct mac_biba *source, *dest; @@ -994,7 +996,7 @@ } static void -mac_biba_create_mbuf_from_socket(struct socket *so, struct label *socketlabel, +mac_biba_socket_create_mbuf(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_biba *source, *dest; @@ -1006,7 +1008,7 @@ } static void -mac_biba_create_socket(struct ucred *cred, struct socket *socket, +mac_biba_socket_create(struct ucred *cred, struct socket *socket, struct label *socketlabel) { struct mac_biba *source, *dest; @@ -1018,7 +1020,7 @@ } static void -mac_biba_create_pipe(struct ucred *cred, struct pipepair *pp, +mac_biba_pipe_create(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_biba *source, *dest; @@ -1030,7 +1032,7 @@ } static void -mac_biba_create_posix_sem(struct ucred *cred, struct ksem *ksemptr, +mac_biba_posix_sem_create(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { struct mac_biba *source, *dest; @@ -1042,9 +1044,8 @@ } static void -mac_biba_create_socket_from_socket(struct socket *oldsocket, - struct label *oldsocketlabel, struct socket *newsocket, - struct label *newsocketlabel) +mac_biba_socket_accept(struct socket *oldsocket, struct label *oldsocketlabel, + struct socket *newsocket, struct label *newsocketlabel) { struct mac_biba *source, *dest; @@ -1055,7 +1056,7 @@ } static void -mac_biba_relabel_socket(struct ucred *cred, struct socket *socket, +mac_biba_socket_relabel(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct label *newlabel) { struct mac_biba *source, *dest; @@ -1067,7 +1068,7 @@ } static void -mac_biba_relabel_pipe(struct ucred *cred, struct pipepair *pp, +mac_biba_pipe_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { struct mac_biba *source, *dest; @@ -1079,7 +1080,7 @@ } static void -mac_biba_set_socket_peer_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, +mac_biba_socket_peer_set_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, struct socket *socket, struct label *socketpeerlabel) { struct mac_biba *source, *dest; @@ -1095,7 +1096,7 @@ */ static void -mac_biba_create_sysv_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, +mac_biba_sysvmsg_create(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { struct mac_biba *source, *dest; @@ -1108,8 +1109,8 @@ } static void -mac_biba_create_sysv_msgqueue(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqlabel) +mac_biba_sysvmsq_create(struct ucred *cred, struct msqid_kernel *msqkptr, + struct label *msqlabel) { struct mac_biba *source, *dest; @@ -1120,7 +1121,7 @@ } static void -mac_biba_create_sysv_sem(struct ucred *cred, struct semid_kernel *semakptr, +mac_biba_sysvsem_create(struct ucred *cred, struct semid_kernel *semakptr, struct label *semalabel) { struct mac_biba *source, *dest; @@ -1132,7 +1133,7 @@ } static void -mac_biba_create_sysv_shm(struct ucred *cred, struct shmid_kernel *shmsegptr, +mac_biba_sysvshm_create(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmlabel) { struct mac_biba *source, *dest; @@ -1147,7 +1148,7 @@ * Labeling event operations: network objects. */ static void -mac_biba_set_socket_peer_from_socket(struct socket *oldsocket, +mac_biba_socket_peer_set_from_socket(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketpeerlabel) { @@ -1160,7 +1161,7 @@ } static void -mac_biba_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d, +mac_biba_bpfdesc_create(struct ucred *cred, struct bpf_d *bpf_d, struct label *bpflabel) { struct mac_biba *source, *dest; @@ -1172,7 +1173,7 @@ } static void -mac_biba_create_ifnet(struct ifnet *ifnet, struct label *ifnetlabel) +mac_biba_ifnet_create(struct ifnet *ifnet, struct label *ifnetlabel) { char tifname[IFNAMSIZ], *p, *q; char tiflist[sizeof(trusted_interfaces)]; @@ -1229,7 +1230,7 @@ } static void -mac_biba_create_ipq(struct mbuf *fragment, struct label *fragmentlabel, +mac_biba_ipq_create(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { struct mac_biba *source, *dest; @@ -1241,7 +1242,7 @@ } static void -mac_biba_create_datagram_from_ipq(struct ipq *ipq, struct label *ipqlabel, +mac_biba_ipq_reassemble(struct ipq *ipq, struct label *ipqlabel, struct mbuf *datagram, struct label *datagramlabel) { struct mac_biba *source, *dest; @@ -1254,7 +1255,7 @@ } static void -mac_biba_create_fragment(struct mbuf *datagram, struct label *datagramlabel, +mac_biba_netinet_fragment(struct mbuf *datagram, struct label *datagramlabel, struct mbuf *fragment, struct label *fragmentlabel) { struct mac_biba *source, *dest; @@ -1266,7 +1267,7 @@ } static void -mac_biba_create_mbuf_from_inpcb(struct inpcb *inp, struct label *inplabel, +mac_biba_inpcb_create_mbuf(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { struct mac_biba *source, *dest; @@ -1278,7 +1279,7 @@ } static void -mac_biba_create_mbuf_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, +mac_biba_mbuf_create_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel) { struct mac_biba *dest; @@ -1289,7 +1290,7 @@ } static void -mac_biba_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct label *bpflabel, +mac_biba_bpfdesc_create_mbuf(struct bpf_d *bpf_d, struct label *bpflabel, struct mbuf *mbuf, struct label *mbuflabel) { struct mac_biba *source, *dest; @@ -1301,7 +1302,7 @@ } static void -mac_biba_create_mbuf_from_ifnet(struct ifnet *ifnet, struct label *ifnetlabel, +mac_biba_ifnet_create_mbuf(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_biba *source, *dest; @@ -1313,7 +1314,7 @@ } static void -mac_biba_create_mbuf_multicast_encap(struct mbuf *oldmbuf, +mac_biba_mbuf_create_multicast_encap(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *newmbuf, struct label *newmbuflabel) { @@ -1326,8 +1327,9 @@ } static void -mac_biba_create_mbuf_netlayer(struct mbuf *oldmbuf, struct label *oldmbuflabel, - struct mbuf *newmbuf, struct label *newmbuflabel) +mac_biba_mbuf_create_netlayer(struct mbuf *oldmbuf, + struct label *oldmbuflabel, struct mbuf *newmbuf, + struct label *newmbuflabel) { struct mac_biba *source, *dest; @@ -1338,7 +1340,7 @@ } static int -mac_biba_fragment_match(struct mbuf *fragment, struct label *fragmentlabel, +mac_biba_ipq_match(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { struct mac_biba *a, *b; @@ -1350,7 +1352,7 @@ } static void -mac_biba_relabel_ifnet(struct ucred *cred, struct ifnet *ifnet, +mac_biba_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { struct mac_biba *source, *dest; @@ -1362,7 +1364,7 @@ } static void -mac_biba_update_ipq(struct mbuf *fragment, struct label *fragmentlabel, +mac_biba_ipq_update(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { @@ -1385,7 +1387,7 @@ * Labeling event operations: processes. */ static void -mac_biba_create_proc0(struct ucred *cred) +mac_biba_proc_create_swapper(struct ucred *cred) { struct mac_biba *dest; @@ -1397,7 +1399,7 @@ } static void -mac_biba_create_proc1(struct ucred *cred) +mac_biba_proc_create_init(struct ucred *cred) { struct mac_biba *dest; @@ -1409,7 +1411,7 @@ } static void -mac_biba_relabel_cred(struct ucred *cred, struct label *newlabel) +mac_biba_cred_relabel(struct ucred *cred, struct label *newlabel) { struct mac_biba *source, *dest; @@ -1423,28 +1425,28 @@ * Label cleanup/flush operations */ static void -mac_biba_cleanup_sysv_msgmsg(struct label *msglabel) +mac_biba_sysvmsg_cleanup(struct label *msglabel) { bzero(SLOT(msglabel), sizeof(struct mac_biba)); } static void -mac_biba_cleanup_sysv_msgqueue(struct label *msqlabel) +mac_biba_sysvmsq_cleanup(struct label *msqlabel) { bzero(SLOT(msqlabel), sizeof(struct mac_biba)); } static void -mac_biba_cleanup_sysv_sem(struct label *semalabel) +mac_biba_sysvsem_cleanup(struct label *semalabel) { bzero(SLOT(semalabel), sizeof(struct mac_biba)); } static void -mac_biba_cleanup_sysv_shm(struct label *shmlabel) +mac_biba_sysvshm_cleanup(struct label *shmlabel) { bzero(SLOT(shmlabel), sizeof(struct mac_biba)); } @@ -1453,7 +1455,7 @@ * Access control checks. */ static int -mac_biba_check_bpfdesc_receive(struct bpf_d *bpf_d, struct label *bpflabel, +mac_biba_bpfdesc_check_receive(struct bpf_d *bpf_d, struct label *bpflabel, struct ifnet *ifnet, struct label *ifnetlabel) { struct mac_biba *a, *b; @@ -1470,7 +1472,7 @@ } static int -mac_biba_check_cred_relabel(struct ucred *cred, struct label *newlabel) +mac_biba_cred_check_relabel(struct ucred *cred, struct label *newlabel) { struct mac_biba *subj, *new; int error; @@ -1532,7 +1534,7 @@ } static int -mac_biba_check_cred_visible(struct ucred *u1, struct ucred *u2) +mac_biba_cred_check_visible(struct ucred *u1, struct ucred *u2) { struct mac_biba *subj, *obj; @@ -1550,7 +1552,7 @@ } static int -mac_biba_check_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, +mac_biba_ifnet_check_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { struct mac_biba *subj, *new; @@ -1578,7 +1580,7 @@ } static int -mac_biba_check_ifnet_transmit(struct ifnet *ifnet, struct label *ifnetlabel, +mac_biba_ifnet_check_transmit(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_biba *p, *i; @@ -1593,7 +1595,7 @@ } static int -mac_biba_check_inpcb_deliver(struct inpcb *inp, struct label *inplabel, +mac_biba_inpcb_check_deliver(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { struct mac_biba *p, *i; @@ -1608,7 +1610,7 @@ } static int -mac_biba_check_sysv_msgrcv(struct ucred *cred, struct msg *msgptr, +mac_biba_sysvmsq_check_msgrcv(struct ucred *cred, struct msg *msgptr, struct label *msglabel) { struct mac_biba *subj, *obj; @@ -1626,7 +1628,7 @@ } static int -mac_biba_check_sysv_msgrmid(struct ucred *cred, struct msg *msgptr, +mac_biba_sysvmsq_check_msgrmid(struct ucred *cred, struct msg *msgptr, struct label *msglabel) { struct mac_biba *subj, *obj; @@ -1644,8 +1646,8 @@ } static int -mac_biba_check_sysv_msqget(struct ucred *cred, struct msqid_kernel *msqkptr, - struct label *msqklabel) +mac_biba_sysvmsq_check_msqget(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqklabel) { struct mac_biba *subj, *obj; @@ -1662,8 +1664,8 @@ } static int -mac_biba_check_sysv_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr, - struct label *msqklabel) +mac_biba_sysvmsq_check_msqsnd(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqklabel) { struct mac_biba *subj, *obj; @@ -1680,8 +1682,8 @@ } static int -mac_biba_check_sysv_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr, - struct label *msqklabel) +mac_biba_sysvmsq_check_msqrcv(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqklabel) { struct mac_biba *subj, *obj; @@ -1699,8 +1701,8 @@ static int -mac_biba_check_sysv_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, - struct label *msqklabel, int cmd) +mac_biba_sysvmsq_check_msqctl(struct ucred *cred, + struct msqid_kernel *msqkptr, struct label *msqklabel, int cmd) { struct mac_biba *subj, *obj; @@ -1730,8 +1732,8 @@ } static int -mac_biba_check_sysv_semctl(struct ucred *cred, struct semid_kernel *semakptr, - struct label *semaklabel, int cmd) +mac_biba_sysvsem_check_semctl(struct ucred *cred, + struct semid_kernel *semakptr, struct label *semaklabel, int cmd) { struct mac_biba *subj, *obj; @@ -1769,8 +1771,8 @@ static int -mac_biba_check_sysv_semget(struct ucred *cred, struct semid_kernel *semakptr, - struct label *semaklabel) +mac_biba_sysvsem_check_semget(struct ucred *cred, + struct semid_kernel *semakptr, struct label *semaklabel) { struct mac_biba *subj, *obj; @@ -1788,8 +1790,9 @@ static int -mac_biba_check_sysv_semop(struct ucred *cred, struct semid_kernel *semakptr, - struct label *semaklabel, size_t accesstype) +mac_biba_sysvsem_check_semop(struct ucred *cred, + struct semid_kernel *semakptr, struct label *semaklabel, + size_t accesstype) { struct mac_biba *subj, *obj; @@ -1811,8 +1814,8 @@ } static int -mac_biba_check_sysv_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, - struct label *shmseglabel, int shmflg) +mac_biba_sysvshm_check_shmat(struct ucred *cred, + struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg) { struct mac_biba *subj, *obj; @@ -1833,8 +1836,8 @@ } static int -mac_biba_check_sysv_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, - struct label *shmseglabel, int cmd) +mac_biba_sysvshm_check_shmctl(struct ucred *cred, + struct shmid_kernel *shmsegptr, struct label *shmseglabel, int cmd) { struct mac_biba *subj, *obj; @@ -1865,8 +1868,8 @@ } static int -mac_biba_check_sysv_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, - struct label *shmseglabel, int shmflg) +mac_biba_sysvshm_check_shmget(struct ucred *cred, + struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg) { struct mac_biba *subj, *obj; @@ -1883,7 +1886,7 @@ } static int -mac_biba_check_kld_load(struct ucred *cred, struct vnode *vp, +mac_biba_kld_check_load(struct ucred *cred, struct vnode *vp, struct label *label) { struct mac_biba *subj, *obj; @@ -1907,7 +1910,7 @@ static int -mac_biba_check_kld_unload(struct ucred *cred) +mac_biba_kld_check_unload(struct ucred *cred) { struct mac_biba *subj; @@ -1920,7 +1923,7 @@ } static int -mac_biba_check_mount_stat(struct ucred *cred, struct mount *mp, +mac_biba_mount_check_stat(struct ucred *cred, struct mount *mp, struct label *mntlabel) { struct mac_biba *subj, *obj; @@ -1938,7 +1941,7 @@ } static int -mac_biba_check_pipe_ioctl(struct ucred *cred, struct pipepair *pp, +mac_biba_pipe_check_ioctl(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, unsigned long cmd, void /* caddr_t */ *data) { @@ -1951,7 +1954,7 @@ } static int -mac_biba_check_pipe_poll(struct ucred *cred, struct pipepair *pp, +mac_biba_pipe_check_poll(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_biba *subj, *obj; @@ -1969,7 +1972,7 @@ } static int -mac_biba_check_pipe_read(struct ucred *cred, struct pipepair *pp, +mac_biba_pipe_check_read(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_biba *subj, *obj; @@ -1987,7 +1990,7 @@ } static int -mac_biba_check_pipe_relabel(struct ucred *cred, struct pipepair *pp, +mac_biba_pipe_check_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { struct mac_biba *subj, *obj, *new; @@ -2038,7 +2041,7 @@ } static int -mac_biba_check_pipe_stat(struct ucred *cred, struct pipepair *pp, +mac_biba_pipe_check_stat(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_biba *subj, *obj; @@ -2056,7 +2059,7 @@ } static int -mac_biba_check_pipe_write(struct ucred *cred, struct pipepair *pp, +mac_biba_pipe_check_write(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_biba *subj, *obj; @@ -2074,7 +2077,7 @@ } static int -mac_biba_check_posix_sem_write(struct ucred *cred, struct ksem *ksemptr, +mac_biba_posix_sem_check_write(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { struct mac_biba *subj, *obj; @@ -2092,7 +2095,7 @@ } static int -mac_biba_check_posix_sem_rdonly(struct ucred *cred, struct ksem *ksemptr, +mac_biba_posix_sem_check_rdonly(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { struct mac_biba *subj, *obj; @@ -2110,7 +2113,7 @@ } static int -mac_biba_check_proc_debug(struct ucred *cred, struct proc *proc) +mac_biba_proc_check_debug(struct ucred *cred, struct proc *proc) { struct mac_biba *subj, *obj; @@ -2130,7 +2133,7 @@ } static int -mac_biba_check_proc_sched(struct ucred *cred, struct proc *proc) +mac_biba_proc_check_sched(struct ucred *cred, struct proc *proc) { struct mac_biba *subj, *obj; @@ -2150,7 +2153,7 @@ } static int -mac_biba_check_proc_signal(struct ucred *cred, struct proc *proc, int signum) +mac_biba_proc_check_signal(struct ucred *cred, struct proc *proc, int signum) { struct mac_biba *subj, *obj; @@ -2170,7 +2173,7 @@ } static int -mac_biba_check_socket_deliver(struct socket *so, struct label *socketlabel, +mac_biba_socket_check_deliver(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_biba *p, *s; @@ -2185,7 +2188,7 @@ } static int -mac_biba_check_socket_relabel(struct ucred *cred, struct socket *so, +mac_biba_socket_check_relabel(struct ucred *cred, struct socket *so, struct label *socketlabel, struct label *newlabel) { struct mac_biba *subj, *obj, *new; @@ -2236,7 +2239,7 @@ } static int -mac_biba_check_socket_visible(struct ucred *cred, struct socket *socket, +mac_biba_socket_check_visible(struct ucred *cred, struct socket *socket, struct label *socketlabel) { struct mac_biba *subj, *obj; @@ -2254,7 +2257,7 @@ } static int -mac_biba_check_sysarch_ioperm(struct ucred *cred) +mac_biba_system_check_ioperm(struct ucred *cred) { struct mac_biba *subj; int error; @@ -2272,7 +2275,7 @@ } static int -mac_biba_check_system_acct(struct ucred *cred, struct vnode *vp, +mac_biba_system_check_acct(struct ucred *cred, struct vnode *vp, struct label *label) { struct mac_biba *subj, *obj; @@ -2298,7 +2301,7 @@ } static int -mac_biba_check_system_settime(struct ucred *cred) +mac_biba_system_check_settime(struct ucred *cred) { struct mac_biba *subj; int error; @@ -2316,7 +2319,7 @@ } static int -mac_biba_check_system_swapon(struct ucred *cred, struct vnode *vp, +mac_biba_system_check_swapon(struct ucred *cred, struct vnode *vp, struct label *label) { struct mac_biba *subj, *obj; @@ -2339,7 +2342,7 @@ } static int -mac_biba_check_system_swapoff(struct ucred *cred, struct vnode *vp, +mac_biba_system_check_swapoff(struct ucred *cred, struct vnode *vp, struct label *label) { struct mac_biba *subj, *obj; @@ -2359,7 +2362,7 @@ } static int -mac_biba_check_system_sysctl(struct ucred *cred, struct sysctl_oid *oidp, +mac_biba_system_check_sysctl(struct ucred *cred, struct sysctl_oid *oidp, void *arg1, int arg2, struct sysctl_req *req) { struct mac_biba *subj; @@ -2387,7 +2390,7 @@ } static int -mac_biba_check_vnode_chdir(struct ucred *cred, struct vnode *dvp, +mac_biba_vnode_check_chdir(struct ucred *cred, struct vnode *dvp, struct label *dlabel) { struct mac_biba *subj, *obj; @@ -2405,7 +2408,7 @@ } static int -mac_biba_check_vnode_chroot(struct ucred *cred, struct vnode *dvp, +mac_biba_vnode_check_chroot(struct ucred *cred, struct vnode *dvp, struct label *dlabel) { struct mac_biba *subj, *obj; @@ -2423,7 +2426,7 @@ } static int -mac_biba_check_vnode_create(struct ucred *cred, struct vnode *dvp, +mac_biba_vnode_check_create(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp, struct vattr *vap) { struct mac_biba *subj, *obj; @@ -2441,31 +2444,7 @@ } static int -mac_biba_check_vnode_delete(struct ucred *cred, struct vnode *dvp, - struct label *dlabel, struct vnode *vp, struct label *label, - struct componentname *cnp) -{ - struct mac_biba *subj, *obj; - - if (!mac_biba_enabled) - return (0); - - subj = SLOT(cred->cr_label); - obj = SLOT(dlabel); - - if (!mac_biba_dominate_effective(subj, obj)) - return (EACCES); - - obj = SLOT(label); - - if (!mac_biba_dominate_effective(subj, obj)) - return (EACCES); - - return (0); -} - -static int -mac_biba_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, +mac_biba_vnode_check_deleteacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type) { struct mac_biba *subj, *obj; @@ -2483,7 +2462,7 @@ } static int -mac_biba_check_vnode_deleteextattr(struct ucred *cred, struct vnode *vp, +mac_biba_vnode_check_deleteextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name) { struct mac_biba *subj, *obj; @@ -2501,7 +2480,7 @@ } static int -mac_biba_check_vnode_exec(struct ucred *cred, struct vnode *vp, +mac_biba_vnode_check_exec(struct ucred *cred, struct vnode *vp, struct label *label, struct image_params *imgp, struct label *execlabel) { @@ -2533,7 +2512,7 @@ } static int -mac_biba_check_vnode_getacl(struct ucred *cred, struct vnode *vp, +mac_biba_vnode_check_getacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type) { struct mac_biba *subj, *obj; @@ -2551,7 +2530,7 @@ } static int -mac_biba_check_vnode_getextattr(struct ucred *cred, struct vnode *vp, +mac_biba_vnode_check_getextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name, struct uio *uio) { struct mac_biba *subj, *obj; @@ -2569,7 +2548,7 @@ } static int -mac_biba_check_vnode_link(struct ucred *cred, struct vnode *dvp, +mac_biba_vnode_check_link(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp) { @@ -2593,7 +2572,7 @@ } static int -mac_biba_check_vnode_listextattr(struct ucred *cred, struct vnode *vp, +mac_biba_vnode_check_listextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace) { struct mac_biba *subj, *obj; @@ -2611,7 +2590,7 @@ } static int -mac_biba_check_vnode_lookup(struct ucred *cred, struct vnode *dvp, +mac_biba_vnode_check_lookup(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 8 12:29:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EA1AD16A4E0; Sat, 8 Jul 2006 12:29:01 +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 C16F816A4DA for ; Sat, 8 Jul 2006 12:29:01 +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 7489C43D49 for ; Sat, 8 Jul 2006 12:29:01 +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 k68CT1dk071711 for ; Sat, 8 Jul 2006 12:29:01 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 k68CT1mF071702 for perforce@freebsd.org; Sat, 8 Jul 2006 12:29:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 12:29:01 GMT Message-Id: <200607081229.k68CT1mF071702@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 100986 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 12:29:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=100986 Change 100986 by rwatson@rwatson_zoo on 2006/07/08 12:28:18 Remove mac_ifoff and mac_partition from the mac2 branch, they will be maintained elsewhere. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_ifoff/mac_ifoff.c#2 delete .. //depot/projects/trustedbsd/mac2/sys/security/mac_partition/mac_partition.c#2 delete .. //depot/projects/trustedbsd/mac2/sys/security/mac_partition/mac_partition.h#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Sat Jul 8 12:30:04 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AF1A516A4E0; Sat, 8 Jul 2006 12:30:04 +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 66ACD16A4DA for ; Sat, 8 Jul 2006 12:30:04 +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 1022943D49 for ; Sat, 8 Jul 2006 12:30:04 +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 k68CU349073624 for ; Sat, 8 Jul 2006 12:30:03 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 k68CU3o7073609 for perforce@freebsd.org; Sat, 8 Jul 2006 12:30:03 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 12:30:03 GMT Message-Id: <200607081230.k68CU3o7073609@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 100987 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 12:30:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=100987 Change 100987 by rwatson@rwatson_zoo on 2006/07/08 12:29:59 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_seeotheruids/mac_seeotheruids.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_seeotheruids/mac_seeotheruids.c#2 (text+ko) ==== @@ -1,6 +1,7 @@ /*- * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2002 Networks Associates Technology, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -10,6 +11,9 @@ * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), * as part of the DARPA CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -134,14 +138,14 @@ } static int -mac_seeotheruids_check_cred_visible(struct ucred *u1, struct ucred *u2) +mac_seeotheruids_cred_check_visible(struct ucred *u1, struct ucred *u2) { return (mac_seeotheruids_check(u1, u2)); } static int -mac_seeotheruids_check_proc_signal(struct ucred *cred, struct proc *proc, +mac_seeotheruids_proc_check_signal(struct ucred *cred, struct proc *proc, int signum) { @@ -149,21 +153,21 @@ } static int -mac_seeotheruids_check_proc_sched(struct ucred *cred, struct proc *proc) +mac_seeotheruids_proc_check_sched(struct ucred *cred, struct proc *proc) { return (mac_seeotheruids_check(cred, proc->p_ucred)); } static int -mac_seeotheruids_check_proc_debug(struct ucred *cred, struct proc *proc) +mac_seeotheruids_proc_check_debug(struct ucred *cred, struct proc *proc) { return (mac_seeotheruids_check(cred, proc->p_ucred)); } static int -mac_seeotheruids_check_socket_visible(struct ucred *cred, struct socket *socket, +mac_seeotheruids_socket_check_visible(struct ucred *cred, struct socket *socket, struct label *socketlabel) { @@ -172,11 +176,11 @@ static struct mac_policy_ops mac_seeotheruids_ops = { - .mpo_check_cred_visible = mac_seeotheruids_check_cred_visible, - .mpo_check_proc_debug = mac_seeotheruids_check_proc_debug, - .mpo_check_proc_sched = mac_seeotheruids_check_proc_sched, - .mpo_check_proc_signal = mac_seeotheruids_check_proc_signal, - .mpo_check_socket_visible = mac_seeotheruids_check_socket_visible, + .mpo_cred_check_visible = mac_seeotheruids_cred_check_visible, + .mpo_proc_check_debug = mac_seeotheruids_proc_check_debug, + .mpo_proc_check_sched = mac_seeotheruids_proc_check_sched, + .mpo_proc_check_signal = mac_seeotheruids_proc_check_signal, + .mpo_socket_check_visible = mac_seeotheruids_socket_check_visible, }; MAC_POLICY_SET(&mac_seeotheruids_ops, mac_seeotheruids, From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:00:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7BC7616A4E5; Sat, 8 Jul 2006 13:00:43 +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 3CF2016A4E1 for ; Sat, 8 Jul 2006 13:00:43 +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 B27A343D46 for ; Sat, 8 Jul 2006 13:00:42 +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 k68D0guW003070 for ; Sat, 8 Jul 2006 13:00:42 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 k68D0g84003061 for perforce@freebsd.org; Sat, 8 Jul 2006 13:00:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:00:42 GMT Message-Id: <200607081300.k68D0g84003061@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 100989 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:00:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=100989 Change 100989 by rwatson@rwatson_zoo on 2006/07/08 13:00:04 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_mls/mac_mls.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_mls/mac_mls.c#2 (text+ko) ==== @@ -1,6 +1,7 @@ /*- * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2005 McAfee, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -10,6 +11,9 @@ * DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA * CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -461,7 +465,7 @@ * Policy module operations. */ static void -mac_mls_init(struct mac_policy_conf *conf) +mac_mls_policy_init(struct mac_policy_conf *conf) { zone_mls = uma_zcreate("mac_mls", sizeof(struct mac_mls), NULL, @@ -747,7 +751,7 @@ * a lot like file system objects. */ static void -mac_mls_create_devfs_device(struct ucred *cred, struct mount *mp, +mac_mls_devfs_create_device(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *devfs_dirent, struct label *label) { struct mac_mls *mac_mls; @@ -772,7 +776,7 @@ } static void -mac_mls_create_devfs_directory(struct mount *mp, char *dirname, +mac_mls_devfs_create_directory(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *devfs_dirent, struct label *label) { struct mac_mls *mac_mls; @@ -782,7 +786,7 @@ } static void -mac_mls_create_devfs_symlink(struct ucred *cred, struct mount *mp, +mac_mls_devfs_create_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, struct label *delabel) { @@ -795,20 +799,18 @@ } static void -mac_mls_create_mount(struct ucred *cred, struct mount *mp, - struct label *mntlabel, struct label *fslabel) +mac_mls_mount_create(struct ucred *cred, struct mount *mp, + struct label *mntlabel) { struct mac_mls *source, *dest; source = SLOT(cred->cr_label); dest = SLOT(mntlabel); mac_mls_copy_effective(source, dest); - dest = SLOT(fslabel); - mac_mls_copy_effective(source, dest); } static void -mac_mls_relabel_vnode(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_relabel(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *label) { struct mac_mls *source, *dest; @@ -820,7 +822,7 @@ } static void -mac_mls_update_devfsdirent(struct mount *mp, +mac_mls_devfs_update(struct mount *mp, struct devfs_dirent *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel) { @@ -833,7 +835,7 @@ } static void -mac_mls_associate_vnode_devfs(struct mount *mp, struct label *fslabel, +mac_mls_devfs_vnode_associate(struct mount *mp, struct label *mntlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { @@ -846,13 +848,13 @@ } static int -mac_mls_associate_vnode_extattr(struct mount *mp, struct label *fslabel, +mac_mls_vnode_associate_extattr(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { struct mac_mls temp, *source, *dest; int buflen, error; - source = SLOT(fslabel); + source = SLOT(mntlabel); dest = SLOT(vlabel); buflen = sizeof(temp); @@ -861,19 +863,19 @@ error = vn_extattr_get(vp, IO_NODELOCKED, MAC_MLS_EXTATTR_NAMESPACE, MAC_MLS_EXTATTR_NAME, &buflen, (char *) &temp, curthread); if (error == ENOATTR || error == EOPNOTSUPP) { - /* Fall back to the fslabel. */ + /* Fall back to the mntlabel. */ mac_mls_copy_effective(source, dest); return (0); } else if (error) return (error); if (buflen != sizeof(temp)) { - printf("mac_mls_associate_vnode_extattr: bad size %d\n", + printf("mac_mls_vnode_associate_extattr: bad size %d\n", buflen); return (EPERM); } if (mac_mls_valid(&temp) != 0) { - printf("mac_mls_associate_vnode_extattr: invalid\n"); + printf("mac_mls_vnode_associate_extattr: invalid\n"); return (EPERM); } if ((temp.mm_flags & MAC_MLS_FLAGS_BOTH) != MAC_MLS_FLAG_EFFECTIVE) { @@ -886,20 +888,20 @@ } static void -mac_mls_associate_vnode_singlelabel(struct mount *mp, - struct label *fslabel, struct vnode *vp, struct label *vlabel) +mac_mls_vnode_associate_singlelabel(struct mount *mp, + struct label *mntlabel, struct vnode *vp, struct label *vlabel) { struct mac_mls *source, *dest; - source = SLOT(fslabel); + source = SLOT(mntlabel); dest = SLOT(vlabel); mac_mls_copy_effective(source, dest); } static int -mac_mls_create_vnode_extattr(struct ucred *cred, struct mount *mp, - struct label *fslabel, struct vnode *dvp, struct label *dlabel, +mac_mls_vnode_create_extattr(struct ucred *cred, struct mount *mp, + struct label *mntlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp) { struct mac_mls *source, *dest, temp; @@ -921,7 +923,7 @@ } static int -mac_mls_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_setlabel_extattr(struct ucred *cred, struct vnode *vp, struct label *vlabel, struct label *intlabel) { struct mac_mls *source, temp; @@ -946,7 +948,7 @@ * Labeling event operations: IPC object. */ static void -mac_mls_create_inpcb_from_socket(struct socket *so, struct label *solabel, +mac_mls_inpcb_create(struct socket *so, struct label *solabel, struct inpcb *inp, struct label *inplabel) { struct mac_mls *source, *dest; @@ -958,7 +960,7 @@ } static void -mac_mls_create_mbuf_from_socket(struct socket *so, struct label *socketlabel, +mac_mls_socket_create_mbuf(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_mls *source, *dest; @@ -970,7 +972,7 @@ } static void -mac_mls_create_socket(struct ucred *cred, struct socket *socket, +mac_mls_socket_create(struct ucred *cred, struct socket *socket, struct label *socketlabel) { struct mac_mls *source, *dest; @@ -982,7 +984,7 @@ } static void -mac_mls_create_pipe(struct ucred *cred, struct pipepair *pp, +mac_mls_pipe_create(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_mls *source, *dest; @@ -994,7 +996,7 @@ } static void -mac_mls_create_posix_sem(struct ucred *cred, struct ksem *ksemptr, +mac_mls_posix_sem_create(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { struct mac_mls *source, *dest; @@ -1006,7 +1008,7 @@ } static void -mac_mls_create_socket_from_socket(struct socket *oldsocket, +mac_mls_socket_accept(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketlabel) { @@ -1019,7 +1021,7 @@ } static void -mac_mls_relabel_socket(struct ucred *cred, struct socket *socket, +mac_mls_socket_relabel(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct label *newlabel) { struct mac_mls *source, *dest; @@ -1031,7 +1033,7 @@ } static void -mac_mls_relabel_pipe(struct ucred *cred, struct pipepair *pp, +mac_mls_pipe_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { struct mac_mls *source, *dest; @@ -1043,7 +1045,7 @@ } static void -mac_mls_set_socket_peer_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, +mac_mls_socket_peer_set_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, struct socket *socket, struct label *socketpeerlabel) { struct mac_mls *source, *dest; @@ -1059,7 +1061,7 @@ */ static void -mac_mls_create_sysv_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, +mac_mls_sysvmsg_create(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { struct mac_mls *source, *dest; @@ -1072,7 +1074,7 @@ } static void -mac_mls_create_sysv_msgqueue(struct ucred *cred, struct msqid_kernel *msqkptr, +mac_mls_sysvmsq_create(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel) { struct mac_mls *source, *dest; @@ -1084,7 +1086,7 @@ } static void -mac_mls_create_sysv_sem(struct ucred *cred, struct semid_kernel *semakptr, +mac_mls_sysvsem_create(struct ucred *cred, struct semid_kernel *semakptr, struct label *semalabel) { struct mac_mls *source, *dest; @@ -1096,7 +1098,7 @@ } static void -mac_mls_create_sysv_shm(struct ucred *cred, struct shmid_kernel *shmsegptr, +mac_mls_sysvshm_create(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmlabel) { struct mac_mls *source, *dest; @@ -1111,7 +1113,7 @@ * Labeling event operations: network objects. */ static void -mac_mls_set_socket_peer_from_socket(struct socket *oldsocket, +mac_mls_socket_peer_set_from_socket(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketpeerlabel) { @@ -1124,7 +1126,7 @@ } static void -mac_mls_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d, +mac_mls_bpfdesc_create(struct ucred *cred, struct bpf_d *bpf_d, struct label *bpflabel) { struct mac_mls *source, *dest; @@ -1136,7 +1138,7 @@ } static void -mac_mls_create_ifnet(struct ifnet *ifnet, struct label *ifnetlabel) +mac_mls_ifnet_create(struct ifnet *ifnet, struct label *ifnetlabel) { struct mac_mls *dest; int type; @@ -1153,7 +1155,7 @@ } static void -mac_mls_create_ipq(struct mbuf *fragment, struct label *fragmentlabel, +mac_mls_ipq_create(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { struct mac_mls *source, *dest; @@ -1165,7 +1167,7 @@ } static void -mac_mls_create_datagram_from_ipq(struct ipq *ipq, struct label *ipqlabel, +mac_mls_ipq_reassemble(struct ipq *ipq, struct label *ipqlabel, struct mbuf *datagram, struct label *datagramlabel) { struct mac_mls *source, *dest; @@ -1178,7 +1180,7 @@ } static void -mac_mls_create_fragment(struct mbuf *datagram, struct label *datagramlabel, +mac_mls_netinet_fragment(struct mbuf *datagram, struct label *datagramlabel, struct mbuf *fragment, struct label *fragmentlabel) { struct mac_mls *source, *dest; @@ -1190,7 +1192,7 @@ } static void -mac_mls_create_mbuf_from_inpcb(struct inpcb *inp, struct label *inplabel, +mac_mls_inpcb_create_mbuf(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { struct mac_mls *source, *dest; @@ -1202,7 +1204,7 @@ } static void -mac_mls_create_mbuf_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, +mac_mls_mbuf_create_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel) { struct mac_mls *dest; @@ -1213,7 +1215,7 @@ } static void -mac_mls_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct label *bpflabel, +mac_mls_bpfdesc_create_mbuf(struct bpf_d *bpf_d, struct label *bpflabel, struct mbuf *mbuf, struct label *mbuflabel) { struct mac_mls *source, *dest; @@ -1225,7 +1227,7 @@ } static void -mac_mls_create_mbuf_from_ifnet(struct ifnet *ifnet, struct label *ifnetlabel, +mac_mls_ifnet_create_mbuf(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_mls *source, *dest; @@ -1237,7 +1239,7 @@ } static void -mac_mls_create_mbuf_multicast_encap(struct mbuf *oldmbuf, +mac_mls_mbuf_create_multicast_encap(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *newmbuf, struct label *newmbuflabel) { @@ -1250,7 +1252,7 @@ } static void -mac_mls_create_mbuf_netlayer(struct mbuf *oldmbuf, struct label *oldmbuflabel, +mac_mls_mbuf_create_netlayer(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct mbuf *newmbuf, struct label *newmbuflabel) { struct mac_mls *source, *dest; @@ -1262,7 +1264,7 @@ } static int -mac_mls_fragment_match(struct mbuf *fragment, struct label *fragmentlabel, +mac_mls_ipq_match(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { struct mac_mls *a, *b; @@ -1274,7 +1276,7 @@ } static void -mac_mls_relabel_ifnet(struct ucred *cred, struct ifnet *ifnet, +mac_mls_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { struct mac_mls *source, *dest; @@ -1286,7 +1288,7 @@ } static void -mac_mls_update_ipq(struct mbuf *fragment, struct label *fragmentlabel, +mac_mls_ipq_update(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { @@ -1309,7 +1311,7 @@ * Labeling event operations: processes. */ static void -mac_mls_create_proc0(struct ucred *cred) +mac_mls_proc_create_swapper(struct ucred *cred) { struct mac_mls *dest; @@ -1321,7 +1323,7 @@ } static void -mac_mls_create_proc1(struct ucred *cred) +mac_mls_proc_create_init(struct ucred *cred) { struct mac_mls *dest; @@ -1333,7 +1335,7 @@ } static void -mac_mls_relabel_cred(struct ucred *cred, struct label *newlabel) +mac_mls_cred_relabel(struct ucred *cred, struct label *newlabel) { struct mac_mls *source, *dest; @@ -1347,28 +1349,28 @@ * Label cleanup/flush operations. */ static void -mac_mls_cleanup_sysv_msgmsg(struct label *msglabel) +mac_mls_sysvmsg_cleanup(struct label *msglabel) { bzero(SLOT(msglabel), sizeof(struct mac_mls)); } static void -mac_mls_cleanup_sysv_msgqueue(struct label *msqlabel) +mac_mls_sysvmsq_cleanup(struct label *msqlabel) { bzero(SLOT(msqlabel), sizeof(struct mac_mls)); } static void -mac_mls_cleanup_sysv_sem(struct label *semalabel) +mac_mls_sysvsem_cleanup(struct label *semalabel) { bzero(SLOT(semalabel), sizeof(struct mac_mls)); } static void -mac_mls_cleanup_sysv_shm(struct label *shmlabel) +mac_mls_sysvshm_cleanup(struct label *shmlabel) { bzero(SLOT(shmlabel), sizeof(struct mac_mls)); @@ -1378,7 +1380,7 @@ * Access control checks. */ static int -mac_mls_check_bpfdesc_receive(struct bpf_d *bpf_d, struct label *bpflabel, +mac_mls_bpfdesc_check_receive(struct bpf_d *bpf_d, struct label *bpflabel, struct ifnet *ifnet, struct label *ifnetlabel) { struct mac_mls *a, *b; @@ -1395,7 +1397,7 @@ } static int -mac_mls_check_cred_relabel(struct ucred *cred, struct label *newlabel) +mac_mls_cred_check_relabel(struct ucred *cred, struct label *newlabel) { struct mac_mls *subj, *new; int error; @@ -1457,7 +1459,7 @@ } static int -mac_mls_check_cred_visible(struct ucred *u1, struct ucred *u2) +mac_mls_cred_check_visible(struct ucred *u1, struct ucred *u2) { struct mac_mls *subj, *obj; @@ -1475,7 +1477,7 @@ } static int -mac_mls_check_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, +mac_mls_ifnet_check_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { struct mac_mls *subj, *new; @@ -1501,7 +1503,7 @@ } static int -mac_mls_check_ifnet_transmit(struct ifnet *ifnet, struct label *ifnetlabel, +mac_mls_ifnet_check_transmit(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_mls *p, *i; @@ -1516,7 +1518,7 @@ } static int -mac_mls_check_inpcb_deliver(struct inpcb *inp, struct label *inplabel, +mac_mls_inpcb_check_deliver(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { struct mac_mls *p, *i; @@ -1531,7 +1533,7 @@ } static int -mac_mls_check_sysv_msgrcv(struct ucred *cred, struct msg *msgptr, +mac_mls_sysvmsq_check_msgrcv(struct ucred *cred, struct msg *msgptr, struct label *msglabel) { struct mac_mls *subj, *obj; @@ -1549,7 +1551,7 @@ } static int -mac_mls_check_sysv_msgrmid(struct ucred *cred, struct msg *msgptr, +mac_mls_sysvmsq_check_msgrmid(struct ucred *cred, struct msg *msgptr, struct label *msglabel) { struct mac_mls *subj, *obj; @@ -1567,7 +1569,7 @@ } static int -mac_mls_check_sysv_msqget(struct ucred *cred, struct msqid_kernel *msqkptr, +mac_mls_sysvmsq_check_msqget(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel) { struct mac_mls *subj, *obj; @@ -1585,7 +1587,7 @@ } static int -mac_mls_check_sysv_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr, +mac_mls_sysvmsq_check_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel) { struct mac_mls *subj, *obj; @@ -1603,7 +1605,7 @@ } static int -mac_mls_check_sysv_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr, +mac_mls_sysvmsq_check_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel) { struct mac_mls *subj, *obj; @@ -1621,7 +1623,7 @@ } static int -mac_mls_check_sysv_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, +mac_mls_sysvmsq_check_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel, int cmd) { struct mac_mls *subj, *obj; @@ -1652,7 +1654,7 @@ } static int -mac_mls_check_sysv_semctl(struct ucred *cred, struct semid_kernel *semakptr, +mac_mls_sysvsem_check_semctl(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel, int cmd) { struct mac_mls *subj, *obj; @@ -1690,7 +1692,7 @@ } static int -mac_mls_check_sysv_semget(struct ucred *cred, struct semid_kernel *semakptr, +mac_mls_sysvsem_check_semget(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel) { struct mac_mls *subj, *obj; @@ -1708,7 +1710,7 @@ } static int -mac_mls_check_sysv_semop(struct ucred *cred, struct semid_kernel *semakptr, +mac_mls_sysvsem_check_semop(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel, size_t accesstype) { struct mac_mls *subj, *obj; @@ -1731,7 +1733,7 @@ } static int -mac_mls_check_sysv_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, +mac_mls_sysvshm_check_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg) { struct mac_mls *subj, *obj; @@ -1752,7 +1754,7 @@ } static int -mac_mls_check_sysv_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, +mac_mls_sysvshm_check_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int cmd) { struct mac_mls *subj, *obj; @@ -1784,7 +1786,7 @@ } static int -mac_mls_check_sysv_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, +mac_mls_sysvshm_check_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg) { struct mac_mls *subj, *obj; @@ -1802,7 +1804,7 @@ } static int -mac_mls_check_mount_stat(struct ucred *cred, struct mount *mp, +mac_mls_mount_check_stat(struct ucred *cred, struct mount *mp, struct label *mntlabel) { struct mac_mls *subj, *obj; @@ -1820,7 +1822,7 @@ } static int -mac_mls_check_pipe_ioctl(struct ucred *cred, struct pipepair *pp, +mac_mls_pipe_check_ioctl(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, unsigned long cmd, void /* caddr_t */ *data) { @@ -1833,7 +1835,7 @@ } static int -mac_mls_check_pipe_poll(struct ucred *cred, struct pipepair *pp, +mac_mls_pipe_check_poll(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_mls *subj, *obj; @@ -1851,7 +1853,7 @@ } static int -mac_mls_check_pipe_read(struct ucred *cred, struct pipepair *pp, +mac_mls_pipe_check_read(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_mls *subj, *obj; @@ -1869,7 +1871,7 @@ } static int -mac_mls_check_pipe_relabel(struct ucred *cred, struct pipepair *pp, +mac_mls_pipe_check_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { struct mac_mls *subj, *obj, *new; @@ -1920,7 +1922,7 @@ } static int -mac_mls_check_pipe_stat(struct ucred *cred, struct pipepair *pp, +mac_mls_pipe_check_stat(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_mls *subj, *obj; @@ -1938,7 +1940,7 @@ } static int -mac_mls_check_pipe_write(struct ucred *cred, struct pipepair *pp, +mac_mls_pipe_check_write(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_mls *subj, *obj; @@ -1956,7 +1958,7 @@ } static int -mac_mls_check_posix_sem_write(struct ucred *cred, struct ksem *ksemptr, +mac_mls_posix_sem_check_write(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { struct mac_mls *subj, *obj; @@ -1974,7 +1976,7 @@ } static int -mac_mls_check_posix_sem_rdonly(struct ucred *cred, struct ksem *ksemptr, +mac_mls_posix_sem_check_rdonly(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { struct mac_mls *subj, *obj; @@ -1992,7 +1994,7 @@ } static int -mac_mls_check_proc_debug(struct ucred *cred, struct proc *proc) +mac_mls_proc_check_debug(struct ucred *cred, struct proc *proc) { struct mac_mls *subj, *obj; @@ -2012,7 +2014,7 @@ } static int -mac_mls_check_proc_sched(struct ucred *cred, struct proc *proc) +mac_mls_proc_check_sched(struct ucred *cred, struct proc *proc) { struct mac_mls *subj, *obj; @@ -2032,7 +2034,7 @@ } static int -mac_mls_check_proc_signal(struct ucred *cred, struct proc *proc, int signum) +mac_mls_proc_check_signal(struct ucred *cred, struct proc *proc, int signum) { struct mac_mls *subj, *obj; @@ -2052,7 +2054,7 @@ } static int -mac_mls_check_socket_deliver(struct socket *so, struct label *socketlabel, +mac_mls_socket_check_deliver(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_mls *p, *s; @@ -2067,7 +2069,7 @@ } static int -mac_mls_check_socket_relabel(struct ucred *cred, struct socket *socket, +mac_mls_socket_check_relabel(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct label *newlabel) { struct mac_mls *subj, *obj, *new; @@ -2118,7 +2120,7 @@ } static int -mac_mls_check_socket_visible(struct ucred *cred, struct socket *socket, +mac_mls_socket_check_visible(struct ucred *cred, struct socket *socket, struct label *socketlabel) { struct mac_mls *subj, *obj; @@ -2136,7 +2138,7 @@ } static int -mac_mls_check_system_swapon(struct ucred *cred, struct vnode *vp, +mac_mls_system_check_swapon(struct ucred *cred, struct vnode *vp, struct label *label) { struct mac_mls *subj, *obj; @@ -2155,7 +2157,7 @@ } static int -mac_mls_check_vnode_chdir(struct ucred *cred, struct vnode *dvp, +mac_mls_vnode_check_chdir(struct ucred *cred, struct vnode *dvp, struct label *dlabel) { struct mac_mls *subj, *obj; @@ -2173,7 +2175,7 @@ } static int -mac_mls_check_vnode_chroot(struct ucred *cred, struct vnode *dvp, +mac_mls_vnode_check_chroot(struct ucred *cred, struct vnode *dvp, struct label *dlabel) { struct mac_mls *subj, *obj; @@ -2191,7 +2193,7 @@ } static int -mac_mls_check_vnode_create(struct ucred *cred, struct vnode *dvp, +mac_mls_vnode_check_create(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp, struct vattr *vap) { struct mac_mls *subj, *obj; @@ -2209,31 +2211,7 @@ } static int -mac_mls_check_vnode_delete(struct ucred *cred, struct vnode *dvp, - struct label *dlabel, struct vnode *vp, struct label *label, - struct componentname *cnp) -{ - struct mac_mls *subj, *obj; - - if (!mac_mls_enabled) - return (0); - - subj = SLOT(cred->cr_label); - obj = SLOT(dlabel); - - if (!mac_mls_dominate_effective(obj, subj)) - return (EACCES); - - obj = SLOT(label); - - if (!mac_mls_dominate_effective(obj, subj)) - return (EACCES); - - return (0); -} - -static int -mac_mls_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_deleteacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type) { struct mac_mls *subj, *obj; @@ -2251,7 +2229,7 @@ } static int -mac_mls_check_vnode_deleteextattr(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_deleteextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name) { struct mac_mls *subj, *obj; @@ -2269,7 +2247,7 @@ } static int -mac_mls_check_vnode_exec(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_exec(struct ucred *cred, struct vnode *vp, struct label *label, struct image_params *imgp, struct label *execlabel) { @@ -2301,7 +2279,7 @@ } static int -mac_mls_check_vnode_getacl(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_getacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type) { struct mac_mls *subj, *obj; @@ -2319,7 +2297,7 @@ } static int -mac_mls_check_vnode_getextattr(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_getextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name, struct uio *uio) { struct mac_mls *subj, *obj; @@ -2337,7 +2315,7 @@ } static int -mac_mls_check_vnode_link(struct ucred *cred, struct vnode *dvp, +mac_mls_vnode_check_link(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp) { @@ -2360,7 +2338,7 @@ } static int -mac_mls_check_vnode_listextattr(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_listextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace) { @@ -2379,7 +2357,7 @@ } static int -mac_mls_check_vnode_lookup(struct ucred *cred, struct vnode *dvp, +mac_mls_vnode_check_lookup(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp) { struct mac_mls *subj, *obj; @@ -2397,7 +2375,7 @@ } static int -mac_mls_check_vnode_mmap(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_mmap(struct ucred *cred, struct vnode *vp, struct label *label, int prot, int flags) { struct mac_mls *subj, *obj; @@ -2425,7 +2403,7 @@ } static int -mac_mls_check_vnode_open(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_open(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, int acc_mode) { struct mac_mls *subj, *obj; @@ -2450,7 +2428,7 @@ } static int -mac_mls_check_vnode_poll(struct ucred *active_cred, struct ucred *file_cred, +mac_mls_vnode_check_poll(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label) { struct mac_mls *subj, *obj; @@ -2468,7 +2446,7 @@ } static int -mac_mls_check_vnode_read(struct ucred *active_cred, struct ucred *file_cred, +mac_mls_vnode_check_read(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label) { struct mac_mls *subj, *obj; @@ -2486,7 +2464,7 @@ } static int -mac_mls_check_vnode_readdir(struct ucred *cred, struct vnode *dvp, +mac_mls_vnode_check_readdir(struct ucred *cred, struct vnode *dvp, struct label *dlabel) { struct mac_mls *subj, *obj; @@ -2504,7 +2482,7 @@ } static int -mac_mls_check_vnode_readlink(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_readlink(struct ucred *cred, struct vnode *vp, struct label *vnodelabel) { struct mac_mls *subj, *obj; @@ -2522,7 +2500,7 @@ } static int -mac_mls_check_vnode_relabel(struct ucred *cred, struct vnode *vp, +mac_mls_vnode_check_relabel(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *newlabel) { struct mac_mls *old, *new, *subj; @@ -2574,7 +2552,7 @@ static int -mac_mls_check_vnode_rename_from(struct ucred *cred, struct vnode *dvp, +mac_mls_vnode_check_rename_from(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp) { @@ -2598,7 +2576,7 @@ } static int -mac_mls_check_vnode_rename_to(struct ucred *cred, struct vnode *dvp, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:01:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD52716A4E7; Sat, 8 Jul 2006 13:01:48 +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 9562E16A4E1 for ; Sat, 8 Jul 2006 13:01:48 +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 9B98443D69 for ; Sat, 8 Jul 2006 13:01:44 +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 k68D1iHb004022 for ; Sat, 8 Jul 2006 13:01:44 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 k68D1iuY004019 for perforce@freebsd.org; Sat, 8 Jul 2006 13:01:44 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:01:44 GMT Message-Id: <200607081301.k68D1iuY004019@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 100990 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:01:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=100990 Change 100990 by rwatson@rwatson_zoo on 2006/07/08 13:00:44 Disconnect ifoff, partition from mac2. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/conf/files#2 edit .. //depot/projects/trustedbsd/mac2/sys/modules/Makefile#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/conf/files#2 (text+ko) ==== @@ -1884,11 +1884,9 @@ security/mac/mac_vfs.c optional mac security/mac_biba/mac_biba.c optional mac_biba security/mac_bsdextended/mac_bsdextended.c optional mac_bsdextended -security/mac_ifoff/mac_ifoff.c optional mac_ifoff security/mac_lomac/mac_lomac.c optional mac_lomac security/mac_mls/mac_mls.c optional mac_mls security/mac_none/mac_none.c optional mac_none -security/mac_partition/mac_partition.c optional mac_partition security/mac_portacl/mac_portacl.c optional mac_portacl security/mac_seeotheruids/mac_seeotheruids.c optional mac_seeotheruids security/mac_stub/mac_stub.c optional mac_stub ==== //depot/projects/trustedbsd/mac2/sys/modules/Makefile#2 (text+ko) ==== @@ -139,11 +139,9 @@ lpt \ mac_biba \ mac_bsdextended \ - mac_ifoff \ mac_lomac \ mac_mls \ mac_none \ - mac_partition \ mac_portacl \ mac_seeotheruids \ mac_stub \ From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:05:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 47B9716A4E1; Sat, 8 Jul 2006 13:05:51 +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 F300916A4DF for ; Sat, 8 Jul 2006 13:05:50 +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 7BDD743D67 for ; Sat, 8 Jul 2006 13:05:50 +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 k68D5oXA008104 for ; Sat, 8 Jul 2006 13:05:50 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 k68D5o1S008092 for perforce@freebsd.org; Sat, 8 Jul 2006 13:05:50 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:05:50 GMT Message-Id: <200607081305.k68D5o1S008092@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 100991 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:05:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=100991 Change 100991 by rwatson@rwatson_zoo on 2006/07/08 13:05:00 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_bsdextended/mac_bsdextended.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_bsdextended/mac_bsdextended.c#2 (text+ko) ==== @@ -2,6 +2,7 @@ * Copyright (c) 2005 Tom Rhodes * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2005 Networks Associates Technology, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -12,6 +13,9 @@ * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), * as part of the DARPA CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -234,7 +238,7 @@ CTLFLAG_RW, sysctl_rule, "BSD extended MAC rules"); static void -mac_bsdextended_init(struct mac_policy_conf *mpc) +mac_bsdextended_policy_init(struct mac_policy_conf *mpc) { /* Initialize ruleset lock. */ @@ -244,7 +248,7 @@ } static void -mac_bsdextended_destroy(struct mac_policy_conf *mpc) +mac_bsdextended_policy_destroy(struct mac_policy_conf *mpc) { /* Destroy ruleset lock. */ @@ -503,7 +507,7 @@ } static int -mac_bsdextended_check_system_swapon(struct ucred *cred, struct vnode *vp, +mac_bsdextended_system_check_swapon(struct ucred *cred, struct vnode *vp, struct label *label) { @@ -511,7 +515,7 @@ } static int -mac_bsdextended_check_vnode_access(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_access(struct ucred *cred, struct vnode *vp, struct label *label, int acc_mode) { @@ -519,7 +523,7 @@ } static int -mac_bsdextended_check_vnode_chdir(struct ucred *cred, struct vnode *dvp, +mac_bsdextended_vnode_check_chdir(struct ucred *cred, struct vnode *dvp, struct label *dlabel) { @@ -527,7 +531,7 @@ } static int -mac_bsdextended_check_vnode_chroot(struct ucred *cred, struct vnode *dvp, +mac_bsdextended_vnode_check_chroot(struct ucred *cred, struct vnode *dvp, struct label *dlabel) { @@ -543,21 +547,7 @@ } static int -mac_bsdextended_check_vnode_delete(struct ucred *cred, struct vnode *dvp, - struct label *dlabel, struct vnode *vp, struct label *label, - struct componentname *cnp) -{ - int error; - - error = mac_bsdextended_check_vp(cred, dvp, MBI_WRITE); - if (error) - return (error); - - return (mac_bsdextended_check_vp(cred, vp, MBI_WRITE)); -} - -static int -mac_bsdextended_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_deleteacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type) { @@ -565,7 +555,7 @@ } static int -mac_bsdextended_check_vnode_deleteextattr(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_deleteextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name) { @@ -573,7 +563,7 @@ } static int -mac_bsdextended_check_vnode_exec(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_exec(struct ucred *cred, struct vnode *vp, struct label *label, struct image_params *imgp, struct label *execlabel) { @@ -582,7 +572,7 @@ } static int -mac_bsdextended_check_vnode_getacl(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_getacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type) { @@ -590,7 +580,7 @@ } static int -mac_bsdextended_check_vnode_getextattr(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_getextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name, struct uio *uio) { @@ -598,7 +588,7 @@ } static int -mac_bsdextended_check_vnode_link(struct ucred *cred, struct vnode *dvp, +mac_bsdextended_vnode_check_link(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp) { @@ -615,7 +605,7 @@ } static int -mac_bsdextended_check_vnode_listextattr(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_listextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace) { @@ -623,7 +613,7 @@ } static int -mac_bsdextended_check_vnode_lookup(struct ucred *cred, struct vnode *dvp, +mac_bsdextended_vnode_check_lookup(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp) { @@ -631,7 +621,7 @@ } static int -mac_bsdextended_check_vnode_open(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_open(struct ucred *cred, struct vnode *vp, struct label *filelabel, int acc_mode) { @@ -639,7 +629,7 @@ } static int -mac_bsdextended_check_vnode_readdir(struct ucred *cred, struct vnode *dvp, +mac_bsdextended_vnode_check_readdir(struct ucred *cred, struct vnode *dvp, struct label *dlabel) { @@ -647,7 +637,7 @@ } static int -mac_bsdextended_check_vnode_readdlink(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_readdlink(struct ucred *cred, struct vnode *vp, struct label *label) { @@ -655,7 +645,7 @@ } static int -mac_bsdextended_check_vnode_rename_from(struct ucred *cred, struct vnode *dvp, +mac_bsdextended_vnode_check_rename_from(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp) { @@ -670,7 +660,7 @@ } static int -mac_bsdextended_check_vnode_rename_to(struct ucred *cred, struct vnode *dvp, +mac_bsdextended_vnode_check_rename_to(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, int samedir, struct componentname *cnp) { @@ -687,7 +677,7 @@ } static int -mac_bsdextended_check_vnode_revoke(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_revoke(struct ucred *cred, struct vnode *vp, struct label *label) { @@ -703,7 +693,7 @@ } static int -mac_bsdextended_check_vnode_setextattr(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_setextattr(struct ucred *cred, struct vnode *vp, struct label *label, int attrnamespace, const char *name, struct uio *uio) { @@ -711,7 +701,7 @@ } static int -mac_bsdextended_check_vnode_setflags(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_setflags(struct ucred *cred, struct vnode *vp, struct label *label, u_long flags) { @@ -719,7 +709,7 @@ } static int -mac_bsdextended_check_vnode_setmode(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_setmode(struct ucred *cred, struct vnode *vp, struct label *label, mode_t mode) { @@ -727,7 +717,7 @@ } static int -mac_bsdextended_check_vnode_setowner(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_setowner(struct ucred *cred, struct vnode *vp, struct label *label, uid_t uid, gid_t gid) { @@ -735,7 +725,7 @@ } static int -mac_bsdextended_check_vnode_setutimes(struct ucred *cred, struct vnode *vp, +mac_bsdextended_vnode_check_setutimes(struct ucred *cred, struct vnode *vp, struct label *label, struct timespec atime, struct timespec utime) { @@ -743,44 +733,58 @@ } static int -mac_bsdextended_check_vnode_stat(struct ucred *active_cred, +mac_bsdextended_vnode_check_stat(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label) { return (mac_bsdextended_check_vp(active_cred, vp, MBI_STAT)); } +static int +mac_bsdextended_vnode_check_unlink(struct ucred *cred, struct vnode *dvp, + struct label *dlabel, struct vnode *vp, struct label *label, + struct componentname *cnp) +{ + int error; + + error = mac_bsdextended_check_vp(cred, dvp, MBI_WRITE); + if (error) + return (error); + + return (mac_bsdextended_check_vp(cred, vp, MBI_WRITE)); +} + static struct mac_policy_ops mac_bsdextended_ops = { - .mpo_destroy = mac_bsdextended_destroy, - .mpo_init = mac_bsdextended_init, - .mpo_check_system_swapon = mac_bsdextended_check_system_swapon, - .mpo_check_vnode_access = mac_bsdextended_check_vnode_access, - .mpo_check_vnode_chdir = mac_bsdextended_check_vnode_chdir, - .mpo_check_vnode_chroot = mac_bsdextended_check_vnode_chroot, - .mpo_check_vnode_create = mac_bsdextended_check_create_vnode, - .mpo_check_vnode_delete = mac_bsdextended_check_vnode_delete, - .mpo_check_vnode_deleteacl = mac_bsdextended_check_vnode_deleteacl, - .mpo_check_vnode_deleteextattr = mac_bsdextended_check_vnode_deleteextattr, - .mpo_check_vnode_exec = mac_bsdextended_check_vnode_exec, - .mpo_check_vnode_getacl = mac_bsdextended_check_vnode_getacl, - .mpo_check_vnode_getextattr = mac_bsdextended_check_vnode_getextattr, - .mpo_check_vnode_link = mac_bsdextended_check_vnode_link, - .mpo_check_vnode_listextattr = mac_bsdextended_check_vnode_listextattr, - .mpo_check_vnode_lookup = mac_bsdextended_check_vnode_lookup, - .mpo_check_vnode_open = mac_bsdextended_check_vnode_open, - .mpo_check_vnode_readdir = mac_bsdextended_check_vnode_readdir, - .mpo_check_vnode_readlink = mac_bsdextended_check_vnode_readdlink, - .mpo_check_vnode_rename_from = mac_bsdextended_check_vnode_rename_from, - .mpo_check_vnode_rename_to = mac_bsdextended_check_vnode_rename_to, - .mpo_check_vnode_revoke = mac_bsdextended_check_vnode_revoke, - .mpo_check_vnode_setacl = mac_bsdextended_check_setacl_vnode, - .mpo_check_vnode_setextattr = mac_bsdextended_check_vnode_setextattr, - .mpo_check_vnode_setflags = mac_bsdextended_check_vnode_setflags, - .mpo_check_vnode_setmode = mac_bsdextended_check_vnode_setmode, - .mpo_check_vnode_setowner = mac_bsdextended_check_vnode_setowner, - .mpo_check_vnode_setutimes = mac_bsdextended_check_vnode_setutimes, - .mpo_check_vnode_stat = mac_bsdextended_check_vnode_stat, + .mpo_policy_destroy = mac_bsdextended_policy_destroy, + .mpo_policy_init = mac_bsdextended_policy_init, + .mpo_system_check_swapon = mac_bsdextended_system_check_swapon, + .mpo_vnode_check_access = mac_bsdextended_vnode_check_access, + .mpo_vnode_check_chdir = mac_bsdextended_vnode_check_chdir, + .mpo_vnode_check_chroot = mac_bsdextended_vnode_check_chroot, + .mpo_vnode_check_create = mac_bsdextended_check_create_vnode, + .mpo_vnode_check_deleteacl = mac_bsdextended_vnode_check_deleteacl, + .mpo_vnode_check_deleteextattr = mac_bsdextended_vnode_check_deleteextattr, + .mpo_vnode_check_exec = mac_bsdextended_vnode_check_exec, + .mpo_vnode_check_getacl = mac_bsdextended_vnode_check_getacl, + .mpo_vnode_check_getextattr = mac_bsdextended_vnode_check_getextattr, + .mpo_vnode_check_link = mac_bsdextended_vnode_check_link, + .mpo_vnode_check_listextattr = mac_bsdextended_vnode_check_listextattr, + .mpo_vnode_check_lookup = mac_bsdextended_vnode_check_lookup, + .mpo_vnode_check_open = mac_bsdextended_vnode_check_open, + .mpo_vnode_check_readdir = mac_bsdextended_vnode_check_readdir, + .mpo_vnode_check_readlink = mac_bsdextended_vnode_check_readdlink, + .mpo_vnode_check_rename_from = mac_bsdextended_vnode_check_rename_from, + .mpo_vnode_check_rename_to = mac_bsdextended_vnode_check_rename_to, + .mpo_vnode_check_revoke = mac_bsdextended_vnode_check_revoke, + .mpo_vnode_check_setacl = mac_bsdextended_check_setacl_vnode, + .mpo_vnode_check_setextattr = mac_bsdextended_vnode_check_setextattr, + .mpo_vnode_check_setflags = mac_bsdextended_vnode_check_setflags, + .mpo_vnode_check_setmode = mac_bsdextended_vnode_check_setmode, + .mpo_vnode_check_setowner = mac_bsdextended_vnode_check_setowner, + .mpo_vnode_check_setutimes = mac_bsdextended_vnode_check_setutimes, + .mpo_vnode_check_stat = mac_bsdextended_vnode_check_stat, + .mpo_vnode_check_unlink = mac_bsdextended_vnode_check_unlink, }; MAC_POLICY_SET(&mac_bsdextended_ops, mac_bsdextended, From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:06:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 35E3B16A4E6; Sat, 8 Jul 2006 13:06:58 +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 0E44B16A4DF for ; Sat, 8 Jul 2006 13:06:58 +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 C854E43D73 for ; Sat, 8 Jul 2006 13:06:52 +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 k68D6qKV008794 for ; Sat, 8 Jul 2006 13:06:52 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 k68D6qww008782 for perforce@freebsd.org; Sat, 8 Jul 2006 13:06:52 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:06:52 GMT Message-Id: <200607081306.k68D6qww008782@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 100992 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:06:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=100992 Change 100992 by rwatson@rwatson_zoo on 2006/07/08 13:06:01 De fslabel. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_stub/mac_stub.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_stub/mac_stub.c#2 (text+ko) ==== @@ -1,7 +1,7 @@ /*- * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2005 McAfee, Inc. - * Copyright (c) 2005 SPARTA, Inc. + * Copyright (c) 2005-2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -165,7 +165,7 @@ * a lot like file system objects. */ static void -stub_associate_vnode_devfs(struct mount *mp, struct label *fslabel, +stub_associate_vnode_devfs(struct mount *mp, struct label *mntlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { @@ -173,7 +173,7 @@ } static int -stub_associate_vnode_extattr(struct mount *mp, struct label *fslabel, +stub_associate_vnode_extattr(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { @@ -182,7 +182,7 @@ static void stub_associate_vnode_singlelabel(struct mount *mp, - struct label *fslabel, struct vnode *vp, struct label *vlabel) + struct label *mntlabel, struct vnode *vp, struct label *vlabel) { } @@ -211,7 +211,7 @@ static int stub_create_vnode_extattr(struct ucred *cred, struct mount *mp, - struct label *fslabel, struct vnode *dvp, struct label *dlabel, + struct label *mntlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp) { @@ -220,7 +220,7 @@ static void stub_create_mount(struct ucred *cred, struct mount *mp, - struct label *mntlabel, struct label *fslabel) + struct label *mntlabel) { } @@ -1379,7 +1379,6 @@ .mpo_init_ipq_label = stub_init_label_waitcheck, .mpo_init_mbuf_label = stub_init_label_waitcheck, .mpo_init_mount_label = stub_init_label, - .mpo_init_mount_fs_label = stub_init_label, .mpo_init_pipe_label = stub_init_label, .mpo_init_posix_sem_label = stub_init_label, .mpo_init_socket_label = stub_init_label_waitcheck, @@ -1397,7 +1396,6 @@ .mpo_destroy_ipq_label = stub_destroy_label, .mpo_destroy_mbuf_label = stub_destroy_label, .mpo_destroy_mount_label = stub_destroy_label, - .mpo_destroy_mount_fs_label = stub_destroy_label, .mpo_destroy_pipe_label = stub_destroy_label, .mpo_destroy_posix_sem_label = stub_destroy_label, .mpo_destroy_socket_label = stub_destroy_label, From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:17:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BBE6416A4E2; Sat, 8 Jul 2006 13:17:22 +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 7735E16A4E5 for ; Sat, 8 Jul 2006 13:17:22 +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 8CA0A43D53 for ; Sat, 8 Jul 2006 13:17:21 +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 k68DHLeO015664 for ; Sat, 8 Jul 2006 13:17:21 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 k68DHK9n015649 for perforce@freebsd.org; Sat, 8 Jul 2006 13:17:20 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:17:20 GMT Message-Id: <200607081317.k68DHK9n015649@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 100996 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:17:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=100996 Change 100996 by rwatson@rwatson_zoo on 2006/07/08 13:16:54 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_stub/mac_stub.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_stub/mac_stub.c#3 (text+ko) ==== @@ -98,13 +98,13 @@ * Policy module operations. */ static void -stub_destroy(struct mac_policy_conf *conf) +stub_policy_destroy(struct mac_policy_conf *conf) { } static void -stub_init(struct mac_policy_conf *conf) +stub_policy_init(struct mac_policy_conf *conf) { } @@ -165,7 +165,7 @@ * a lot like file system objects. */ static void -stub_associate_vnode_devfs(struct mount *mp, struct label *mntlabel, +stub_devfs_vnode_associate(struct mount *mp, struct label *mntlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { @@ -173,7 +173,7 @@ } static int -stub_associate_vnode_extattr(struct mount *mp, struct label *mntlabel, +stub_vnode_associate_extattr(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { @@ -181,28 +181,28 @@ } static void -stub_associate_vnode_singlelabel(struct mount *mp, +stub_vnode_associate_singlelabel(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { } static void -stub_create_devfs_device(struct ucred *cred, struct mount *mp, +stub_devfs_create_device(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *devfs_dirent, struct label *label) { } static void -stub_create_devfs_directory(struct mount *mp, char *dirname, +stub_devfs_create_directory(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *devfs_dirent, struct label *label) { } static void -stub_create_devfs_symlink(struct ucred *cred, struct mount *mp, +stub_devfs_create_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, struct label *delabel) { @@ -210,7 +210,7 @@ } static int -stub_create_vnode_extattr(struct ucred *cred, struct mount *mp, +stub_vnode_create_extattr(struct ucred *cred, struct mount *mp, struct label *mntlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp) { @@ -219,21 +219,21 @@ } static void -stub_create_mount(struct ucred *cred, struct mount *mp, +stub_mount_create(struct ucred *cred, struct mount *mp, struct label *mntlabel) { } static void -stub_relabel_vnode(struct ucred *cred, struct vnode *vp, +stub_vnode_relabel(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *label) { } static int -stub_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, +stub_vnode_setlabel_extattr(struct ucred *cred, struct vnode *vp, struct label *vlabel, struct label *intlabel) { @@ -241,7 +241,7 @@ } static void -stub_update_devfsdirent(struct mount *mp, +stub_devfs_update(struct mount *mp, struct devfs_dirent *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel) { @@ -252,35 +252,35 @@ * Labeling event operations: IPC object. */ static void -stub_create_mbuf_from_socket(struct socket *so, struct label *socketlabel, +stub_socket_create_mbuf(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { } static void -stub_create_socket(struct ucred *cred, struct socket *socket, +stub_socket_create(struct ucred *cred, struct socket *socket, struct label *socketlabel) { } static void -stub_create_pipe(struct ucred *cred, struct pipepair *pp, +stub_pipe_create(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { } static void -stub_create_posix_sem(struct ucred *cred, struct ksem *ksemptr, +stub_posix_sem_create(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { } static void -stub_create_socket_from_socket(struct socket *oldsocket, +stub_socket_accept(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketlabel) { @@ -288,28 +288,28 @@ } static void -stub_relabel_socket(struct ucred *cred, struct socket *socket, +stub_socket_relabel(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct label *newlabel) { } static void -stub_relabel_pipe(struct ucred *cred, struct pipepair *pp, +stub_pipe_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { } static void -stub_set_socket_peer_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, +stub_socket_peer_set_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, struct socket *socket, struct label *socketpeerlabel) { } static void -stub_set_socket_peer_from_socket(struct socket *oldsocket, +stub_socket_peer_set_from_socket(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketpeerlabel) { @@ -320,104 +320,104 @@ * Labeling event operations: network objects. */ static void -stub_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d, +stub_bpfdesc_create(struct ucred *cred, struct bpf_d *bpf_d, struct label *bpflabel) { } static void -stub_create_datagram_from_ipq(struct ipq *ipq, struct label *ipqlabel, +stub_ipq_reassemble(struct ipq *ipq, struct label *ipqlabel, struct mbuf *datagram, struct label *datagramlabel) { } static void -stub_create_fragment(struct mbuf *datagram, struct label *datagramlabel, +stub_netinet_fragment(struct mbuf *datagram, struct label *datagramlabel, struct mbuf *fragment, struct label *fragmentlabel) { } static void -stub_create_ifnet(struct ifnet *ifnet, struct label *ifnetlabel) +stub_ifnet_create(struct ifnet *ifnet, struct label *ifnetlabel) { } static void -stub_create_inpcb_from_socket(struct socket *so, struct label *solabel, +stub_inpcb_create(struct socket *so, struct label *solabel, struct inpcb *inp, struct label *inplabel) { } static void -stub_create_sysv_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, +stub_sysvmsg_create(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { } static void -stub_create_sysv_msgqueue(struct ucred *cred, struct msqid_kernel *msqkptr, +stub_sysvmsq_create(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel) { } static void -stub_create_sysv_sem(struct ucred *cred, struct semid_kernel *semakptr, +stub_sysvsem_create(struct ucred *cred, struct semid_kernel *semakptr, struct label *semalabel) { } static void -stub_create_sysv_shm(struct ucred *cred, struct shmid_kernel *shmsegptr, +stub_sysvshm_create(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmalabel) { } static void -stub_create_ipq(struct mbuf *fragment, struct label *fragmentlabel, +stub_ipq_create(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { } static void -stub_create_mbuf_from_inpcb(struct inpcb *inp, struct label *inplabel, +stub_inpcb_create_mbuf(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { } static void -stub_create_mbuf_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, +stub_mbuf_create_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel) { } static void -stub_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct label *bpflabel, +stub_bpfdesc_create_mbuf(struct bpf_d *bpf_d, struct label *bpflabel, struct mbuf *mbuf, struct label *mbuflabel) { } static void -stub_create_mbuf_from_ifnet(struct ifnet *ifnet, struct label *ifnetlabel, +stub_ifnet_create_mbuf(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { } static void -stub_create_mbuf_multicast_encap(struct mbuf *oldmbuf, +stub_mbuf_create_multicast_encap(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *newmbuf, struct label *newmbuflabel) { @@ -425,14 +425,14 @@ } static void -stub_create_mbuf_netlayer(struct mbuf *oldmbuf, +stub_mbuf_create_netlayer(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct mbuf *newmbuf, struct label *newmbuflabel) { } static int -stub_fragment_match(struct mbuf *fragment, struct label *fragmentlabel, +stub_ipq_match(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { @@ -440,26 +440,26 @@ } static void -stub_reflect_mbuf_icmp(struct mbuf *m, struct label *mlabel) +stub_netinet_icmp_reply(struct mbuf *m, struct label *mlabel) { } static void -stub_reflect_mbuf_tcp(struct mbuf *m, struct label *mlabel) +stub_netinet_tcp_reply(struct mbuf *m, struct label *mlabel) { } static void -stub_relabel_ifnet(struct ucred *cred, struct ifnet *ifnet, +stub_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { } static void -stub_update_ipq(struct mbuf *fragment, struct label *fragmentlabel, +stub_ipq_update(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { @@ -476,7 +476,7 @@ * Labeling event operations: processes. */ static void -stub_execve_transition(struct ucred *old, struct ucred *new, +stub_vnode_execve_transition(struct ucred *old, struct ucred *new, struct vnode *vp, struct label *vnodelabel, struct label *interpvnodelabel, struct image_params *imgp, struct label *execlabel) @@ -485,7 +485,7 @@ } static int -stub_execve_will_transition(struct ucred *old, struct vnode *vp, +stub_vnode_execve_will_transition(struct ucred *old, struct vnode *vp, struct label *vnodelabel, struct label *interpvnodelabel, struct image_params *imgp, struct label *execlabel) { @@ -494,19 +494,19 @@ } static void -stub_create_proc0(struct ucred *cred) +stub_proc_create_swapper(struct ucred *cred) { } static void -stub_create_proc1(struct ucred *cred) +stub_proc_create_init(struct ucred *cred) { } static void -stub_relabel_cred(struct ucred *cred, struct label *newlabel) +stub_cred_relabel(struct ucred *cred, struct label *newlabel) { } @@ -521,25 +521,25 @@ * Label cleanup/flush operations */ static void -stub_cleanup_sysv_msgmsg(struct label *msglabel) +stub_sysvmsg_cleanup(struct label *msglabel) { } static void -stub_cleanup_sysv_msgqueue(struct label *msqlabel) +stub_sysvmsq_cleanup(struct label *msqlabel) { } static void -stub_cleanup_sysv_sem(struct label *semalabel) +stub_sysvsem_cleanup(struct label *semalabel) { } static void -stub_cleanup_sysv_shm(struct label *shmlabel) +stub_sysvshm_cleanup(struct label *shmlabel) { } @@ -548,7 +548,7 @@ * Access control checks. */ static int -stub_check_bpfdesc_receive(struct bpf_d *bpf_d, struct label *bpflabel, +stub_bpfdesc_check_receive(struct bpf_d *bpf_d, struct label *bpflabel, struct ifnet *ifnet, struct label *ifnet_label) { @@ -556,21 +556,21 @@ } static int -stub_check_cred_relabel(struct ucred *cred, struct label *newlabel) +stub_cred_check_relabel(struct ucred *cred, struct label *newlabel) { return (0); } static int -stub_check_cred_visible(struct ucred *u1, struct ucred *u2) +stub_cred_check_visible(struct ucred *u1, struct ucred *u2) { return (0); } static int -stub_check_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, +stub_ifnet_check_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { @@ -578,7 +578,7 @@ } static int -stub_check_ifnet_transmit(struct ifnet *ifnet, struct label *ifnetlabel, +stub_ifnet_check_transmit(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { @@ -586,7 +586,7 @@ } static int -stub_check_inpcb_deliver(struct inpcb *inp, struct label *inplabel, +stub_inpcb_check_deliver(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { @@ -594,7 +594,7 @@ } static int -stub_check_sysv_msgmsq(struct ucred *cred, struct msg *msgptr, +stub_sysvmsq_check_msgmsq(struct ucred *cred, struct msg *msgptr, struct label *msglabel, struct msqid_kernel *msqkptr, struct label *msqklabel) { @@ -603,7 +603,7 @@ } static int -stub_check_sysv_msgrcv(struct ucred *cred, struct msg *msgptr, +stub_sysvmsq_check_msgrcv(struct ucred *cred, struct msg *msgptr, struct label *msglabel) { @@ -612,7 +612,7 @@ static int -stub_check_sysv_msgrmid(struct ucred *cred, struct msg *msgptr, +stub_sysvmsq_check_msgrmid(struct ucred *cred, struct msg *msgptr, struct label *msglabel) { @@ -621,7 +621,7 @@ static int -stub_check_sysv_msqget(struct ucred *cred, struct msqid_kernel *msqkptr, +stub_sysvmsq_check_msqget(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel) { @@ -630,7 +630,7 @@ static int -stub_check_sysv_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr, +stub_sysvmsq_check_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel) { @@ -638,7 +638,7 @@ } static int -stub_check_sysv_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr, +stub_sysvmsq_check_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel) { @@ -647,7 +647,7 @@ static int -stub_check_sysv_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, +stub_sysvmsq_check_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqklabel, int cmd) { @@ -656,7 +656,7 @@ static int -stub_check_sysv_semctl(struct ucred *cred, struct semid_kernel *semakptr, +stub_sysvsem_check_semctl(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel, int cmd) { @@ -664,7 +664,7 @@ } static int -stub_check_sysv_semget(struct ucred *cred, struct semid_kernel *semakptr, +stub_sysvsem_check_semget(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel) { @@ -673,7 +673,7 @@ static int -stub_check_sysv_semop(struct ucred *cred, struct semid_kernel *semakptr, +stub_sysvsem_check_semop(struct ucred *cred, struct semid_kernel *semakptr, struct label *semaklabel, size_t accesstype) { @@ -681,7 +681,7 @@ } static int -stub_check_sysv_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, +stub_sysvshm_check_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg) { @@ -689,7 +689,7 @@ } static int -stub_check_sysv_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, +stub_sysvshm_check_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int cmd) { @@ -697,7 +697,7 @@ } static int -stub_check_sysv_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr, +stub_sysvshm_check_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel) { @@ -706,7 +706,7 @@ static int -stub_check_sysv_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, +stub_sysvshm_check_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmseglabel, int shmflg) { @@ -714,35 +714,35 @@ } static int -stub_check_kenv_dump(struct ucred *cred) +stub_kenv_check_dump(struct ucred *cred) { return (0); } static int -stub_check_kenv_get(struct ucred *cred, char *name) +stub_kenv_check_get(struct ucred *cred, char *name) { return (0); } static int -stub_check_kenv_set(struct ucred *cred, char *name, char *value) +stub_kenv_check_set(struct ucred *cred, char *name, char *value) { return (0); } static int -stub_check_kenv_unset(struct ucred *cred, char *name) +stub_kenv_check_unset(struct ucred *cred, char *name) { return (0); } static int -stub_check_kld_load(struct ucred *cred, struct vnode *vp, +stub_kld_check_load(struct ucred *cred, struct vnode *vp, struct label *vlabel) { @@ -750,21 +750,21 @@ } static int -stub_check_kld_stat(struct ucred *cred) +stub_kld_check_stat(struct ucred *cred) { return (0); } static int -stub_check_kld_unload(struct ucred *cred) +stub_kld_check_unload(struct ucred *cred) { return (0); } static int -stub_check_mount_stat(struct ucred *cred, struct mount *mp, +stub_mount_check_stat(struct ucred *cred, struct mount *mp, struct label *mntlabel) { @@ -772,7 +772,7 @@ } static int -stub_check_pipe_ioctl(struct ucred *cred, struct pipepair *pp, +stub_pipe_check_ioctl(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, unsigned long cmd, void /* caddr_t */ *data) { @@ -780,7 +780,7 @@ } static int -stub_check_pipe_poll(struct ucred *cred, struct pipepair *pp, +stub_pipe_check_poll(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { @@ -788,7 +788,7 @@ } static int -stub_check_pipe_read(struct ucred *cred, struct pipepair *pp, +stub_pipe_check_read(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { @@ -796,7 +796,7 @@ } static int -stub_check_pipe_relabel(struct ucred *cred, struct pipepair *pp, +stub_pipe_check_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { @@ -804,7 +804,7 @@ } static int -stub_check_pipe_stat(struct ucred *cred, struct pipepair *pp, +stub_pipe_check_stat(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { @@ -812,7 +812,7 @@ } static int -stub_check_pipe_write(struct ucred *cred, struct pipepair *pp, +stub_pipe_check_write(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { @@ -820,7 +820,7 @@ } static int -stub_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr, +stub_posix_sem_check_destroy(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { @@ -828,7 +828,7 @@ } static int -stub_check_posix_sem_getvalue(struct ucred *cred, struct ksem *ksemptr, +stub_posix_sem_check_getvalue(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { @@ -836,7 +836,7 @@ } static int -stub_check_posix_sem_open(struct ucred *cred, struct ksem *ksemptr, +stub_posix_sem_check_open(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { @@ -844,7 +844,7 @@ } static int -stub_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr, +stub_posix_sem_check_post(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { @@ -852,7 +852,7 @@ } static int -stub_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr, +stub_posix_sem_check_unlink(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { @@ -860,7 +860,7 @@ } static int -stub_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr, +stub_posix_sem_check_wait(struct ucred *cred, struct ksem *ksemptr, struct label *ks_label) { @@ -868,63 +868,63 @@ } static int -stub_check_proc_debug(struct ucred *cred, struct proc *proc) +stub_proc_check_debug(struct ucred *cred, struct proc *proc) { return (0); } static int -stub_check_proc_sched(struct ucred *cred, struct proc *proc) +stub_proc_check_sched(struct ucred *cred, struct proc *proc) { return (0); } static int -stub_check_proc_signal(struct ucred *cred, struct proc *proc, int signum) +stub_proc_check_signal(struct ucred *cred, struct proc *proc, int signum) { return (0); } static int -stub_check_proc_wait(struct ucred *cred, struct proc *proc) +stub_proc_check_wait(struct ucred *cred, struct proc *proc) { return (0); } static int -stub_check_proc_setuid(struct ucred *cred, uid_t uid) +stub_proc_check_setuid(struct ucred *cred, uid_t uid) { return (0); } static int -stub_check_proc_seteuid(struct ucred *cred, uid_t euid) +stub_proc_check_seteuid(struct ucred *cred, uid_t euid) { return (0); } static int -stub_check_proc_setgid(struct ucred *cred, gid_t gid) +stub_proc_check_setgid(struct ucred *cred, gid_t gid) { return (0); } static int -stub_check_proc_setegid(struct ucred *cred, gid_t egid) +stub_proc_check_setegid(struct ucred *cred, gid_t egid) { return (0); } static int -stub_check_proc_setgroups(struct ucred *cred, int ngroups, +stub_proc_check_setgroups(struct ucred *cred, int ngroups, gid_t *gidset) { @@ -932,21 +932,21 @@ } static int -stub_check_proc_setreuid(struct ucred *cred, uid_t ruid, uid_t euid) +stub_proc_check_setreuid(struct ucred *cred, uid_t ruid, uid_t euid) { return (0); } static int -stub_check_proc_setregid(struct ucred *cred, gid_t rgid, gid_t egid) +stub_proc_check_setregid(struct ucred *cred, gid_t rgid, gid_t egid) { return (0); } static int -stub_check_proc_setresuid(struct ucred *cred, uid_t ruid, uid_t euid, +stub_proc_check_setresuid(struct ucred *cred, uid_t ruid, uid_t euid, uid_t suid) { @@ -954,7 +954,7 @@ } static int -stub_check_proc_setresgid(struct ucred *cred, gid_t rgid, gid_t egid, +stub_proc_check_setresgid(struct ucred *cred, gid_t rgid, gid_t egid, gid_t sgid) { @@ -962,7 +962,7 @@ } static int -stub_check_socket_accept(struct ucred *cred, struct socket *socket, +stub_socket_check_accept(struct ucred *cred, struct socket *socket, struct label *socketlabel) { @@ -970,7 +970,7 @@ } static int -stub_check_socket_bind(struct ucred *cred, struct socket *socket, +stub_socket_check_bind(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct sockaddr *sockaddr) { @@ -978,7 +978,7 @@ } static int -stub_check_socket_connect(struct ucred *cred, struct socket *socket, +stub_socket_check_connect(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct sockaddr *sockaddr) { @@ -986,7 +986,7 @@ } static int -stub_check_socket_create(struct ucred *cred, int domain, int type, +stub_socket_check_create(struct ucred *cred, int domain, int type, int protocol) { @@ -994,7 +994,7 @@ } static int -stub_check_socket_deliver(struct socket *so, struct label *socketlabel, +stub_socket_check_deliver(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { @@ -1002,7 +1002,7 @@ } static int -stub_check_socket_listen(struct ucred *cred, struct socket *so, +stub_socket_check_listen(struct ucred *cred, struct socket *so, struct label *socketlabel) { @@ -1010,7 +1010,7 @@ } static int -stub_check_socket_poll(struct ucred *cred, struct socket *so, +stub_socket_check_poll(struct ucred *cred, struct socket *so, struct label *socketlabel) { @@ -1018,7 +1018,7 @@ } static int -stub_check_socket_receive(struct ucred *cred, struct socket *so, +stub_socket_check_receive(struct ucred *cred, struct socket *so, struct label *socketlabel) { @@ -1026,14 +1026,14 @@ } static int -stub_check_socket_relabel(struct ucred *cred, struct socket *socket, +stub_socket_check_relabel(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct label *newlabel) { return (0); } static int -stub_check_socket_send(struct ucred *cred, struct socket *so, +stub_socket_check_send(struct ucred *cred, struct socket *so, struct label *socketlabel) { @@ -1041,7 +1041,7 @@ } static int -stub_check_socket_stat(struct ucred *cred, struct socket *so, +stub_socket_check_stat(struct ucred *cred, struct socket *so, struct label *socketlabel) { @@ -1049,7 +1049,7 @@ } static int -stub_check_socket_visible(struct ucred *cred, struct socket *socket, +stub_socket_check_visible(struct ucred *cred, struct socket *socket, struct label *socketlabel) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:20:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 86ECC16A4E6; Sat, 8 Jul 2006 13:20:39 +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 5C70C16A4E2 for ; Sat, 8 Jul 2006 13:20:39 +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 C9F9E43D5F for ; Sat, 8 Jul 2006 13:20:32 +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 k68DKQSC017625 for ; Sat, 8 Jul 2006 13:20:26 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 k68DKQZB017621 for perforce@freebsd.org; Sat, 8 Jul 2006 13:20:26 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:20:26 GMT Message-Id: <200607081320.k68DKQZB017621@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 100997 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:20:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=100997 Change 100997 by rwatson@rwatson_zoo on 2006/07/08 13:20:05 Rename policy calls. Remove fs_label. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_test/mac_test.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_test/mac_test.c#2 (text+ko) ==== @@ -1,6 +1,7 @@ /*- * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2005 McAfee, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -10,6 +11,9 @@ * DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA * CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -46,7 +50,7 @@ #include #include #include -#include +#include #include #include #include @@ -182,9 +186,6 @@ static int init_count_mount; SYSCTL_INT(_security_mac_test, OID_AUTO, init_count_mount, CTLFLAG_RD, &init_count_mount, 0, "mount init calls"); -static int init_count_mount_fslabel; -SYSCTL_INT(_security_mac_test, OID_AUTO, init_count_mount_fslabel, CTLFLAG_RD, - &init_count_mount_fslabel, 0, "mount_fslabel init calls"); static int init_count_socket; SYSCTL_INT(_security_mac_test, OID_AUTO, init_count_socket, CTLFLAG_RD, &init_count_socket, 0, "socket init calls"); @@ -241,10 +242,6 @@ static int destroy_count_mount; SYSCTL_INT(_security_mac_test, OID_AUTO, destroy_count_mount, CTLFLAG_RD, &destroy_count_mount, 0, "mount destroy calls"); -static int destroy_count_mount_fslabel; -SYSCTL_INT(_security_mac_test, OID_AUTO, destroy_count_mount_fslabel, - CTLFLAG_RD, &destroy_count_mount_fslabel, 0, - "mount_fslabel destroy calls"); static int destroy_count_socket; SYSCTL_INT(_security_mac_test, OID_AUTO, destroy_count_socket, CTLFLAG_RD, &destroy_count_socket, 0, "socket destroy calls"); @@ -282,13 +279,13 @@ * Policy module operations. */ static void -mac_test_destroy(struct mac_policy_conf *conf) +mac_test_policy_destroy(struct mac_policy_conf *conf) { } static void -mac_test_init(struct mac_policy_conf *conf) +mac_test_policy_init(struct mac_policy_conf *conf) { } @@ -413,14 +410,6 @@ atomic_add_int(&init_count_mount, 1); } -static void -mac_test_init_mount_fs_label(struct label *label) -{ - - SLOT(label) = MOUNTMAGIC; - atomic_add_int(&init_count_mount_fslabel, 1); -} - static int mac_test_init_socket_label(struct label *label, int flag) { @@ -660,20 +649,6 @@ } static void -mac_test_destroy_mount_fs_label(struct label *label) -{ - - if ((SLOT(label) == MOUNTMAGIC || SLOT(label) == 0)) { - atomic_add_int(&destroy_count_mount_fslabel, 1); - SLOT(label) = EXMAGIC; - } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_mount_fslabel: dup destroy"); - } else { - DEBUGGER("mac_test_destroy_mount_fslabel: corrupted label"); - } -} - -static void mac_test_destroy_socket_label(struct label *label) { @@ -836,32 +811,32 @@ * a lot like file system objects. */ static void -mac_test_associate_vnode_devfs(struct mount *mp, struct label *fslabel, +mac_test_associate_vnode_devfs(struct mount *mp, struct label *mntlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { - ASSERT_MOUNT_LABEL(fslabel); + ASSERT_MOUNT_LABEL(mntlabel); ASSERT_DEVFS_LABEL(delabel); ASSERT_VNODE_LABEL(vlabel); } static int -mac_test_associate_vnode_extattr(struct mount *mp, struct label *fslabel, +mac_test_associate_vnode_extattr(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { - ASSERT_MOUNT_LABEL(fslabel); + ASSERT_MOUNT_LABEL(mntlabel); ASSERT_VNODE_LABEL(vlabel); return (0); } static void mac_test_associate_vnode_singlelabel(struct mount *mp, - struct label *fslabel, struct vnode *vp, struct label *vlabel) + struct label *mntlabel, struct vnode *vp, struct label *vlabel) { - ASSERT_MOUNT_LABEL(fslabel); + ASSERT_MOUNT_LABEL(mntlabel); ASSERT_VNODE_LABEL(vlabel); } @@ -897,12 +872,12 @@ static int mac_test_create_vnode_extattr(struct ucred *cred, struct mount *mp, - struct label *fslabel, struct vnode *dvp, struct label *dlabel, + struct label *mntlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp) { ASSERT_CRED_LABEL(cred->cr_label); - ASSERT_MOUNT_LABEL(fslabel); + ASSERT_MOUNT_LABEL(mntlabel); ASSERT_VNODE_LABEL(dlabel); return (0); @@ -910,12 +885,11 @@ static void mac_test_create_mount(struct ucred *cred, struct mount *mp, - struct label *mntlabel, struct label *fslabel) + struct label *mntlabel) { ASSERT_CRED_LABEL(cred->cr_label); ASSERT_MOUNT_LABEL(mntlabel); - ASSERT_MOUNT_LABEL(fslabel); } static void @@ -2411,7 +2385,6 @@ .mpo_init_ipq_label = mac_test_init_ipq_label, .mpo_init_mbuf_label = mac_test_init_mbuf_label, .mpo_init_mount_label = mac_test_init_mount_label, - .mpo_init_mount_fs_label = mac_test_init_mount_fs_label, .mpo_init_pipe_label = mac_test_init_pipe_label, .mpo_init_posix_sem_label = mac_test_init_posix_sem_label, .mpo_init_proc_label = mac_test_init_proc_label, @@ -2431,7 +2404,6 @@ .mpo_destroy_ipq_label = mac_test_destroy_ipq_label, .mpo_destroy_mbuf_label = mac_test_destroy_mbuf_label, .mpo_destroy_mount_label = mac_test_destroy_mount_label, - .mpo_destroy_mount_fs_label = mac_test_destroy_mount_fs_label, .mpo_destroy_pipe_label = mac_test_destroy_pipe_label, .mpo_destroy_posix_sem_label = mac_test_destroy_posix_sem_label, .mpo_destroy_proc_label = mac_test_destroy_proc_label, From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:22:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E4FE216A4E2; Sat, 8 Jul 2006 13:22:38 +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 901F616A4DF for ; Sat, 8 Jul 2006 13:22:38 +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 C0C1B43D6A for ; Sat, 8 Jul 2006 13:22:29 +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 k68DMTlj018949 for ; Sat, 8 Jul 2006 13:22:29 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 k68DMTgb018940 for perforce@freebsd.org; Sat, 8 Jul 2006 13:22:29 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:22:29 GMT Message-Id: <200607081322.k68DMTgb018940@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 100998 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:22:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=100998 Change 100998 by rwatson@rwatson_zoo on 2006/07/08 13:21:51 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_test/mac_test.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_test/mac_test.c#3 (text+ko) ==== @@ -301,7 +301,7 @@ * Label operations. */ static void -mac_test_init_bpfdesc_label(struct label *label) +mac_test_bpfdesc_init_label(struct label *label) { SLOT(label) = BPFMAGIC; @@ -309,7 +309,7 @@ } static void -mac_test_init_cred_label(struct label *label) +mac_test_cred_init_label(struct label *label) { SLOT(label) = CREDMAGIC; @@ -317,7 +317,7 @@ } static void -mac_test_init_devfsdirent_label(struct label *label) +mac_test_devfs_init_label(struct label *label) { SLOT(label) = DEVFSMAGIC; @@ -325,7 +325,7 @@ } static void -mac_test_init_ifnet_label(struct label *label) +mac_test_ifnet_init_label(struct label *label) { SLOT(label) = IFNETMAGIC; @@ -333,12 +333,12 @@ } static int -mac_test_init_inpcb_label(struct label *label, int flag) +mac_test_inpcb_init_label(struct label *label, int flag) { if (flag & M_WAITOK) WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_test_init_inpcb_label() at %s:%d", __FILE__, + "mac_test_inpcb_init_label() at %s:%d", __FILE__, __LINE__); SLOT(label) = INPCBMAGIC; @@ -347,40 +347,40 @@ } static void -mac_test_init_sysv_msgmsg_label(struct label *label) +mac_test_sysvmsg_init_label(struct label *label) { SLOT(label) = SYSVIPCMSGMAGIC; atomic_add_int(&init_count_sysv_msg, 1); } static void -mac_test_init_sysv_msgqueue_label(struct label *label) +mac_test_sysvmsq_init_label(struct label *label) { SLOT(label) = SYSVIPCMSQMAGIC; atomic_add_int(&init_count_sysv_msq, 1); } static void -mac_test_init_sysv_sem_label(struct label *label) +mac_test_sysvsem_init_label(struct label *label) { SLOT(label) = SYSVIPCSEMMAGIC; atomic_add_int(&init_count_sysv_sem, 1); } static void -mac_test_init_sysv_shm_label(struct label *label) +mac_test_sysvshm_init_label(struct label *label) { SLOT(label) = SYSVIPCSHMMAGIC; atomic_add_int(&init_count_sysv_shm, 1); } static int -mac_test_init_ipq_label(struct label *label, int flag) +mac_test_ipq_init_label(struct label *label, int flag) { if (flag & M_WAITOK) WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_test_init_ipq_label() at %s:%d", __FILE__, + "mac_test_ipq_init_label() at %s:%d", __FILE__, __LINE__); SLOT(label) = IPQMAGIC; @@ -389,12 +389,12 @@ } static int -mac_test_init_mbuf_label(struct label *label, int flag) +mac_test_mbuf_init_label(struct label *label, int flag) { if (flag & M_WAITOK) WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_test_init_mbuf_label() at %s:%d", __FILE__, + "mac_test_mbuf_init_label() at %s:%d", __FILE__, __LINE__); SLOT(label) = MBUFMAGIC; @@ -403,7 +403,7 @@ } static void -mac_test_init_mount_label(struct label *label) +mac_test_mount_init_label(struct label *label) { SLOT(label) = MOUNTMAGIC; @@ -411,12 +411,12 @@ } static int -mac_test_init_socket_label(struct label *label, int flag) +mac_test_socket_init_label(struct label *label, int flag) { if (flag & M_WAITOK) WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_test_init_socket_label() at %s:%d", __FILE__, + "mac_test_socket_init_label() at %s:%d", __FILE__, __LINE__); SLOT(label) = SOCKETMAGIC; @@ -425,12 +425,12 @@ } static int -mac_test_init_socket_peer_label(struct label *label, int flag) +mac_test_socket_peer_init_label(struct label *label, int flag) { if (flag & M_WAITOK) WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_test_init_socket_peer_label() at %s:%d", __FILE__, + "mac_test_socket_peer_init_label() at %s:%d", __FILE__, __LINE__); SLOT(label) = SOCKETMAGIC; @@ -439,7 +439,7 @@ } static void -mac_test_init_pipe_label(struct label *label) +mac_test_pipe_init_label(struct label *label) { SLOT(label) = PIPEMAGIC; @@ -447,7 +447,7 @@ } static void -mac_test_init_posix_sem_label(struct label *label) +mac_test_posix_sem_init_label(struct label *label) { SLOT(label) = POSIXSEMMAGIC; @@ -455,7 +455,7 @@ } static void -mac_test_init_proc_label(struct label *label) +mac_test_proc_init_label(struct label *label) { SLOT(label) = PROCMAGIC; @@ -463,7 +463,7 @@ } static void -mac_test_init_vnode_label(struct label *label) +mac_test_vnode_init_label(struct label *label) { SLOT(label) = VNODEMAGIC; @@ -471,149 +471,149 @@ } static void -mac_test_destroy_bpfdesc_label(struct label *label) +mac_test_bpfdesc_destroy_label(struct label *label) { if (SLOT(label) == BPFMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_bpfdesc, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_bpfdesc: dup destroy"); + DEBUGGER("mac_test_bpfdesc_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_bpfdesc: corrupted label"); + DEBUGGER("mac_test_bpfdesc_destroy: corrupted label"); } } static void -mac_test_destroy_cred_label(struct label *label) +mac_test_cred_destroy_label(struct label *label) { if (SLOT(label) == CREDMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_cred, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_cred: dup destroy"); + DEBUGGER("mac_test_cred_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_cred: corrupted label"); + DEBUGGER("mac_test_cred_destroy: corrupted label"); } } static void -mac_test_destroy_devfsdirent_label(struct label *label) +mac_test_devfs_destroy_label(struct label *label) { if (SLOT(label) == DEVFSMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_devfsdirent, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_devfsdirent: dup destroy"); + DEBUGGER("mac_test_devfs_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_devfsdirent: corrupted label"); + DEBUGGER("mac_test_devfs_destroy: corrupted label"); } } static void -mac_test_destroy_ifnet_label(struct label *label) +mac_test_ifnet_destroy_label(struct label *label) { if (SLOT(label) == IFNETMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_ifnet, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_ifnet: dup destroy"); + DEBUGGER("mac_test_ifnet_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_ifnet: corrupted label"); + DEBUGGER("mac_test_ifnet_destroy: corrupted label"); } } static void -mac_test_destroy_inpcb_label(struct label *label) +mac_test_inpcb_destroy_label(struct label *label) { if (SLOT(label) == INPCBMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_inpcb, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_inpcb: dup destroy"); + DEBUGGER("mac_test_inpcb_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_inpcb: corrupted label"); + DEBUGGER("mac_test_inpcb_destroy: corrupted label"); } } static void -mac_test_destroy_sysv_msgmsg_label(struct label *label) +mac_test_sysvmsg_destroy_label(struct label *label) { if (SLOT(label) == SYSVIPCMSGMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_sysv_msg, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_sysv_msgmsg_label: dup destroy"); + DEBUGGER("mac_test_sysvmsg_destroy_label: dup destroy"); } else { DEBUGGER( - "mac_test_destroy_sysv_msgmsg_label: corrupted label"); + "mac_test_sysvmsg_destroy_label: corrupted label"); } } static void -mac_test_destroy_sysv_msgqueue_label(struct label *label) +mac_test_sysvmsq_destroy_label(struct label *label) { if (SLOT(label) == SYSVIPCMSQMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_sysv_msq, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_sysv_msgqueue_label: dup destroy"); + DEBUGGER("mac_test_sysvmsq_destroy_label: dup destroy"); } else { DEBUGGER( - "mac_test_destroy_sysv_msgqueue_label: corrupted label"); + "mac_test_sysvmsq_destroy_label: corrupted label"); } } static void -mac_test_destroy_sysv_sem_label(struct label *label) +mac_test_sysvsem_destroy_label(struct label *label) { if (SLOT(label) == SYSVIPCSEMMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_sysv_sem, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_sysv_sem_label: dup destroy"); + DEBUGGER("mac_test_sysvsem_destroy_label: dup destroy"); } else { - DEBUGGER("mac_test_destroy_sysv_sem_label: corrupted label"); + DEBUGGER("mac_test_sysvsem_destroy_label: corrupted label"); } } static void -mac_test_destroy_sysv_shm_label(struct label *label) +mac_test_sysvshm_destroy_label(struct label *label) { if (SLOT(label) == SYSVIPCSHMMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_sysv_shm, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_sysv_shm_label: dup destroy"); + DEBUGGER("mac_test_sysvshm_destroy_label: dup destroy"); } else { - DEBUGGER("mac_test_destroy_sysv_shm_label: corrupted label"); + DEBUGGER("mac_test_sysvshm_destroy_label: corrupted label"); } } static void -mac_test_destroy_ipq_label(struct label *label) +mac_test_ipq_destroy_label(struct label *label) { if (SLOT(label) == IPQMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_ipq, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_ipq: dup destroy"); + DEBUGGER("mac_test_ipq_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_ipq: corrupted label"); + DEBUGGER("mac_test_ipq_destroy: corrupted label"); } } static void -mac_test_destroy_mbuf_label(struct label *label) +mac_test_mbuf_destroy_label(struct label *label) { /* @@ -628,112 +628,112 @@ atomic_add_int(&destroy_count_mbuf, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_mbuf: dup destroy"); + DEBUGGER("mac_test_mbuf_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_mbuf: corrupted label"); + DEBUGGER("mac_test_mbuf_destroy: corrupted label"); } } static void -mac_test_destroy_mount_label(struct label *label) +mac_test_mount_destroy_label(struct label *label) { if ((SLOT(label) == MOUNTMAGIC || SLOT(label) == 0)) { atomic_add_int(&destroy_count_mount, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_mount: dup destroy"); + DEBUGGER("mac_test_mount_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_mount: corrupted label"); + DEBUGGER("mac_test_mount_destroy: corrupted label"); } } static void -mac_test_destroy_socket_label(struct label *label) +mac_test_socket_destroy_label(struct label *label) { if ((SLOT(label) == SOCKETMAGIC || SLOT(label) == 0)) { atomic_add_int(&destroy_count_socket, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_socket: dup destroy"); + DEBUGGER("mac_test_socket_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_socket: corrupted label"); + DEBUGGER("mac_test_socket_destroy: corrupted label"); } } static void -mac_test_destroy_socket_peer_label(struct label *label) +mac_test_socket_peer_destroy_label(struct label *label) { if ((SLOT(label) == SOCKETMAGIC || SLOT(label) == 0)) { atomic_add_int(&destroy_count_socket_peerlabel, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_socket_peerlabel: dup destroy"); + DEBUGGER("mac_test_socket_peer_destroylabel: dup destroy"); } else { - DEBUGGER("mac_test_destroy_socket_peerlabel: corrupted label"); + DEBUGGER("mac_test_socket_peer_destroylabel: corrupted label"); } } static void -mac_test_destroy_pipe_label(struct label *label) +mac_test_pipe_destroy_label(struct label *label) { if ((SLOT(label) == PIPEMAGIC || SLOT(label) == 0)) { atomic_add_int(&destroy_count_pipe, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_pipe: dup destroy"); + DEBUGGER("mac_test_pipe_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_pipe: corrupted label"); + DEBUGGER("mac_test_pipe_destroy: corrupted label"); } } static void -mac_test_destroy_posix_sem_label(struct label *label) +mac_test_posix_sem_destroy_label(struct label *label) { if ((SLOT(label) == POSIXSEMMAGIC || SLOT(label) == 0)) { atomic_add_int(&destroy_count_posixsems, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_posix_sem: dup destroy"); + DEBUGGER("mac_test_posix_sem_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_posix_sem: corrupted label"); + DEBUGGER("mac_test_posix_sem_destroy: corrupted label"); } } static void -mac_test_destroy_proc_label(struct label *label) +mac_test_proc_destroy_label(struct label *label) { if ((SLOT(label) == PROCMAGIC || SLOT(label) == 0)) { atomic_add_int(&destroy_count_proc, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_proc: dup destroy"); + DEBUGGER("mac_test_proc_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_proc: corrupted label"); + DEBUGGER("mac_test_proc_destroy: corrupted label"); } } static void -mac_test_destroy_vnode_label(struct label *label) +mac_test_vnode_destroy_label(struct label *label) { if (SLOT(label) == VNODEMAGIC || SLOT(label) == 0) { atomic_add_int(&destroy_count_vnode, 1); SLOT(label) = EXMAGIC; } else if (SLOT(label) == EXMAGIC) { - DEBUGGER("mac_test_destroy_vnode: dup destroy"); + DEBUGGER("mac_test_vnode_destroy: dup destroy"); } else { - DEBUGGER("mac_test_destroy_vnode: corrupted label"); + DEBUGGER("mac_test_vnode_destroy: corrupted label"); } } static void -mac_test_copy_cred_label(struct label *src, struct label *dest) +mac_test_cred_copy_label(struct label *src, struct label *dest) { ASSERT_CRED_LABEL(src); @@ -741,7 +741,7 @@ } static void -mac_test_copy_ifnet_label(struct label *src, struct label *dest) +mac_test_ifnet_copy_label(struct label *src, struct label *dest) { ASSERT_IFNET_LABEL(src); @@ -749,7 +749,7 @@ } static void -mac_test_copy_mbuf_label(struct label *src, struct label *dest) +mac_test_mbuf_copy_label(struct label *src, struct label *dest) { ASSERT_MBUF_LABEL(src); @@ -757,7 +757,7 @@ } static void -mac_test_copy_pipe_label(struct label *src, struct label *dest) +mac_test_pipe_copy_label(struct label *src, struct label *dest) { ASSERT_PIPE_LABEL(src); @@ -765,7 +765,7 @@ } static void -mac_test_copy_socket_label(struct label *src, struct label *dest) +mac_test_socket_copy_label(struct label *src, struct label *dest) { ASSERT_SOCKET_LABEL(src); @@ -773,7 +773,7 @@ } static void -mac_test_copy_vnode_label(struct label *src, struct label *dest) +mac_test_vnode_copy_label(struct label *src, struct label *dest) { ASSERT_VNODE_LABEL(src); @@ -811,7 +811,7 @@ * a lot like file system objects. */ static void -mac_test_associate_vnode_devfs(struct mount *mp, struct label *mntlabel, +mac_test_devfs_vnode_associate(struct mount *mp, struct label *mntlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { @@ -822,7 +822,7 @@ } static int -mac_test_associate_vnode_extattr(struct mount *mp, struct label *mntlabel, +mac_test_vnode_associate_extattr(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { @@ -832,7 +832,7 @@ } static void -mac_test_associate_vnode_singlelabel(struct mount *mp, +mac_test_vnode_associate_singlelabel(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { @@ -841,7 +841,7 @@ } static void -mac_test_create_devfs_device(struct ucred *cred, struct mount *mp, +mac_test_devfs_create_device(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *devfs_dirent, struct label *label) { @@ -852,7 +852,7 @@ } static void -mac_test_create_devfs_directory(struct mount *mp, char *dirname, +mac_test_devfs_create_directory(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *devfs_dirent, struct label *label) { @@ -860,7 +860,7 @@ } static void -mac_test_create_devfs_symlink(struct ucred *cred, struct mount *mp, +mac_test_devfs_create_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, struct label *delabel) { @@ -871,7 +871,7 @@ } static int -mac_test_create_vnode_extattr(struct ucred *cred, struct mount *mp, +mac_test_vnode_create_extattr(struct ucred *cred, struct mount *mp, struct label *mntlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp) { @@ -884,7 +884,7 @@ } static void -mac_test_create_mount(struct ucred *cred, struct mount *mp, +mac_test_mount_create(struct ucred *cred, struct mount *mp, struct label *mntlabel) { @@ -893,7 +893,7 @@ } static void -mac_test_relabel_vnode(struct ucred *cred, struct vnode *vp, +mac_test_vnode_relabel(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *label) { @@ -903,7 +903,7 @@ } static int -mac_test_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, +mac_test_vnode_setlabel_extattr(struct ucred *cred, struct vnode *vp, struct label *vlabel, struct label *intlabel) { @@ -914,7 +914,7 @@ } static void -mac_test_update_devfsdirent(struct mount *mp, +mac_test_devfs_update(struct mount *mp, struct devfs_dirent *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel) { @@ -927,7 +927,7 @@ * Labeling event operations: IPC object. */ static void -mac_test_create_mbuf_from_socket(struct socket *so, struct label *socketlabel, +mac_test_socket_create_mbuf(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { @@ -936,7 +936,7 @@ } static void -mac_test_create_socket(struct ucred *cred, struct socket *socket, +mac_test_socket_create(struct ucred *cred, struct socket *socket, struct label *socketlabel) { @@ -945,7 +945,7 @@ } static void -mac_test_create_pipe(struct ucred *cred, struct pipepair *pp, +mac_test_pipe_create(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { @@ -954,7 +954,7 @@ } static void -mac_test_create_posix_sem(struct ucred *cred, struct ksem *ksem, +mac_test_posix_sem_create(struct ucred *cred, struct ksem *ksem, struct label *posixlabel) { @@ -963,7 +963,7 @@ } static void -mac_test_create_socket_from_socket(struct socket *oldsocket, +mac_test_socket_accept(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketlabel) { @@ -973,7 +973,7 @@ } static void -mac_test_relabel_socket(struct ucred *cred, struct socket *socket, +mac_test_socket_relabel(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct label *newlabel) { @@ -982,7 +982,7 @@ } static void -mac_test_relabel_pipe(struct ucred *cred, struct pipepair *pp, +mac_test_pipe_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { @@ -992,7 +992,7 @@ } static void -mac_test_set_socket_peer_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, +mac_test_socket_peer_set_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, struct socket *socket, struct label *socketpeerlabel) { @@ -1004,7 +1004,7 @@ * Labeling event operations: network objects. */ static void -mac_test_set_socket_peer_from_socket(struct socket *oldsocket, +mac_test_socket_peer_set_from_socket(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketpeerlabel) { @@ -1014,7 +1014,7 @@ } static void -mac_test_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d, +mac_test_bpfdesc_create(struct ucred *cred, struct bpf_d *bpf_d, struct label *bpflabel) { @@ -1023,7 +1023,7 @@ } static void -mac_test_create_datagram_from_ipq(struct ipq *ipq, struct label *ipqlabel, +mac_test_ipq_reassemble(struct ipq *ipq, struct label *ipqlabel, struct mbuf *datagram, struct label *datagramlabel) { @@ -1032,7 +1032,7 @@ } static void -mac_test_create_fragment(struct mbuf *datagram, struct label *datagramlabel, +mac_test_netinet_fragment(struct mbuf *datagram, struct label *datagramlabel, struct mbuf *fragment, struct label *fragmentlabel) { @@ -1041,14 +1041,14 @@ } static void -mac_test_create_ifnet(struct ifnet *ifnet, struct label *ifnetlabel) +mac_test_ifnet_create(struct ifnet *ifnet, struct label *ifnetlabel) { ASSERT_IFNET_LABEL(ifnetlabel); } static void -mac_test_create_inpcb_from_socket(struct socket *so, struct label *solabel, +mac_test_inpcb_create(struct socket *so, struct label *solabel, struct inpcb *inp, struct label *inplabel) { @@ -1057,7 +1057,7 @@ } static void -mac_test_create_sysv_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, +mac_test_sysvmsg_create(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { @@ -1066,7 +1066,7 @@ } static void -mac_test_create_sysv_msgqueue(struct ucred *cred, +mac_test_sysvmsq_create(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel) { @@ -1074,7 +1074,7 @@ } static void -mac_test_create_sysv_sem(struct ucred *cred, struct semid_kernel *semakptr, +mac_test_sysvsem_create(struct ucred *cred, struct semid_kernel *semakptr, struct label *semalabel) { @@ -1082,7 +1082,7 @@ } static void -mac_test_create_sysv_shm(struct ucred *cred, struct shmid_kernel *shmsegptr, +mac_test_sysvshm_create(struct ucred *cred, struct shmid_kernel *shmsegptr, struct label *shmlabel) { @@ -1090,7 +1090,7 @@ } static void -mac_test_create_ipq(struct mbuf *fragment, struct label *fragmentlabel, +mac_test_ipq_create(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { @@ -1099,7 +1099,7 @@ } static void -mac_test_create_mbuf_from_inpcb(struct inpcb *inp, struct label *inplabel, +mac_test_inpcb_create_mbuf(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { @@ -1108,7 +1108,7 @@ } static void -mac_test_create_mbuf_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, +mac_test_mbuf_create_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel) { @@ -1117,7 +1117,7 @@ } static void -mac_test_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct label *bpflabel, +mac_test_bpfdesc_create_mbuf(struct bpf_d *bpf_d, struct label *bpflabel, struct mbuf *mbuf, struct label *mbuflabel) { @@ -1126,7 +1126,7 @@ } static void -mac_test_create_mbuf_from_ifnet(struct ifnet *ifnet, struct label *ifnetlabel, +mac_test_ifnet_create_mbuf(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { @@ -1135,7 +1135,7 @@ } static void -mac_test_create_mbuf_multicast_encap(struct mbuf *oldmbuf, +mac_test_mbuf_create_multicast_encap(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *newmbuf, struct label *newmbuflabel) { @@ -1146,7 +1146,7 @@ } static void -mac_test_create_mbuf_netlayer(struct mbuf *oldmbuf, +mac_test_mbuf_create_netlayer(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct mbuf *newmbuf, struct label *newmbuflabel) { @@ -1156,7 +1156,7 @@ } static int -mac_test_fragment_match(struct mbuf *fragment, struct label *fragmentlabel, +mac_test_ipq_match(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { @@ -1167,21 +1167,21 @@ } static void -mac_test_reflect_mbuf_icmp(struct mbuf *m, struct label *mlabel) +mac_test_netinet_icmp_reply(struct mbuf *m, struct label *mlabel) { ASSERT_MBUF_LABEL(mlabel); } static void -mac_test_reflect_mbuf_tcp(struct mbuf *m, struct label *mlabel) +mac_test_netinet_tcp_reply(struct mbuf *m, struct label *mlabel) { ASSERT_MBUF_LABEL(mlabel); } static void -mac_test_relabel_ifnet(struct ucred *cred, struct ifnet *ifnet, +mac_test_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { @@ -1191,7 +1191,7 @@ } static void -mac_test_update_ipq(struct mbuf *fragment, struct label *fragmentlabel, +mac_test_ipq_update(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { @@ -1212,7 +1212,7 @@ * Labeling event operations: processes. */ static void -mac_test_execve_transition(struct ucred *old, struct ucred *new, +mac_test_vnode_execve_transition(struct ucred *old, struct ucred *new, struct vnode *vp, struct label *filelabel, struct label *interpvnodelabel, struct image_params *imgp, struct label *execlabel) @@ -1230,7 +1230,7 @@ } static int -mac_test_execve_will_transition(struct ucred *old, struct vnode *vp, +mac_test_vnode_execve_will_transition(struct ucred *old, struct vnode *vp, struct label *filelabel, struct label *interpvnodelabel, struct image_params *imgp, struct label *execlabel) { @@ -1248,21 +1248,21 @@ } static void -mac_test_create_proc0(struct ucred *cred) +mac_test_proc_create_swapper(struct ucred *cred) { ASSERT_CRED_LABEL(cred->cr_label); } static void -mac_test_create_proc1(struct ucred *cred) +mac_test_proc_create_init(struct ucred *cred) { ASSERT_CRED_LABEL(cred->cr_label); } static void -mac_test_relabel_cred(struct ucred *cred, struct label *newlabel) +mac_test_cred_relabel(struct ucred *cred, struct label *newlabel) { ASSERT_CRED_LABEL(cred->cr_label); @@ -1281,28 +1281,28 @@ * Label cleanup/flush operations */ static void -mac_test_cleanup_sysv_msgmsg(struct label *msglabel) +mac_test_sysvmsg_cleanup(struct label *msglabel) { ASSERT_SYSVIPCMSG_LABEL(msglabel); } static void -mac_test_cleanup_sysv_msgqueue(struct label *msqlabel) +mac_test_sysvmsq_cleanup(struct label *msqlabel) { ASSERT_SYSVIPCMSQ_LABEL(msqlabel); } static void -mac_test_cleanup_sysv_sem(struct label *semalabel) +mac_test_sysvsem_cleanup(struct label *semalabel) { ASSERT_SYSVIPCSEM_LABEL(semalabel); } static void >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:23:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1427916A4DF; Sat, 8 Jul 2006 13:23:34 +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 CE86716A4DD for ; Sat, 8 Jul 2006 13:23:33 +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 AAF1743D5A for ; Sat, 8 Jul 2006 13:23:31 +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 k68DNVNF019606 for ; Sat, 8 Jul 2006 13:23:31 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 k68DNVr6019600 for perforce@freebsd.org; Sat, 8 Jul 2006 13:23:31 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:23:31 GMT Message-Id: <200607081323.k68DNVr6019600@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 100999 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:23:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=100999 Change 100999 by rwatson@rwatson_zoo on 2006/07/08 13:23:30 Rename policy entry points. Remove fs_label. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_lomac/mac_lomac.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_lomac/mac_lomac.c#2 (text+ko) ==== @@ -1,6 +1,7 @@ /*- * Copyright (c) 1999-2002 Robert N. M. Watson * Copyright (c) 2001-2005 Networks Associates Technology, Inc. + * Copyright (c) 2006 SPARTA, Inc. * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. @@ -10,6 +11,9 @@ * DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA * CHATS research program. * + * This software was enhanced by SPARTA ISSO under SPAWAR contract + * N66001-04-C-6019 ("SEFOS"). + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -604,7 +608,7 @@ * Policy module operations. */ static void -mac_lomac_init(struct mac_policy_conf *conf) +mac_lomac_policy_init(struct mac_policy_conf *conf) { } @@ -948,15 +952,13 @@ static void mac_lomac_create_mount(struct ucred *cred, struct mount *mp, - struct label *mntlabel, struct label *fslabel) + struct label *mntlabel) { struct mac_lomac *source, *dest; source = SLOT(cred->cr_label); dest = SLOT(mntlabel); mac_lomac_copy_single(source, dest); - dest = SLOT(fslabel); - mac_lomac_copy_single(source, dest); } static void @@ -985,7 +987,7 @@ } static void -mac_lomac_associate_vnode_devfs(struct mount *mp, struct label *fslabel, +mac_lomac_associate_vnode_devfs(struct mount *mp, struct label *mntlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { @@ -998,13 +1000,13 @@ } static int -mac_lomac_associate_vnode_extattr(struct mount *mp, struct label *fslabel, +mac_lomac_associate_vnode_extattr(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { struct mac_lomac temp, *source, *dest; int buflen, error; - source = SLOT(fslabel); + source = SLOT(mntlabel); dest = SLOT(vlabel); buflen = sizeof(temp); @@ -1013,7 +1015,7 @@ error = vn_extattr_get(vp, IO_NODELOCKED, MAC_LOMAC_EXTATTR_NAMESPACE, MAC_LOMAC_EXTATTR_NAME, &buflen, (char *)&temp, curthread); if (error == ENOATTR || error == EOPNOTSUPP) { - /* Fall back to the fslabel. */ + /* Fall back to the mntlabel. */ mac_lomac_copy_single(source, dest); return (0); } else if (error) @@ -1046,11 +1048,11 @@ static void mac_lomac_associate_vnode_singlelabel(struct mount *mp, - struct label *fslabel, struct vnode *vp, struct label *vlabel) + struct label *mntlabel, struct vnode *vp, struct label *vlabel) { struct mac_lomac *source, *dest; - source = SLOT(fslabel); + source = SLOT(mntlabel); dest = SLOT(vlabel); mac_lomac_copy_single(source, dest); @@ -1058,7 +1060,7 @@ static int mac_lomac_create_vnode_extattr(struct ucred *cred, struct mount *mp, - struct label *fslabel, struct vnode *dvp, struct label *dlabel, + struct label *mntlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp) { struct mac_lomac *source, *dest, *dir, temp; @@ -2555,7 +2557,7 @@ static struct mac_policy_ops mac_lomac_ops = { - .mpo_init = mac_lomac_init, + .mpo_policy_init = mac_lomac_policy_init, .mpo_init_bpfdesc_label = mac_lomac_init_label, .mpo_init_cred_label = mac_lomac_init_label, .mpo_init_devfsdirent_label = mac_lomac_init_label, @@ -2564,7 +2566,6 @@ .mpo_init_ipq_label = mac_lomac_init_label_waitcheck, .mpo_init_mbuf_label = mac_lomac_init_label_waitcheck, .mpo_init_mount_label = mac_lomac_init_label, - .mpo_init_mount_fs_label = mac_lomac_init_label, .mpo_init_pipe_label = mac_lomac_init_label, .mpo_init_proc_label = mac_lomac_init_proc_label, .mpo_init_socket_label = mac_lomac_init_label_waitcheck, @@ -2578,7 +2579,6 @@ .mpo_destroy_ipq_label = mac_lomac_destroy_label, .mpo_destroy_mbuf_label = mac_lomac_destroy_label, .mpo_destroy_mount_label = mac_lomac_destroy_label, - .mpo_destroy_mount_fs_label = mac_lomac_destroy_label, .mpo_destroy_pipe_label = mac_lomac_destroy_label, .mpo_destroy_proc_label = mac_lomac_destroy_proc_label, .mpo_destroy_socket_label = mac_lomac_destroy_label, From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:25:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8AAB616A4E7; Sat, 8 Jul 2006 13:25:38 +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 641A416A4E5 for ; Sat, 8 Jul 2006 13:25:38 +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 48E9A43D66 for ; Sat, 8 Jul 2006 13:25:36 +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 k68DPac7020849 for ; Sat, 8 Jul 2006 13:25:36 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 k68DPZ3b020844 for perforce@freebsd.org; Sat, 8 Jul 2006 13:25:35 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:25:35 GMT Message-Id: <200607081325.k68DPZ3b020844@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 101001 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:25:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=101001 Change 101001 by rwatson@rwatson_zoo on 2006/07/08 13:25:30 Add regular expressions to rename policy entry points, and some notes on renaming that requires some hand attention. Affected files ... .. //depot/projects/trustedbsd/mac2/mac2_notes.txt#4 edit Differences ... ==== //depot/projects/trustedbsd/mac2/mac2_notes.txt#4 (text+ko) ==== @@ -66,3 +66,163 @@ - Move from just init/destroy to also attach/detach methods for the policy, so that memory allocation can be performed without the mac policy lock held. + +Rename expressions for policies: + +Delete references to mount fslabel by removing init, destroy methods, +removing argument and assignment from mount_create, other references +are a search and replace of fslabel with mntlabel. + +Rename policy init and destroy methods, no easy search/replace for this. + +:%s/init_bpfdesc/bpfdesc_init/g +:%s/init_cred/cred_init/g +:%s/init_devfsdirent/devfs_init/g +:%s/init_ifnet/ifnet_init/g +:%s/init_inpcb/inpcb_init/g +:%s/init_ipq/ipq_init/g +:%s/init_mbuf/mbuf_init/g +:%s/init_mount/mount_init/g +:%s/init_pipe/pipe_init/g +:%s/init_posix_sem/posix_sem_init/g +:%s/init_proc/proc_init/g +:%s/init_socket_peer/socket_peer_init/g +:%s/init_socket/socket_init/g +:%s/init_sysv_msgmsg/sysvmsg_init/g +:%s/init_sysv_msgqueue/sysvmsq_init/g +:%s/init_sysv_sem/sysvsem_init/g +:%s/init_sysv_shm/sysvshm_init/g +:%s/init_vnode/vnode_init/g + +:%s/destroy_bpfdesc/bpfdesc_destroy/g +:%s/destroy_cred/cred_destroy/g +:%s/destroy_devfsdirent/devfs_destroy/g +:%s/destroy_ifnet/ifnet_destroy/g +:%s/destroy_inpcb/inpcb_destroy/g +:%s/destroy_ipq/ipq_destroy/g +:%s/destroy_mbuf/mbuf_destroy/g +:%s/destroy_mount/mount_destroy/g +:%s/destroy_pipe/pipe_destroy/g +:%s/destroy_posix_sem/posix_sem_destroy/g +:%s/destroy_proc/proc_destroy/g +:%s/destroy_socket_peer/socket_peer_destroy/g +:%s/destroy_socket/socket_destroy/g +:%s/destroy_sysv_msgmsg/sysvmsg_destroy/g +:%s/destroy_sysv_msgqueue/sysvmsq_destroy/g +:%s/destroy_sysv_sem/sysvsem_destroy/g +:%s/destroy_sysv_shm/sysvshm_destroy/g +:%s/destroy_vnode/vnode_destroy/g + +:%s/cleanup_sysv_msgmsg/sysvmsg_cleanup/g +:%s/cleanup_sysv_msgqueue/sysvmsq_cleanup/g +:%s/cleanup_sysv_sem/sysvsem_cleanup/g +:%s/cleanup_sysv_shm/sysvshm_cleanup/g + +:%s/copy_cred/cred_copy/g +:%s/copy_ifnet/ifnet_copy/g +:%s/copy_mbuf/mbuf_copy/g +:%s/copy_pipe/pipe_copy/g +:%s/copy_socket/socket_copy/g +:%s/copy_vnode/vnode_copy/g + +:%s/check_bpfdesc/bpfdesc_check/g +:%s/check_cred/cred_check/g +:%s/check_devfsdirent/devfs_check/g +:%s/check_ifnet/ifnet_check/g +:%s/check_inpcb/inpcb_check/g +:%s/check_ipq/ipq_check/g +:%s/check_kenv/kenv_check/g +:%s/check_kld/kld_check/g +:%s/check_mbuf/mbuf_check/g +:%s/check_mount/mount_check/g +:%s/check_pipe/pipe_check/g +:%s/check_posix_sem/posix_sem_check/g +:%s/check_proc/proc_check/g +:%s/check_socket/socket_check/g +:%s/check_system/system_check/g +:%s/check_vnode/vnode_check/g + +:%s/externalize_cred/cred_externalize/g +:%s/externalize_ifnet/ifnet_externalize/g +:%s/externalize_pipe/pipe_externalize/g +:%s/externalize_socket_peer/socket_peer_externalize/g +:%s/externalize_socket/socket_externalize/g +:%s/externalize_vnode/vnode_externalize/g +:%s/internalize_cred/cred_internalize/g +:%s/internalize_ifnet/ifnet_internalize/g +:%s/internalize_pipe/pipe_internalize/g +:%s/internalize_socket/socket_internalize/g +:%s/internalize_vnode/vnode_internalize/g + +:%s/associate_vnode/vnode_associate/g +:%s/vnode_associate_devfs/devfs_vnode_associate/g +:%s/create_devfs/devfs_create/g +:%s/relabel_vnode/vnode_relabel/g +:%s/create_vnode/vnode_create/g +:%s/create_mount/mount_create/g +:%s/setlabel_vnode/vnode_setlabel/g +:%s/update_devfsdirent/devfs_update/g + +:%s/relabel_pipe/pipe_relabel/g +:%s/create_bpfdesc/bpfdesc_create/g +:%s/create_datagram_from_ipq/ipq_reassemble/g +:%s/set_socket_peer_from_mbuf/socket_peer_set_from_mbuf/g +:%s/set_socket_peer_from_socket/socket_peer_set_from_socket/g +:%s/create_fragment/netinet_fragment/g +:%s/create_ifnet/ifnet_create/g +:%s/create_inpcb_from_socket/inpcb_create/g +:%s/create_ipq/ipq_create/g +:%s/create_pipe/pipe_create/g +:%s/relabel_pipe/pipe_relabel/g +:%s/create_posix_sem/posix_sem_create/g + +:%s/create_mbuf_from_inpcb/inpcb_create_mbuf/g +:%s/create_mbuf_linklayer/mbuf_create_linklayer/g +:%s/create_mbuf_from_bpfdesc/bpfdesc_create_mbuf/g +:%s/create_mbuf_from_ifnet/ifnet_create_mbuf/g +:%s/create_mbuf_from_socket/socket_create_mbuf/g +:%s/create_mbuf_multicast_encap/mbuf_create_multicast_encap/g +:%s/create_mbuf_netlayer/mbuf_create_netlayer/g +:%s/fragment_match/ipq_match/g +:%s/relabel_ifnet/ifnet_relabel/g +:%s/update_ipq/ipq_update/g +:%s/create_proc0/proc_create_swapper/g +:%s/create_proc1/proc_create_init/g +:%s/relabel_cred/cred_relabel/g +:%s/relabel_socket/socket_relabel/g +:%s/create_socket_from_socket/socket_accept/g +:%s/create_socket/socket_create/g + +:%s/vnode_check_delete(/vnode_check_unlink(/g +:%s/vnode_check_delete,/vnode_check_unlink,/g +:%s/vnode_check_delete /vnode_check_unlink /g + +:%s/create_sysv_msgmsg/sysvmsg_create/g +:%s/create_sysv_msgqueue/sysvmsq_create/g +:%s/create_sysv_sem/sysvsem_create/g +:%s/create_sysv_shm/sysvshm_create/g + +:%s/check_sysv_msgrcv/sysvmsq_check_msgrcv/g +:%s/check_sysv_msgrmid/sysvmsq_check_msgrmid/g +:%s/check_sysv_msqget/sysvmsq_check_msqget/g +:%s/check_sysv_msqsnd/sysvmsq_check_msqsnd/g +:%s/check_sysv_msqrcv/sysvmsq_check_msqrcv/g +:%s/check_sysv_msqctl/sysvmsq_check_msqctl/g +:%s/check_sysv_msgmsq/sysvmsq_check_msgmsq/g + +:%s/check_sysv_semctl/sysvsem_check_semctl/g +:%s/check_sysv_semget/sysvsem_check_semget/g +:%s/check_sysv_semop/sysvsem_check_semop/g +:%s/check_sysv_shmat/sysvshm_check_shmat/g +:%s/check_sysv_shmctl/sysvshm_check_shmctl/g +:%s/check_sysv_shmget/sysvshm_check_shmget/g +:%s/check_sysv_shmdt/sysvshm_check_shmdt/g + +:%s/reflect_mbuf_icmp/netinet_icmp_reply/g +:%s/reflect_mbuf_tcp/netinet_tcp_reply/g + +:%s/execve_transition/vnode_execve_transition/g +:%s/execve_will_transition/vnode_execve_will_transition/g + +:%s/check_sysarch_ioperm/system_check_ioperm/g + From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:25:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AF37816A560; Sat, 8 Jul 2006 13:25:39 +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 88F1216A4DD for ; Sat, 8 Jul 2006 13:25:39 +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 1F0A543D5A for ; Sat, 8 Jul 2006 13:25:35 +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 k68DPZXb020841 for ; Sat, 8 Jul 2006 13:25:35 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 k68DPZxY020837 for perforce@freebsd.org; Sat, 8 Jul 2006 13:25:35 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:25:35 GMT Message-Id: <200607081325.k68DPZxY020837@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 101000 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:25:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101000 Change 101000 by rwatson@rwatson_zoo on 2006/07/08 13:24:40 Rename. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_lomac/mac_lomac.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_lomac/mac_lomac.c#3 (text+ko) ==== @@ -49,7 +49,7 @@ #include #include #include -#include +#include #include #include #include @@ -635,7 +635,7 @@ } static void -mac_lomac_init_proc_label(struct label *label) +mac_lomac_proc_init_label(struct label *label) { PSLOT_SET(label, malloc(sizeof(struct mac_lomac_proc), M_MACLOMAC, @@ -652,7 +652,7 @@ } static void -mac_lomac_destroy_proc_label(struct label *label) +mac_lomac_proc_destroy_label(struct label *label) { mtx_destroy(&PSLOT(label)->mtx); @@ -905,7 +905,7 @@ * a lot like file system objects. */ static void -mac_lomac_create_devfs_device(struct ucred *cred, struct mount *mp, +mac_lomac_devfs_create_device(struct ucred *cred, struct mount *mp, struct cdev *dev, struct devfs_dirent *devfs_dirent, struct label *label) { struct mac_lomac *mac_lomac; @@ -928,7 +928,7 @@ } static void -mac_lomac_create_devfs_directory(struct mount *mp, char *dirname, +mac_lomac_devfs_create_directory(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *devfs_dirent, struct label *label) { struct mac_lomac *mac_lomac; @@ -938,7 +938,7 @@ } static void -mac_lomac_create_devfs_symlink(struct ucred *cred, struct mount *mp, +mac_lomac_devfs_create_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, struct label *delabel) { @@ -951,7 +951,7 @@ } static void -mac_lomac_create_mount(struct ucred *cred, struct mount *mp, +mac_lomac_mount_create(struct ucred *cred, struct mount *mp, struct label *mntlabel) { struct mac_lomac *source, *dest; @@ -962,7 +962,7 @@ } static void -mac_lomac_relabel_vnode(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_relabel(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *label) { struct mac_lomac *source, *dest; @@ -974,7 +974,7 @@ } static void -mac_lomac_update_devfsdirent(struct mount *mp, +mac_lomac_devfs_update(struct mount *mp, struct devfs_dirent *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel) { @@ -987,7 +987,7 @@ } static void -mac_lomac_associate_vnode_devfs(struct mount *mp, struct label *mntlabel, +mac_lomac_devfs_vnode_associate(struct mount *mp, struct label *mntlabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { @@ -1000,7 +1000,7 @@ } static int -mac_lomac_associate_vnode_extattr(struct mount *mp, struct label *mntlabel, +mac_lomac_vnode_associate_extattr(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { struct mac_lomac temp, *source, *dest; @@ -1023,7 +1023,7 @@ if (buflen != sizeof(temp)) { if (buflen != sizeof(temp) - sizeof(temp.ml_auxsingle)) { - printf("mac_lomac_associate_vnode_extattr: bad size %d\n", + printf("mac_lomac_vnode_associate_extattr: bad size %d\n", buflen); return (EPERM); } @@ -1034,11 +1034,11 @@ buflen, (char *)&temp, curthread); } if (mac_lomac_valid(&temp) != 0) { - printf("mac_lomac_associate_vnode_extattr: invalid\n"); + printf("mac_lomac_vnode_associate_extattr: invalid\n"); return (EPERM); } if ((temp.ml_flags & MAC_LOMAC_FLAGS_BOTH) != MAC_LOMAC_FLAG_SINGLE) { - printf("mac_lomac_associate_vnode_extattr: not single\n"); + printf("mac_lomac_vnode_associate_extattr: not single\n"); return (EPERM); } @@ -1047,7 +1047,7 @@ } static void -mac_lomac_associate_vnode_singlelabel(struct mount *mp, +mac_lomac_vnode_associate_singlelabel(struct mount *mp, struct label *mntlabel, struct vnode *vp, struct label *vlabel) { struct mac_lomac *source, *dest; @@ -1059,7 +1059,7 @@ } static int -mac_lomac_create_vnode_extattr(struct ucred *cred, struct mount *mp, +mac_lomac_vnode_create_extattr(struct ucred *cred, struct mount *mp, struct label *mntlabel, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *vlabel, struct componentname *cnp) { @@ -1089,7 +1089,7 @@ } static int -mac_lomac_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_setlabel_extattr(struct ucred *cred, struct vnode *vp, struct label *vlabel, struct label *intlabel) { struct mac_lomac *source, temp; @@ -1113,7 +1113,7 @@ * Labeling event operations: IPC object. */ static void -mac_lomac_create_inpcb_from_socket(struct socket *so, struct label *solabel, +mac_lomac_inpcb_create(struct socket *so, struct label *solabel, struct inpcb *inp, struct label *inplabel) { struct mac_lomac *source, *dest; @@ -1125,7 +1125,7 @@ } static void -mac_lomac_create_mbuf_from_socket(struct socket *so, struct label *socketlabel, +mac_lomac_socket_create_mbuf(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_lomac *source, *dest; @@ -1137,7 +1137,7 @@ } static void -mac_lomac_create_socket(struct ucred *cred, struct socket *socket, +mac_lomac_socket_create(struct ucred *cred, struct socket *socket, struct label *socketlabel) { struct mac_lomac *source, *dest; @@ -1149,7 +1149,7 @@ } static void -mac_lomac_create_pipe(struct ucred *cred, struct pipepair *pp, +mac_lomac_pipe_create(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_lomac *source, *dest; @@ -1161,7 +1161,7 @@ } static void -mac_lomac_create_socket_from_socket(struct socket *oldsocket, +mac_lomac_socket_accept(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketlabel) { @@ -1174,7 +1174,7 @@ } static void -mac_lomac_relabel_socket(struct ucred *cred, struct socket *socket, +mac_lomac_socket_relabel(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct label *newlabel) { struct mac_lomac *source, *dest; @@ -1186,7 +1186,7 @@ } static void -mac_lomac_relabel_pipe(struct ucred *cred, struct pipepair *pp, +mac_lomac_pipe_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { struct mac_lomac *source, *dest; @@ -1198,7 +1198,7 @@ } static void -mac_lomac_set_socket_peer_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, +mac_lomac_socket_peer_set_from_mbuf(struct mbuf *mbuf, struct label *mbuflabel, struct socket *socket, struct label *socketpeerlabel) { struct mac_lomac *source, *dest; @@ -1213,7 +1213,7 @@ * Labeling event operations: network objects. */ static void -mac_lomac_set_socket_peer_from_socket(struct socket *oldsocket, +mac_lomac_socket_peer_set_from_socket(struct socket *oldsocket, struct label *oldsocketlabel, struct socket *newsocket, struct label *newsocketpeerlabel) { @@ -1226,7 +1226,7 @@ } static void -mac_lomac_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d, +mac_lomac_bpfdesc_create(struct ucred *cred, struct bpf_d *bpf_d, struct label *bpflabel) { struct mac_lomac *source, *dest; @@ -1238,7 +1238,7 @@ } static void -mac_lomac_create_ifnet(struct ifnet *ifnet, struct label *ifnetlabel) +mac_lomac_ifnet_create(struct ifnet *ifnet, struct label *ifnetlabel) { char tifname[IFNAMSIZ], *p, *q; char tiflist[sizeof(trusted_interfaces)]; @@ -1296,7 +1296,7 @@ } static void -mac_lomac_create_ipq(struct mbuf *fragment, struct label *fragmentlabel, +mac_lomac_ipq_create(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { struct mac_lomac *source, *dest; @@ -1308,7 +1308,7 @@ } static void -mac_lomac_create_datagram_from_ipq(struct ipq *ipq, struct label *ipqlabel, +mac_lomac_ipq_reassemble(struct ipq *ipq, struct label *ipqlabel, struct mbuf *datagram, struct label *datagramlabel) { struct mac_lomac *source, *dest; @@ -1321,7 +1321,7 @@ } static void -mac_lomac_create_fragment(struct mbuf *datagram, struct label *datagramlabel, +mac_lomac_netinet_fragment(struct mbuf *datagram, struct label *datagramlabel, struct mbuf *fragment, struct label *fragmentlabel) { struct mac_lomac *source, *dest; @@ -1333,7 +1333,7 @@ } static void -mac_lomac_create_mbuf_from_inpcb(struct inpcb *inp, struct label *inplabel, +mac_lomac_inpcb_create_mbuf(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { struct mac_lomac *source, *dest; @@ -1345,7 +1345,7 @@ } static void -mac_lomac_create_mbuf_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, +mac_lomac_mbuf_create_linklayer(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *mbuf, struct label *mbuflabel) { struct mac_lomac *dest; @@ -1356,7 +1356,7 @@ } static void -mac_lomac_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct label *bpflabel, +mac_lomac_bpfdesc_create_mbuf(struct bpf_d *bpf_d, struct label *bpflabel, struct mbuf *mbuf, struct label *mbuflabel) { struct mac_lomac *source, *dest; @@ -1368,7 +1368,7 @@ } static void -mac_lomac_create_mbuf_from_ifnet(struct ifnet *ifnet, struct label *ifnetlabel, +mac_lomac_ifnet_create_mbuf(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_lomac *source, *dest; @@ -1380,7 +1380,7 @@ } static void -mac_lomac_create_mbuf_multicast_encap(struct mbuf *oldmbuf, +mac_lomac_mbuf_create_multicast_encap(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *newmbuf, struct label *newmbuflabel) { @@ -1393,7 +1393,7 @@ } static void -mac_lomac_create_mbuf_netlayer(struct mbuf *oldmbuf, struct label *oldmbuflabel, +mac_lomac_mbuf_create_netlayer(struct mbuf *oldmbuf, struct label *oldmbuflabel, struct mbuf *newmbuf, struct label *newmbuflabel) { struct mac_lomac *source, *dest; @@ -1405,7 +1405,7 @@ } static int -mac_lomac_fragment_match(struct mbuf *fragment, struct label *fragmentlabel, +mac_lomac_ipq_match(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { struct mac_lomac *a, *b; @@ -1417,7 +1417,7 @@ } static void -mac_lomac_relabel_ifnet(struct ucred *cred, struct ifnet *ifnet, +mac_lomac_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { struct mac_lomac *source, *dest; @@ -1429,7 +1429,7 @@ } static void -mac_lomac_update_ipq(struct mbuf *fragment, struct label *fragmentlabel, +mac_lomac_ipq_update(struct mbuf *fragment, struct label *fragmentlabel, struct ipq *ipq, struct label *ipqlabel) { @@ -1452,7 +1452,7 @@ * Labeling event operations: processes. */ static void -mac_lomac_execve_transition(struct ucred *old, struct ucred *new, +mac_lomac_vnode_execve_transition(struct ucred *old, struct ucred *new, struct vnode *vp, struct label *vnodelabel, struct label *interpvnodelabel, struct image_params *imgp, struct label *execlabel) @@ -1489,7 +1489,7 @@ } static int -mac_lomac_execve_will_transition(struct ucred *old, struct vnode *vp, +mac_lomac_vnode_execve_will_transition(struct ucred *old, struct vnode *vp, struct label *vnodelabel, struct label *interpvnodelabel, struct image_params *imgp, struct label *execlabel) { @@ -1509,7 +1509,7 @@ } static void -mac_lomac_create_proc0(struct ucred *cred) +mac_lomac_proc_create_swapper(struct ucred *cred) { struct mac_lomac *dest; @@ -1521,7 +1521,7 @@ } static void -mac_lomac_create_proc1(struct ucred *cred) +mac_lomac_proc_create_init(struct ucred *cred) { struct mac_lomac *dest; @@ -1533,7 +1533,7 @@ } static void -mac_lomac_relabel_cred(struct ucred *cred, struct label *newlabel) +mac_lomac_cred_relabel(struct ucred *cred, struct label *newlabel) { struct mac_lomac *source, *dest; @@ -1547,7 +1547,7 @@ * Access control checks. */ static int -mac_lomac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct label *bpflabel, +mac_lomac_bpfdesc_check_receive(struct bpf_d *bpf_d, struct label *bpflabel, struct ifnet *ifnet, struct label *ifnetlabel) { struct mac_lomac *a, *b; @@ -1564,7 +1564,7 @@ } static int -mac_lomac_check_cred_relabel(struct ucred *cred, struct label *newlabel) +mac_lomac_cred_check_relabel(struct ucred *cred, struct label *newlabel) { struct mac_lomac *subj, *new; int error; @@ -1630,7 +1630,7 @@ } static int -mac_lomac_check_cred_visible(struct ucred *u1, struct ucred *u2) +mac_lomac_cred_check_visible(struct ucred *u1, struct ucred *u2) { struct mac_lomac *subj, *obj; @@ -1648,7 +1648,7 @@ } static int -mac_lomac_check_ifnet_relabel(struct ucred *cred, struct ifnet *ifnet, +mac_lomac_ifnet_check_relabel(struct ucred *cred, struct ifnet *ifnet, struct label *ifnetlabel, struct label *newlabel) { struct mac_lomac *subj, *new; @@ -1703,7 +1703,7 @@ } static int -mac_lomac_check_ifnet_transmit(struct ifnet *ifnet, struct label *ifnetlabel, +mac_lomac_ifnet_check_transmit(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_lomac *p, *i; @@ -1718,7 +1718,7 @@ } static int -mac_lomac_check_inpcb_deliver(struct inpcb *inp, struct label *inplabel, +mac_lomac_inpcb_check_deliver(struct inpcb *inp, struct label *inplabel, struct mbuf *m, struct label *mlabel) { struct mac_lomac *p, *i; @@ -1733,7 +1733,7 @@ } static int -mac_lomac_check_kld_load(struct ucred *cred, struct vnode *vp, +mac_lomac_kld_check_load(struct ucred *cred, struct vnode *vp, struct label *label) { struct mac_lomac *subj, *obj; @@ -1754,7 +1754,7 @@ } static int -mac_lomac_check_kld_unload(struct ucred *cred) +mac_lomac_kld_check_unload(struct ucred *cred) { struct mac_lomac *subj; @@ -1770,7 +1770,7 @@ } static int -mac_lomac_check_pipe_ioctl(struct ucred *cred, struct pipepair *pp, +mac_lomac_pipe_check_ioctl(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, unsigned long cmd, void /* caddr_t */ *data) { @@ -1783,7 +1783,7 @@ } static int -mac_lomac_check_pipe_read(struct ucred *cred, struct pipepair *pp, +mac_lomac_pipe_check_read(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_lomac *subj, *obj; @@ -1801,7 +1801,7 @@ } static int -mac_lomac_check_pipe_relabel(struct ucred *cred, struct pipepair *pp, +mac_lomac_pipe_check_relabel(struct ucred *cred, struct pipepair *pp, struct label *pipelabel, struct label *newlabel) { struct mac_lomac *subj, *obj, *new; @@ -1852,7 +1852,7 @@ } static int -mac_lomac_check_pipe_write(struct ucred *cred, struct pipepair *pp, +mac_lomac_pipe_check_write(struct ucred *cred, struct pipepair *pp, struct label *pipelabel) { struct mac_lomac *subj, *obj; @@ -1870,7 +1870,7 @@ } static int -mac_lomac_check_proc_debug(struct ucred *cred, struct proc *proc) +mac_lomac_proc_check_debug(struct ucred *cred, struct proc *proc) { struct mac_lomac *subj, *obj; @@ -1890,7 +1890,7 @@ } static int -mac_lomac_check_proc_sched(struct ucred *cred, struct proc *proc) +mac_lomac_proc_check_sched(struct ucred *cred, struct proc *proc) { struct mac_lomac *subj, *obj; @@ -1910,7 +1910,7 @@ } static int -mac_lomac_check_proc_signal(struct ucred *cred, struct proc *proc, int signum) +mac_lomac_proc_check_signal(struct ucred *cred, struct proc *proc, int signum) { struct mac_lomac *subj, *obj; @@ -1930,7 +1930,7 @@ } static int -mac_lomac_check_socket_deliver(struct socket *so, struct label *socketlabel, +mac_lomac_socket_check_deliver(struct socket *so, struct label *socketlabel, struct mbuf *m, struct label *mbuflabel) { struct mac_lomac *p, *s; @@ -1945,7 +1945,7 @@ } static int -mac_lomac_check_socket_relabel(struct ucred *cred, struct socket *socket, +mac_lomac_socket_check_relabel(struct ucred *cred, struct socket *socket, struct label *socketlabel, struct label *newlabel) { struct mac_lomac *subj, *obj, *new; @@ -1996,7 +1996,7 @@ } static int -mac_lomac_check_socket_visible(struct ucred *cred, struct socket *socket, +mac_lomac_socket_check_visible(struct ucred *cred, struct socket *socket, struct label *socketlabel) { struct mac_lomac *subj, *obj; @@ -2014,7 +2014,7 @@ } static int -mac_lomac_check_system_swapon(struct ucred *cred, struct vnode *vp, +mac_lomac_system_check_swapon(struct ucred *cred, struct vnode *vp, struct label *label) { struct mac_lomac *subj, *obj; @@ -2035,7 +2035,7 @@ } static int -mac_lomac_check_system_sysctl(struct ucred *cred, struct sysctl_oid *oidp, +mac_lomac_system_check_sysctl(struct ucred *cred, struct sysctl_oid *oidp, void *arg1, int arg2, struct sysctl_req *req) { struct mac_lomac *subj; @@ -2063,7 +2063,7 @@ } static int -mac_lomac_check_vnode_create(struct ucred *cred, struct vnode *dvp, +mac_lomac_vnode_check_create(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp, struct vattr *vap) { struct mac_lomac *subj, *obj; @@ -2084,7 +2084,7 @@ } static int -mac_lomac_check_vnode_delete(struct ucred *cred, struct vnode *dvp, +mac_lomac_vnode_check_unlink(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp) { @@ -2108,7 +2108,7 @@ } static int -mac_lomac_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_deleteacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type) { struct mac_lomac *subj, *obj; @@ -2126,7 +2126,7 @@ } static int -mac_lomac_check_vnode_link(struct ucred *cred, struct vnode *dvp, +mac_lomac_vnode_check_link(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp) { @@ -2150,7 +2150,7 @@ } static int -mac_lomac_check_vnode_mmap(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_mmap(struct ucred *cred, struct vnode *vp, struct label *label, int prot, int flags) { struct mac_lomac *subj, *obj; @@ -2178,7 +2178,7 @@ } static void -mac_lomac_check_vnode_mmap_downgrade(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_mmap_downgrade(struct ucred *cred, struct vnode *vp, struct label *label, /* XXX vm_prot_t */ int *prot) { struct mac_lomac *subj, *obj; @@ -2198,7 +2198,7 @@ } static int -mac_lomac_check_vnode_open(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_open(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, int acc_mode) { struct mac_lomac *subj, *obj; @@ -2219,7 +2219,7 @@ } static int -mac_lomac_check_vnode_read(struct ucred *active_cred, struct ucred *file_cred, +mac_lomac_vnode_check_read(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label) { struct mac_lomac *subj, *obj; @@ -2237,7 +2237,7 @@ } static int -mac_lomac_check_vnode_relabel(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_relabel(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct label *newlabel) { struct mac_lomac *old, *new, *subj; @@ -2313,7 +2313,7 @@ } static int -mac_lomac_check_vnode_rename_from(struct ucred *cred, struct vnode *dvp, +mac_lomac_vnode_check_rename_from(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp) { @@ -2337,7 +2337,7 @@ } static int -mac_lomac_check_vnode_rename_to(struct ucred *cred, struct vnode *dvp, +mac_lomac_vnode_check_rename_to(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, int samedir, struct componentname *cnp) { @@ -2363,7 +2363,7 @@ } static int -mac_lomac_check_vnode_revoke(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_revoke(struct ucred *cred, struct vnode *vp, struct label *label) { struct mac_lomac *subj, *obj; @@ -2381,7 +2381,7 @@ } static int -mac_lomac_check_vnode_setacl(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_setacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type, struct acl *acl) { struct mac_lomac *subj, *obj; @@ -2399,7 +2399,7 @@ } static int -mac_lomac_check_vnode_setextattr(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_setextattr(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, int attrnamespace, const char *name, struct uio *uio) { @@ -2420,7 +2420,7 @@ } static int -mac_lomac_check_vnode_setflags(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_setflags(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, u_long flags) { struct mac_lomac *subj, *obj; @@ -2438,7 +2438,7 @@ } static int -mac_lomac_check_vnode_setmode(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_setmode(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, mode_t mode) { struct mac_lomac *subj, *obj; @@ -2456,7 +2456,7 @@ } static int -mac_lomac_check_vnode_setowner(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_setowner(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, uid_t uid, gid_t gid) { struct mac_lomac *subj, *obj; @@ -2474,7 +2474,7 @@ } static int -mac_lomac_check_vnode_setutimes(struct ucred *cred, struct vnode *vp, +mac_lomac_vnode_check_setutimes(struct ucred *cred, struct vnode *vp, struct label *vnodelabel, struct timespec atime, struct timespec mtime) { struct mac_lomac *subj, *obj; @@ -2492,7 +2492,7 @@ } static int -mac_lomac_check_vnode_write(struct ucred *active_cred, +mac_lomac_vnode_check_write(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label) { struct mac_lomac *subj, *obj; @@ -2558,132 +2558,132 @@ static struct mac_policy_ops mac_lomac_ops = { .mpo_policy_init = mac_lomac_policy_init, - .mpo_init_bpfdesc_label = mac_lomac_init_label, - .mpo_init_cred_label = mac_lomac_init_label, - .mpo_init_devfsdirent_label = mac_lomac_init_label, - .mpo_init_ifnet_label = mac_lomac_init_label, - .mpo_init_inpcb_label = mac_lomac_init_label_waitcheck, - .mpo_init_ipq_label = mac_lomac_init_label_waitcheck, - .mpo_init_mbuf_label = mac_lomac_init_label_waitcheck, - .mpo_init_mount_label = mac_lomac_init_label, - .mpo_init_pipe_label = mac_lomac_init_label, - .mpo_init_proc_label = mac_lomac_init_proc_label, - .mpo_init_socket_label = mac_lomac_init_label_waitcheck, - .mpo_init_socket_peer_label = mac_lomac_init_label_waitcheck, - .mpo_init_vnode_label = mac_lomac_init_label, - .mpo_destroy_bpfdesc_label = mac_lomac_destroy_label, - .mpo_destroy_cred_label = mac_lomac_destroy_label, - .mpo_destroy_devfsdirent_label = mac_lomac_destroy_label, - .mpo_destroy_ifnet_label = mac_lomac_destroy_label, - .mpo_destroy_inpcb_label = mac_lomac_destroy_label, - .mpo_destroy_ipq_label = mac_lomac_destroy_label, - .mpo_destroy_mbuf_label = mac_lomac_destroy_label, - .mpo_destroy_mount_label = mac_lomac_destroy_label, - .mpo_destroy_pipe_label = mac_lomac_destroy_label, - .mpo_destroy_proc_label = mac_lomac_destroy_proc_label, - .mpo_destroy_socket_label = mac_lomac_destroy_label, - .mpo_destroy_socket_peer_label = mac_lomac_destroy_label, - .mpo_destroy_vnode_label = mac_lomac_destroy_label, - .mpo_copy_cred_label = mac_lomac_copy_label, - .mpo_copy_ifnet_label = mac_lomac_copy_label, - .mpo_copy_mbuf_label = mac_lomac_copy_label, - .mpo_copy_pipe_label = mac_lomac_copy_label, - .mpo_copy_socket_label = mac_lomac_copy_label, - .mpo_copy_vnode_label = mac_lomac_copy_label, - .mpo_externalize_cred_label = mac_lomac_externalize_label, - .mpo_externalize_ifnet_label = mac_lomac_externalize_label, - .mpo_externalize_pipe_label = mac_lomac_externalize_label, - .mpo_externalize_socket_label = mac_lomac_externalize_label, - .mpo_externalize_socket_peer_label = mac_lomac_externalize_label, - .mpo_externalize_vnode_label = mac_lomac_externalize_label, - .mpo_internalize_cred_label = mac_lomac_internalize_label, - .mpo_internalize_ifnet_label = mac_lomac_internalize_label, - .mpo_internalize_pipe_label = mac_lomac_internalize_label, - .mpo_internalize_socket_label = mac_lomac_internalize_label, - .mpo_internalize_vnode_label = mac_lomac_internalize_label, - .mpo_create_devfs_device = mac_lomac_create_devfs_device, - .mpo_create_devfs_directory = mac_lomac_create_devfs_directory, - .mpo_create_devfs_symlink = mac_lomac_create_devfs_symlink, - .mpo_create_mount = mac_lomac_create_mount, - .mpo_relabel_vnode = mac_lomac_relabel_vnode, - .mpo_update_devfsdirent = mac_lomac_update_devfsdirent, - .mpo_associate_vnode_devfs = mac_lomac_associate_vnode_devfs, - .mpo_associate_vnode_extattr = mac_lomac_associate_vnode_extattr, - .mpo_associate_vnode_singlelabel = - mac_lomac_associate_vnode_singlelabel, - .mpo_create_vnode_extattr = mac_lomac_create_vnode_extattr, - .mpo_setlabel_vnode_extattr = mac_lomac_setlabel_vnode_extattr, - .mpo_create_mbuf_from_socket = mac_lomac_create_mbuf_from_socket, - .mpo_create_pipe = mac_lomac_create_pipe, - .mpo_create_socket = mac_lomac_create_socket, - .mpo_create_socket_from_socket = mac_lomac_create_socket_from_socket, - .mpo_relabel_pipe = mac_lomac_relabel_pipe, - .mpo_relabel_socket = mac_lomac_relabel_socket, - .mpo_set_socket_peer_from_mbuf = mac_lomac_set_socket_peer_from_mbuf, - .mpo_set_socket_peer_from_socket = - mac_lomac_set_socket_peer_from_socket, - .mpo_create_bpfdesc = mac_lomac_create_bpfdesc, - .mpo_create_datagram_from_ipq = mac_lomac_create_datagram_from_ipq, - .mpo_create_fragment = mac_lomac_create_fragment, - .mpo_create_ifnet = mac_lomac_create_ifnet, - .mpo_create_inpcb_from_socket = mac_lomac_create_inpcb_from_socket, - .mpo_create_ipq = mac_lomac_create_ipq, - .mpo_create_mbuf_from_inpcb = mac_lomac_create_mbuf_from_inpcb, - .mpo_create_mbuf_linklayer = mac_lomac_create_mbuf_linklayer, - .mpo_create_mbuf_from_bpfdesc = mac_lomac_create_mbuf_from_bpfdesc, - .mpo_create_mbuf_from_ifnet = mac_lomac_create_mbuf_from_ifnet, - .mpo_create_mbuf_multicast_encap = - mac_lomac_create_mbuf_multicast_encap, - .mpo_create_mbuf_netlayer = mac_lomac_create_mbuf_netlayer, - .mpo_fragment_match = mac_lomac_fragment_match, - .mpo_relabel_ifnet = mac_lomac_relabel_ifnet, - .mpo_update_ipq = mac_lomac_update_ipq, + .mpo_bpfdesc_init_label = mac_lomac_init_label, + .mpo_cred_init_label = mac_lomac_init_label, + .mpo_devfs_init_label = mac_lomac_init_label, + .mpo_ifnet_init_label = mac_lomac_init_label, + .mpo_inpcb_init_label = mac_lomac_init_label_waitcheck, + .mpo_ipq_init_label = mac_lomac_init_label_waitcheck, + .mpo_mbuf_init_label = mac_lomac_init_label_waitcheck, + .mpo_mount_init_label = mac_lomac_init_label, + .mpo_pipe_init_label = mac_lomac_init_label, + .mpo_proc_init_label = mac_lomac_proc_init_label, + .mpo_socket_init_label = mac_lomac_init_label_waitcheck, + .mpo_socket_peer_init_label = mac_lomac_init_label_waitcheck, + .mpo_vnode_init_label = mac_lomac_init_label, + .mpo_bpfdesc_destroy_label = mac_lomac_destroy_label, + .mpo_cred_destroy_label = mac_lomac_destroy_label, + .mpo_devfs_destroy_label = mac_lomac_destroy_label, + .mpo_ifnet_destroy_label = mac_lomac_destroy_label, + .mpo_inpcb_destroy_label = mac_lomac_destroy_label, + .mpo_ipq_destroy_label = mac_lomac_destroy_label, + .mpo_mbuf_destroy_label = mac_lomac_destroy_label, + .mpo_mount_destroy_label = mac_lomac_destroy_label, + .mpo_pipe_destroy_label = mac_lomac_destroy_label, + .mpo_proc_destroy_label = mac_lomac_proc_destroy_label, + .mpo_socket_destroy_label = mac_lomac_destroy_label, + .mpo_socket_peer_destroy_label = mac_lomac_destroy_label, + .mpo_vnode_destroy_label = mac_lomac_destroy_label, + .mpo_cred_copy_label = mac_lomac_copy_label, + .mpo_ifnet_copy_label = mac_lomac_copy_label, + .mpo_mbuf_copy_label = mac_lomac_copy_label, + .mpo_pipe_copy_label = mac_lomac_copy_label, + .mpo_socket_copy_label = mac_lomac_copy_label, + .mpo_vnode_copy_label = mac_lomac_copy_label, + .mpo_cred_externalize_label = mac_lomac_externalize_label, + .mpo_ifnet_externalize_label = mac_lomac_externalize_label, + .mpo_pipe_externalize_label = mac_lomac_externalize_label, + .mpo_socket_externalize_label = mac_lomac_externalize_label, + .mpo_socket_peer_externalize_label = mac_lomac_externalize_label, + .mpo_vnode_externalize_label = mac_lomac_externalize_label, + .mpo_cred_internalize_label = mac_lomac_internalize_label, + .mpo_ifnet_internalize_label = mac_lomac_internalize_label, + .mpo_pipe_internalize_label = mac_lomac_internalize_label, + .mpo_socket_internalize_label = mac_lomac_internalize_label, + .mpo_vnode_internalize_label = mac_lomac_internalize_label, + .mpo_devfs_create_device = mac_lomac_devfs_create_device, + .mpo_devfs_create_directory = mac_lomac_devfs_create_directory, + .mpo_devfs_create_symlink = mac_lomac_devfs_create_symlink, + .mpo_mount_create = mac_lomac_mount_create, + .mpo_vnode_relabel = mac_lomac_vnode_relabel, + .mpo_devfs_update = mac_lomac_devfs_update, + .mpo_devfs_vnode_associate = mac_lomac_devfs_vnode_associate, + .mpo_vnode_associate_extattr = mac_lomac_vnode_associate_extattr, + .mpo_vnode_associate_singlelabel = + mac_lomac_vnode_associate_singlelabel, + .mpo_vnode_create_extattr = mac_lomac_vnode_create_extattr, + .mpo_vnode_setlabel_extattr = mac_lomac_vnode_setlabel_extattr, + .mpo_socket_create_mbuf = mac_lomac_socket_create_mbuf, + .mpo_pipe_create = mac_lomac_pipe_create, + .mpo_socket_create = mac_lomac_socket_create, + .mpo_socket_accept = mac_lomac_socket_accept, + .mpo_pipe_relabel = mac_lomac_pipe_relabel, + .mpo_socket_relabel = mac_lomac_socket_relabel, + .mpo_socket_peer_set_from_mbuf = mac_lomac_socket_peer_set_from_mbuf, + .mpo_socket_peer_set_from_socket = + mac_lomac_socket_peer_set_from_socket, + .mpo_bpfdesc_create = mac_lomac_bpfdesc_create, + .mpo_ipq_reassemble = mac_lomac_ipq_reassemble, + .mpo_netinet_fragment = mac_lomac_netinet_fragment, + .mpo_ifnet_create = mac_lomac_ifnet_create, + .mpo_inpcb_create = mac_lomac_inpcb_create, + .mpo_ipq_create = mac_lomac_ipq_create, + .mpo_inpcb_create_mbuf = mac_lomac_inpcb_create_mbuf, + .mpo_mbuf_create_linklayer = mac_lomac_mbuf_create_linklayer, + .mpo_bpfdesc_create_mbuf = mac_lomac_bpfdesc_create_mbuf, + .mpo_ifnet_create_mbuf = mac_lomac_ifnet_create_mbuf, + .mpo_mbuf_create_multicast_encap = + mac_lomac_mbuf_create_multicast_encap, + .mpo_mbuf_create_netlayer = mac_lomac_mbuf_create_netlayer, + .mpo_ipq_match = mac_lomac_ipq_match, + .mpo_ifnet_relabel = mac_lomac_ifnet_relabel, + .mpo_ipq_update = mac_lomac_ipq_update, .mpo_inpcb_sosetlabel = mac_lomac_inpcb_sosetlabel, - .mpo_execve_transition = mac_lomac_execve_transition, - .mpo_execve_will_transition = mac_lomac_execve_will_transition, - .mpo_create_proc0 = mac_lomac_create_proc0, - .mpo_create_proc1 = mac_lomac_create_proc1, - .mpo_relabel_cred = mac_lomac_relabel_cred, - .mpo_check_bpfdesc_receive = mac_lomac_check_bpfdesc_receive, - .mpo_check_cred_relabel = mac_lomac_check_cred_relabel, - .mpo_check_cred_visible = mac_lomac_check_cred_visible, - .mpo_check_ifnet_relabel = mac_lomac_check_ifnet_relabel, - .mpo_check_ifnet_transmit = mac_lomac_check_ifnet_transmit, - .mpo_check_inpcb_deliver = mac_lomac_check_inpcb_deliver, - .mpo_check_kld_load = mac_lomac_check_kld_load, - .mpo_check_kld_unload = mac_lomac_check_kld_unload, - .mpo_check_pipe_ioctl = mac_lomac_check_pipe_ioctl, - .mpo_check_pipe_read = mac_lomac_check_pipe_read, - .mpo_check_pipe_relabel = mac_lomac_check_pipe_relabel, - .mpo_check_pipe_write = mac_lomac_check_pipe_write, - .mpo_check_proc_debug = mac_lomac_check_proc_debug, - .mpo_check_proc_sched = mac_lomac_check_proc_sched, - .mpo_check_proc_signal = mac_lomac_check_proc_signal, - .mpo_check_socket_deliver = mac_lomac_check_socket_deliver, - .mpo_check_socket_relabel = mac_lomac_check_socket_relabel, - .mpo_check_socket_visible = mac_lomac_check_socket_visible, - .mpo_check_system_swapon = mac_lomac_check_system_swapon, - .mpo_check_system_sysctl = mac_lomac_check_system_sysctl, - .mpo_check_vnode_access = mac_lomac_check_vnode_open, - .mpo_check_vnode_create = mac_lomac_check_vnode_create, - .mpo_check_vnode_delete = mac_lomac_check_vnode_delete, - .mpo_check_vnode_deleteacl = mac_lomac_check_vnode_deleteacl, - .mpo_check_vnode_link = mac_lomac_check_vnode_link, - .mpo_check_vnode_mmap = mac_lomac_check_vnode_mmap, - .mpo_check_vnode_mmap_downgrade = mac_lomac_check_vnode_mmap_downgrade, - .mpo_check_vnode_open = mac_lomac_check_vnode_open, - .mpo_check_vnode_read = mac_lomac_check_vnode_read, - .mpo_check_vnode_relabel = mac_lomac_check_vnode_relabel, - .mpo_check_vnode_rename_from = mac_lomac_check_vnode_rename_from, - .mpo_check_vnode_rename_to = mac_lomac_check_vnode_rename_to, - .mpo_check_vnode_revoke = mac_lomac_check_vnode_revoke, - .mpo_check_vnode_setacl = mac_lomac_check_vnode_setacl, - .mpo_check_vnode_setextattr = mac_lomac_check_vnode_setextattr, - .mpo_check_vnode_setflags = mac_lomac_check_vnode_setflags, - .mpo_check_vnode_setmode = mac_lomac_check_vnode_setmode, - .mpo_check_vnode_setowner = mac_lomac_check_vnode_setowner, - .mpo_check_vnode_setutimes = mac_lomac_check_vnode_setutimes, - .mpo_check_vnode_write = mac_lomac_check_vnode_write, + .mpo_vnode_execve_transition = mac_lomac_vnode_execve_transition, + .mpo_vnode_execve_will_transition = mac_lomac_vnode_execve_will_transition, + .mpo_proc_create_swapper = mac_lomac_proc_create_swapper, + .mpo_proc_create_init = mac_lomac_proc_create_init, + .mpo_cred_relabel = mac_lomac_cred_relabel, + .mpo_bpfdesc_check_receive = mac_lomac_bpfdesc_check_receive, + .mpo_cred_check_relabel = mac_lomac_cred_check_relabel, + .mpo_cred_check_visible = mac_lomac_cred_check_visible, + .mpo_ifnet_check_relabel = mac_lomac_ifnet_check_relabel, + .mpo_ifnet_check_transmit = mac_lomac_ifnet_check_transmit, + .mpo_inpcb_check_deliver = mac_lomac_inpcb_check_deliver, + .mpo_kld_check_load = mac_lomac_kld_check_load, + .mpo_kld_check_unload = mac_lomac_kld_check_unload, + .mpo_pipe_check_ioctl = mac_lomac_pipe_check_ioctl, + .mpo_pipe_check_read = mac_lomac_pipe_check_read, + .mpo_pipe_check_relabel = mac_lomac_pipe_check_relabel, + .mpo_pipe_check_write = mac_lomac_pipe_check_write, + .mpo_proc_check_debug = mac_lomac_proc_check_debug, + .mpo_proc_check_sched = mac_lomac_proc_check_sched, + .mpo_proc_check_signal = mac_lomac_proc_check_signal, + .mpo_socket_check_deliver = mac_lomac_socket_check_deliver, + .mpo_socket_check_relabel = mac_lomac_socket_check_relabel, + .mpo_socket_check_visible = mac_lomac_socket_check_visible, + .mpo_system_check_swapon = mac_lomac_system_check_swapon, + .mpo_system_check_sysctl = mac_lomac_system_check_sysctl, + .mpo_vnode_check_access = mac_lomac_vnode_check_open, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:26:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 76AED16A4E1; Sat, 8 Jul 2006 13:26:38 +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 3677316A4DA for ; Sat, 8 Jul 2006 13:26:38 +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 DE9E443D46 for ; Sat, 8 Jul 2006 13:26:37 +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 k68DQbTc021521 for ; Sat, 8 Jul 2006 13:26:37 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 k68DQbqf021515 for perforce@freebsd.org; Sat, 8 Jul 2006 13:26:37 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:26:37 GMT Message-Id: <200607081326.k68DQbqf021515@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 101002 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:26:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=101002 Change 101002 by rwatson@rwatson_zoo on 2006/07/08 13:26:11 More renaming and sorting notes. Affected files ... .. //depot/projects/trustedbsd/mac2/mac2_notes.txt#5 edit Differences ... ==== //depot/projects/trustedbsd/mac2/mac2_notes.txt#5 (text+ko) ==== @@ -226,3 +226,6 @@ :%s/check_sysarch_ioperm/system_check_ioperm/g +Resort. Easy resort is just to resort vnode_check_unlink since it was +renamed from check_vnode_delete. Really, should also sort to match +object sorting in mac_policy.h. From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:27:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6485216A4E7; Sat, 8 Jul 2006 13:27:40 +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 3384E16A4DA for ; Sat, 8 Jul 2006 13:27:40 +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 BAFD043D45 for ; Sat, 8 Jul 2006 13:27:39 +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 k68DRdv0022177 for ; Sat, 8 Jul 2006 13:27:39 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 k68DRdEt022173 for perforce@freebsd.org; Sat, 8 Jul 2006 13:27:39 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:27:39 GMT Message-Id: <200607081327.k68DRdEt022173@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 101003 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:27:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101003 Change 101003 by rwatson@rwatson_zoo on 2006/07/08 13:26:47 Resort. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/security/mac_lomac/mac_lomac.c#4 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/security/mac_lomac/mac_lomac.c#4 (text+ko) ==== @@ -2084,30 +2084,6 @@ } static int -mac_lomac_vnode_check_unlink(struct ucred *cred, struct vnode *dvp, - struct label *dlabel, struct vnode *vp, struct label *label, - struct componentname *cnp) -{ - struct mac_lomac *subj, *obj; - - if (!mac_lomac_enabled) - return (0); - - subj = SLOT(cred->cr_label); - obj = SLOT(dlabel); - - if (!mac_lomac_subject_dominate(subj, obj)) - return (EACCES); - - obj = SLOT(label); - - if (!mac_lomac_subject_dominate(subj, obj)) - return (EACCES); - - return (0); -} - -static int mac_lomac_vnode_check_deleteacl(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type) { @@ -2492,6 +2468,30 @@ } static int +mac_lomac_vnode_check_unlink(struct ucred *cred, struct vnode *dvp, + struct label *dlabel, struct vnode *vp, struct label *label, + struct componentname *cnp) +{ + struct mac_lomac *subj, *obj; + + if (!mac_lomac_enabled) + return (0); + + subj = SLOT(cred->cr_label); + obj = SLOT(dlabel); + + if (!mac_lomac_subject_dominate(subj, obj)) + return (EACCES); + + obj = SLOT(label); + + if (!mac_lomac_subject_dominate(subj, obj)) + return (EACCES); + + return (0); +} + +static int mac_lomac_vnode_check_write(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label) { @@ -2666,7 +2666,6 @@ .mpo_system_check_sysctl = mac_lomac_system_check_sysctl, .mpo_vnode_check_access = mac_lomac_vnode_check_open, .mpo_vnode_check_create = mac_lomac_vnode_check_create, - .mpo_vnode_check_unlink = mac_lomac_vnode_check_unlink, .mpo_vnode_check_deleteacl = mac_lomac_vnode_check_deleteacl, .mpo_vnode_check_link = mac_lomac_vnode_check_link, .mpo_vnode_check_mmap = mac_lomac_vnode_check_mmap, @@ -2683,6 +2682,7 @@ .mpo_vnode_check_setmode = mac_lomac_vnode_check_setmode, .mpo_vnode_check_setowner = mac_lomac_vnode_check_setowner, .mpo_vnode_check_setutimes = mac_lomac_vnode_check_setutimes, + .mpo_vnode_check_unlink = mac_lomac_vnode_check_unlink, .mpo_vnode_check_write = mac_lomac_vnode_check_write, .mpo_thread_userret = mac_lomac_thread_userret, }; From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:33:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9F56716A4E0; Sat, 8 Jul 2006 13:33:48 +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 6292016A4DD for ; Sat, 8 Jul 2006 13:33:48 +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 1DEA143D46 for ; Sat, 8 Jul 2006 13:33:48 +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 k68DXlBo025828 for ; Sat, 8 Jul 2006 13:33:48 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 k68DXlFo025822 for perforce@freebsd.org; Sat, 8 Jul 2006 13:33:47 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Jul 2006 13:33:47 GMT Message-Id: <200607081333.k68DXlFo025822@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 101004 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:33:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=101004 Change 101004 by rwatson@rwatson_zoo on 2006/07/08 13:33:41 Finish basic renaming pass. Everything compiles again. Affected files ... .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_file.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_getcwd.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_misc.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_fcntl.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_misc.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/i386/ibcs2/ibcs2_misc.c#3 edit .. //depot/projects/trustedbsd/mac2/sys/kern/sysv_msg.c#4 edit Differences ... ==== //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_file.c#3 (text+ko) ==== @@ -314,7 +314,7 @@ /* * Do directory search MAC check using non-cached credentials. */ - if ((error = mac_check_vnode_readdir(td->td_ucred, vp))) + if ((error = mac_vnode_check_readdir(td->td_ucred, vp))) goto out; #endif /* MAC */ if ((error = VOP_READDIR(vp, &auio, fp->f_cred, &eofflag, &ncookies, ==== //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_getcwd.c#3 (text+ko) ==== @@ -169,7 +169,7 @@ * On successful return, *uvpp will be locked */ #ifdef MAC - error = mac_check_vnode_lookup(td->td_ucred, lvp, &cn); + error = mac_vnode_check_lookup(td->td_ucred, lvp, &cn); if (error == 0) #endif error = VOP_LOOKUP(lvp, uvpp, &cn); @@ -215,7 +215,7 @@ eofflag = 0; #ifdef MAC - error = mac_check_vnode_readdir(td->td_ucred, uvp); + error = mac_vnode_check_readdir(td->td_ucred, uvp); if (error == 0) #endif /* MAC */ error = VOP_READDIR(uvp, &uio, td->td_ucred, &eofflag, ==== //depot/projects/trustedbsd/mac2/sys/compat/linux/linux_misc.c#3 (text+ko) ==== @@ -301,7 +301,7 @@ * and to reduce code redundancy all over the place here. */ #ifdef MAC - error = mac_check_vnode_open(td->td_ucred, vp, FREAD); + error = mac_vnode_check_open(td->td_ucred, vp, FREAD); if (error) goto cleanup; #endif ==== //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_fcntl.c#3 (text+ko) ==== @@ -269,7 +269,7 @@ #ifdef MAC vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - error = mac_check_vnode_revoke(td->td_ucred, vp); + error = mac_vnode_check_revoke(td->td_ucred, vp); VOP_UNLOCK(vp, 0, td); if (error) goto out; ==== //depot/projects/trustedbsd/mac2/sys/compat/svr4/svr4_misc.c#3 (text+ko) ==== @@ -293,7 +293,7 @@ } #ifdef MAC - error = mac_check_vnode_readdir(td->td_ucred, vp); + error = mac_vnode_check_readdir(td->td_ucred, vp); if (error) goto out; #endif @@ -455,7 +455,7 @@ auio.uio_offset = off; #ifdef MAC - error = mac_check_vnode_readdir(td->td_ucred, vp); + error = mac_vnode_check_readdir(td->td_ucred, vp); if (error) goto out; #endif @@ -1286,7 +1286,7 @@ #ifdef __FreeBSD__ mtx_destroy(&q->p_mtx); #ifdef MAC - mac_destroy_proc(q); + mac_proc_destroy(q); #endif uma_zfree(proc_zone, q); #endif ==== //depot/projects/trustedbsd/mac2/sys/i386/ibcs2/ibcs2_misc.c#3 (text+ko) ==== @@ -370,7 +370,7 @@ } #ifdef MAC - error = mac_check_vnode_readdir(td->td_ucred, vp); + error = mac_vnode_check_readdir(td->td_ucred, vp); if (error) goto out; #endif @@ -529,7 +529,7 @@ } #ifdef MAC - error = mac_check_vnode_readdir(td->td_ucred, vp); + error = mac_vnode_check_readdir(td->td_ucred, vp); if (error) goto out; #endif ==== //depot/projects/trustedbsd/mac2/sys/kern/sysv_msg.c#4 (text+ko) ==== @@ -857,7 +857,7 @@ msghdr->msg_ts = msgsz; #ifdef MAC /* - * XXXMAC: Should the mac_check_sysv_msgmsq check follow here + * XXXMAC: Should the mac_sysvmsq_check_msgmsq check follow here * immediately? Or, should it be checked just before the msg is * enqueued in the msgq (as it is done now)? */ From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:40:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3CA8916A4DF; Sat, 8 Jul 2006 13:40:58 +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 15FA616A4DD for ; Sat, 8 Jul 2006 13:40:58 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B42C443D46 for ; Sat, 8 Jul 2006 13:40:57 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68Devb2029546 for ; Sat, 8 Jul 2006 13:40:57 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68DevcT029536 for perforce@freebsd.org; Sat, 8 Jul 2006 13:40:57 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 13:40:57 GMT Message-Id: <200607081340.k68DevcT029536@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101005 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:40:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=101005 Change 101005 by rdivacky@rdivacky_witten on 2006/07/08 13:40:55 Add sys_futex() syscall to syscalls.master. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#10 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#10 (text+ko) ==== @@ -406,7 +406,8 @@ 237 AUE_NULL MSTD { int linux_fremovexattr(void); } 238 AUE_NULL MSTD { int linux_tkill(int tid, int sig); } 239 AUE_SENDFILE UNIMPL linux_sendfile64 -240 AUE_NULL UNIMPL linux_futex +240 AUE_NULL MSTD { int linux_sys_futex(void *uaddr, int op, int val, \ + struct timespec *timeout, void *uaddr2, int val3); } 241 AUE_NULL UNIMPL linux_sched_setaffinity 242 AUE_NULL UNIMPL linux_sched_getaffinity 243 AUE_NULL MSTD { int linux_set_thread_area(struct l_user_desc *desc); } From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:44:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8129616A4DF; Sat, 8 Jul 2006 13:44:02 +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 41E9216A4DA for ; Sat, 8 Jul 2006 13:44:02 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CB09C43D45 for ; Sat, 8 Jul 2006 13:44:01 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68Di16L033056 for ; Sat, 8 Jul 2006 13:44:01 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68Di1nB033050 for perforce@freebsd.org; Sat, 8 Jul 2006 13:44:01 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 13:44:01 GMT Message-Id: <200607081344.k68Di1nB033050@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101006 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:44:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=101006 Change 101006 by rdivacky@rdivacky_witten on 2006/07/08 13:43:40 Regen after syscalls.master update. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#10 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#10 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#10 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#10 (text+ko) ==== @@ -704,6 +704,14 @@ char tid_l_[PADL_(int)]; int tid; char tid_r_[PADR_(int)]; char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)]; }; +struct linux_sys_futex_args { + char uaddr_l_[PADL_(void *)]; void * uaddr; char uaddr_r_[PADR_(void *)]; + char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; + char val_l_[PADL_(int)]; int val; char val_r_[PADR_(int)]; + char timeout_l_[PADL_(struct timespec *)]; struct timespec * timeout; char timeout_r_[PADR_(struct timespec *)]; + char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)]; + char val3_l_[PADL_(int)]; int val3; char val3_r_[PADR_(int)]; +}; struct linux_set_thread_area_args { char desc_l_[PADL_(struct l_user_desc *)]; struct l_user_desc * desc; char desc_r_[PADR_(struct l_user_desc *)]; }; @@ -1052,6 +1060,7 @@ int linux_lremovexattr(struct thread *, struct linux_lremovexattr_args *); int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_tkill(struct thread *, struct linux_tkill_args *); +int linux_sys_futex(struct thread *, struct linux_sys_futex_args *); int linux_set_thread_area(struct thread *, struct linux_set_thread_area_args *); int linux_get_thread_area(struct thread *, struct linux_get_thread_area_args *); int linux_fadvise64(struct thread *, struct linux_fadvise64_args *); ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#10 (text+ko) ==== @@ -227,6 +227,7 @@ #define LINUX_SYS_linux_lremovexattr 236 #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_tkill 238 +#define LINUX_SYS_linux_sys_futex 240 #define LINUX_SYS_linux_set_thread_area 243 #define LINUX_SYS_linux_get_thread_area 244 #define LINUX_SYS_linux_fadvise64 250 ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#10 (text+ko) ==== @@ -259,7 +259,7 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_fremovexattr, AUE_NULL }, /* 237 = linux_fremovexattr */ { SYF_MPSAFE | AS(linux_tkill_args), (sy_call_t *)linux_tkill, AUE_NULL }, /* 238 = linux_tkill */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 239 = linux_sendfile64 */ - { 0, (sy_call_t *)nosys, AUE_NULL }, /* 240 = linux_futex */ + { SYF_MPSAFE | AS(linux_sys_futex_args), (sy_call_t *)linux_sys_futex, AUE_NULL }, /* 240 = linux_sys_futex */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 241 = linux_sched_setaffinity */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 242 = linux_sched_getaffinity */ { SYF_MPSAFE | AS(linux_set_thread_area_args), (sy_call_t *)linux_set_thread_area, AUE_NULL }, /* 243 = linux_set_thread_area */ From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:46:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AA1A216A4DF; Sat, 8 Jul 2006 13:46:05 +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 6B4DA16A4DD for ; Sat, 8 Jul 2006 13:46:05 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3564143D46 for ; Sat, 8 Jul 2006 13:46:05 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68Dk5SW034253 for ; Sat, 8 Jul 2006 13:46:05 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68Dk4ZQ034250 for perforce@freebsd.org; Sat, 8 Jul 2006 13:46:04 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 13:46:04 GMT Message-Id: <200607081346.k68Dk4ZQ034250@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101009 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:46:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=101009 Change 101009 by rdivacky@rdivacky_witten on 2006/07/08 13:45:45 Connect linux_futex.c to the build. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/modules/linux/Makefile#4 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/modules/linux/Makefile#4 (text+ko) ==== @@ -8,9 +8,9 @@ .PATH: ${.CURDIR}/../../compat/linux ${.CURDIR}/../../${MACHINE_ARCH}/linux${SFX} KMOD= linux -SRCS= linux${SFX}_dummy.c linux_file.c linux_getcwd.c linux_ioctl.c linux_ipc.c \ - linux${SFX}_machdep.c linux_mib.c linux_misc.c linux_signal.c linux_socket.c \ - linux_stats.c linux_sysctl.c linux${SFX}_sysent.c linux${SFX}_sysvec.c \ +SRCS= linux${SFX}_dummy.c linux_file.c linux_futex.c linux_getcwd.c linux_ioctl.c \ + linux_ipc.c linux${SFX}_machdep.c linux_mib.c linux_misc.c linux_signal.c \ + linux_socket.c linux_stats.c linux_sysctl.c linux${SFX}_sysent.c linux${SFX}_sysvec.c \ linux_uid16.c linux_util.c opt_inet6.h opt_mac.h opt_compat.h \ vnode_if.h device_if.h bus_if.h OBJS= linux${SFX}_locore.o From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:49:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0324916A4E1; Sat, 8 Jul 2006 13:49:21 +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 CFD4C16A4DE for ; Sat, 8 Jul 2006 13:49:20 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 52A4343D45 for ; Sat, 8 Jul 2006 13:49:20 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68DnKWQ036193 for ; Sat, 8 Jul 2006 13:49:20 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68DnJBt036190 for perforce@freebsd.org; Sat, 8 Jul 2006 13:49:19 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 13:49:19 GMT Message-Id: <200607081349.k68DnJBt036190@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101011 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:49:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=101011 Change 101011 by rdivacky@rdivacky_witten on 2006/07/08 13:48:40 FreeBSDify the linux_futex.c code and make it compile. Its mostly SCARG removal and lwp -> thread translation. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_futex.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#7 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_futex.c#2 (text+ko) ==== @@ -32,24 +32,26 @@ */ #include -__KERNEL_RCSID(1, "$NetBSD: linux_futex.c,v 1.5 2005/11/23 16:14:57 manu Exp $"); +/* __KERNEL_RCSID(1, "$NetBSD: linux_futex.c,v 1.5 2005/11/23 16:14:57 manu Exp $"); */ +#include #include #include #include #include -#include #include #include +#include #include -#include -#include +#include +#include +#include struct futex; struct waiting_proc { - struct lwp *wp_l; + struct thread *wp_t; struct futex *wp_new_futex; TAILQ_ENTRY(waiting_proc) wp_list; }; @@ -60,31 +62,20 @@ TAILQ_HEAD(lf_waiting_proc, waiting_proc) f_waiting_proc; }; -static LIST_HEAD(futex_list, futex) futex_list; -static struct lock *futex_lock = NULL; +LIST_HEAD(futex_list, futex) futex_list; +struct mtx futex_mtx; -#define FUTEX_LOCK (void)lockmgr(futex_lock, LK_EXCLUSIVE, NULL) -#define FUTEX_UNLOCK (void)lockmgr(futex_lock, LK_RELEASE, NULL) +#define FUTEX_LOCK mtx_lock(&futex_mtx) +#define FUTEX_UNLOCK mtx_unlock(&futex_mtx) static struct futex *futex_get(void *); static void futex_put(struct futex *); -static int futex_sleep(struct futex *, struct lwp *, unsigned long); +static int futex_sleep(struct futex *, struct thread *, unsigned long); static int futex_wake(struct futex *, int, struct futex *); int -linux_sys_futex(l, v, retval) - struct lwp *l; - void *v; - register_t *retval; +linux_sys_futex(struct thread *td, struct linux_sys_futex_args *args) { - struct linux_sys_futex_args /* { - syscallarg(int *) uaddr; - syscallarg(int) op; - syscallarg(int) val; - syscallarg(const struct timespec *) timeout; - syscallarg(int *) uaddr2; - syscallarg(int) val3; - } */ *uap = v; int val; int ret; struct timespec timeout = { 0, 0 }; @@ -92,49 +83,42 @@ struct futex *f; struct futex *newf; int timeout_hz; + struct timeval tv = {0, 0}; - /* First time use */ - if (futex_lock == NULL) { - futex_lock = malloc(sizeof(struct lock), - M_EMULDATA, M_WAITOK); - lockinit(futex_lock, PZERO|PCATCH, "lockfutex", 0, 0); - FUTEX_LOCK; - LIST_INIT(&futex_list); - FUTEX_UNLOCK; - } - - switch (SCARG(uap, op)) { + switch (args->op) { case LINUX_FUTEX_WAIT: - if ((error = copyin(SCARG(uap, uaddr), + if ((error = copyin(args->uaddr, &val, sizeof(val))) != 0) return error; - if (val != SCARG(uap, val)) + if (val != args->val) return EWOULDBLOCK; - if (SCARG(uap, timeout) != NULL) { - if ((error = copyin(SCARG(uap, timeout), + if (args->timeout != NULL) { + if ((error = copyin(args->timeout, &timeout, sizeof(timeout))) != 0) return error; } -#ifdef DEBUG_LINUX_FUTEX - printf("FUTEX_WAIT %d.%d: val = %d, uaddr = %p, " - "*uaddr = %d, timeout = %d.%09ld\n", - l->l_proc->p_pid, l->l_lid, SCARG(uap, val), - SCARG(uap, uaddr), val, timeout.tv_sec, timeout.tv_nsec); +#ifdef DEBUG + if (ldebug(sys_futex)) + printf("FUTEX_WAIT %d.%d: val = %d, uaddr = %p, " + "*uaddr = %d, timeout = %d.%09ld\n", + l->l_proc->p_pid, l->l_lid, args->val, + args->uaddr, val, timeout.tv_sec, timeout.tv_nsec); #endif - timeout_hz = - mstohz(timeout.tv_sec * 1000 + timeout.tv_nsec / 1000000); + tv.tv_usec = timeout.tv_sec * 1000 + timeout.tv_nsec / 1000000; + timeout_hz = tvtohz(&tv); - f = futex_get(SCARG(uap, uaddr)); - ret = futex_sleep(f, l, timeout_hz); + f = futex_get(args->uaddr); + ret = futex_sleep(f, td, timeout_hz); futex_put(f); -#ifdef DEBUG_LINUX_FUTEX - printf("FUTEX_WAIT %d.%d: uaddr = %p, " - "ret = %d\n", l->l_proc->p_pid, l->l_lid, - SCARG(uap, uaddr), ret); +#ifdef DEBUG + if (ldebug(sys_futex)) + printf("FUTEX_WAIT %d.%d: uaddr = %p, " + "ret = %d\n", l->l_proc->p_pid, l->l_lid, + args->uaddr, ret); #endif switch (ret) { @@ -145,15 +129,17 @@ return EINTR; break; case 0: /* FUTEX_WAKE received */ -#ifdef DEBUG_LINUX_FUTEX - printf("FUTEX_WAIT %d.%d: uaddr = %p, got FUTEX_WAKE\n", - l->l_proc->p_pid, l->l_lid, SCARG(uap, uaddr)); +#ifdef DEBUG + if (ldebug(sys_futex)) + printf("FUTEX_WAIT %d.%d: uaddr = %p, got FUTEX_WAKE\n", + l->l_proc->p_pid, l->l_lid, args->uaddr); #endif return 0; break; default: -#ifdef DEBUG_LINUX_FUTEX - printf("FUTEX_WAIT: unexpected ret = %d\n", ret); +#ifdef DEBUG + if (ldebug(sys_futex)) + printf("FUTEX_WAIT: unexpected ret = %d\n", ret); #endif break; } @@ -167,29 +153,30 @@ * corresponding to the same mapped memory in the sleeping * and the waker process. */ -#ifdef DEBUG_LINUX_FUTEX - printf("FUTEX_WAKE %d.%d: uaddr = %p, val = %d\n", - l->l_proc->p_pid, l->l_lid, - SCARG(uap, uaddr), SCARG(uap, val)); +#ifdef DEBUG + if (ldebug(sys_futex)) + printf("FUTEX_WAKE %d.%d: uaddr = %p, val = %d\n", + l->l_proc->p_pid, l->l_lid, + args->uaddr, args->val); #endif - f = futex_get(SCARG(uap, uaddr)); - *retval = futex_wake(f, SCARG(uap, val), NULL); + f = futex_get(args->uaddr); + td->td_retval[0] = futex_wake(f, args->val, NULL); futex_put(f); break; case LINUX_FUTEX_CMP_REQUEUE: - if ((error = copyin(SCARG(uap, uaddr), + if ((error = copyin(args->uaddr, &val, sizeof(val))) != 0) return error; - if (val != SCARG(uap, val3)) + if (val != args->val3) return EAGAIN; /* FALLTHROUGH */ case LINUX_FUTEX_REQUEUE: - f = futex_get(SCARG(uap, uaddr)); - newf = futex_get(SCARG(uap, uaddr2)); - *retval = futex_wake(f, SCARG(uap, val), newf); + f = futex_get(args->uaddr); + newf = futex_get(args->uaddr2); + td->td_retval[0] = futex_wake(f, args->val, newf); futex_put(f); futex_put(newf); @@ -197,19 +184,18 @@ case LINUX_FUTEX_FD: printf("linux_sys_futex: unimplemented op %d\n", - SCARG(uap, op)); + args->op); break; default: printf("linux_sys_futex: unkonwn op %d\n", - SCARG(uap, op)); + args->op); break; } return 0; } static struct futex * -futex_get(uaddr) - void *uaddr; +futex_get(void *uaddr) { struct futex *f; @@ -224,7 +210,7 @@ FUTEX_UNLOCK; /* Not found, create it */ - f = malloc(sizeof(*f), M_EMULDATA, M_WAITOK); + f = malloc(sizeof(*f), M_LINUX, M_WAITOK); f->f_uaddr = uaddr; f->f_refcount = 1; TAILQ_INIT(&f->f_waiting_proc); @@ -244,31 +230,29 @@ FUTEX_LOCK; LIST_REMOVE(f, f_list); FUTEX_UNLOCK; - free(f, M_EMULDATA); + free(f, M_LINUX); } return; } static int -futex_sleep(f, l, timeout) - struct futex *f; - struct lwp *l; - unsigned long timeout; +futex_sleep(struct futex *f, struct thread *td, unsigned long timeout) { struct waiting_proc *wp; int ret; - wp = malloc(sizeof(*wp), M_EMULDATA, M_WAITOK); - wp->wp_l = l; + wp = malloc(sizeof(*wp), M_LINUX, M_WAITOK); + wp->wp_t = td; wp->wp_new_futex = NULL; FUTEX_LOCK; TAILQ_INSERT_TAIL(&f->f_waiting_proc, wp, wp_list); FUTEX_UNLOCK; -#ifdef DEBUG_LINUX_FUTEX - printf("FUTEX --> %d.%d tlseep timeout = %ld\n", l->l_proc->p_pid, - l->l_lid, timeout); +#ifdef DEBUG + if (ldebug(sys_futex)) + printf("FUTEX --> %d.%d tlseep timeout = %ld\n", l->l_proc->p_pid, + l->l_lid, timeout); #endif ret = tsleep(wp, PCATCH|PZERO, "linuxfutex", timeout); @@ -277,20 +261,17 @@ FUTEX_UNLOCK; if ((ret == 0) && (wp->wp_new_futex != NULL)) { - ret = futex_sleep(wp->wp_new_futex, l, timeout); + ret = futex_sleep(wp->wp_new_futex, td, timeout); futex_put(wp->wp_new_futex); /* futex_get called in wakeup */ } - free(wp, M_EMULDATA); + free(wp, M_LINUX); return ret; } static int -futex_wake(f, n, newf) - struct futex *f; - int n; - struct futex *newf; +futex_wake(struct futex *f, int n, struct futex *newf) { struct waiting_proc *wp; int count = 0; ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#7 (text+ko) ==== @@ -112,6 +112,8 @@ extern int linux_userret(struct thread *); extern int linux_proc_exit(struct thread *); extern struct rwlock emul_lock; +extern LIST_HEAD(futex_list, futex) futex_list; +extern struct mtx futex_mtx; /* * Linux syscalls return negative errno's, we do positive and map them @@ -919,6 +921,8 @@ linux_proc_exit_p = linux_proc_exit; linux_userret_p = linux_userret; rw_init(&emul_lock, "emuldata lock"); + LIST_INIT(&futex_list); + mtx_init(&futex_mtx, "futex protection lock", NULL, MTX_DEF); break; case MOD_UNLOAD: for (brandinfo = &linux_brandlist[0]; *brandinfo != NULL; @@ -943,6 +947,7 @@ linux_proc_exit_p = NULL; linux_userret_p = NULL; rw_destroy(&emul_lock); + mtx_destroy(&futex_mtx); break; default: return EOPNOTSUPP; From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:54:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 978A016A4DF; Sat, 8 Jul 2006 13:54:27 +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 5B69616A4DA for ; Sat, 8 Jul 2006 13:54:27 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 11B3643D45 for ; Sat, 8 Jul 2006 13:54:27 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68DsQxC039343 for ; Sat, 8 Jul 2006 13:54:26 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68DsQxG039339 for perforce@freebsd.org; Sat, 8 Jul 2006 13:54:26 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 13:54:26 GMT Message-Id: <200607081354.k68DsQxG039339@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101012 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:54:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=101012 Change 101012 by rdivacky@rdivacky_witten on 2006/07/08 13:53:36 Move the linux_futex.* files to compat/linux as they are machine independant. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_futex.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_futex.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_futex.c#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_futex.h#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:56:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0248E16A4E0; Sat, 8 Jul 2006 13:56:31 +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 B998816A4DA for ; Sat, 8 Jul 2006 13:56:30 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 709AA43D49 for ; Sat, 8 Jul 2006 13:56:30 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68DuURF041174 for ; Sat, 8 Jul 2006 13:56:30 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68DuUPa041171 for perforce@freebsd.org; Sat, 8 Jul 2006 13:56:30 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 8 Jul 2006 13:56:30 GMT Message-Id: <200607081356.k68DuUPa041171@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101014 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:56:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=101014 Change 101014 by rdivacky@rdivacky_witten on 2006/07/08 13:56:21 Make the linux_futex.c compile after the move. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_futex.c#2 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_futex.c#2 (text+ko) ==== @@ -44,9 +44,14 @@ #include #include -#include -#include -#include +#ifdef COMPAT_LINUX32 +#include +#include +#else +#include +#include +#endif +#include struct futex; From owner-p4-projects@FreeBSD.ORG Sat Jul 8 13:58:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3393B16A4E0; Sat, 8 Jul 2006 13:58:35 +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 F351516A4DA for ; Sat, 8 Jul 2006 13:58:34 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A10BF43D49 for ; Sat, 8 Jul 2006 13:58:34 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68DwYZL042462 for ; Sat, 8 Jul 2006 13:58:34 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68DwYOn042459 for perforce@freebsd.org; Sat, 8 Jul 2006 13:58:34 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sat, 8 Jul 2006 13:58:34 GMT Message-Id: <200607081358.k68DwYOn042459@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101016 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 13:58:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=101016 Change 101016 by wkoszek@wkoszek_laptop on 2006/07/08 13:57:39 Bring intr_enable() to cpufunc.h and uncomment calling in machdep.c. It might be useful to make sure some portions of the code are called with interrupts enabled/disabled (we already have intr_destroy() and intr_restore() couple). XXXMIPS: For know I've been given free hand with modifications on this branch. Since it's P4, we accept things going wrong for a while. It will be basically related with directory structure, since we will have to spend some time on good planning and reviewing, if the chip versions bring big differences between themselves. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#11 edit .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#8 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#11 (text+ko) ==== @@ -188,6 +188,17 @@ return (s); } +static __inline register_t +intr_enable(void) +{ + register_t s; + + s = mips_rd_status(); + mips_wr_status(s | MIPS_SR_IE); + + return (s); +} + #define intr_restore(s) mips_wr_status((s)) static __inline void ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#8 (text+ko) ==== @@ -295,6 +295,42 @@ } +void +platform_start(int argc, char **argv) +{ + volatile uint32_t * dest_ch; + +#define MALTA_FPGA_BASE 0x1f000000 /* FPGA: */ +#define MALTA_FPGA_SIZE 0x00c00000 /* 12 MByte */ + +#define MALTA_LEDBAR (MALTA_FPGA_BASE + 0x408) +#define MALTA_ASCIIWORD (MALTA_FPGA_BASE + 0x410) +#define MALTA_ASCII_BASE (MALTA_FPGA_BASE + 0x418) +#define MALTA_ASCIIPOS0 0x00 +#define MALTA_ASCIIPOS1 0x08 +#define MALTA_ASCIIPOS2 0x10 +#define MALTA_ASCIIPOS3 0x18 +#define MALTA_ASCIIPOS4 0x20 +#define MALTA_ASCIIPOS5 0x28 +#define MALTA_ASCIIPOS6 0x30 +#define MALTA_ASCIIPOS7 0x38 + +#define MALTA_PUTCHAR(pos, ch) \ + dest_ch = (uint32_t *) \ + MIPS_PHYS_TO_KSEG0(MALTA_ASCII_BASE + MALTA_ASCIIPOS ## pos); \ + *dest_ch = (uint32_t) (ch); + + MALTA_PUTCHAR(0, 'F'); + MALTA_PUTCHAR(1, 'r'); + MALTA_PUTCHAR(2, 'e'); + MALTA_PUTCHAR(3, 'E'); + MALTA_PUTCHAR(4, 'B'); + MALTA_PUTCHAR(5, 'S'); + MALTA_PUTCHAR(6, 'D'); + + memset((char *)MIPS_PHYS_TO_KSEG0(0x1fc00500 + 0x04), 'x', 10); +} + void setPQL2(int *const size, int *const ways); void From owner-p4-projects@FreeBSD.ORG Sat Jul 8 14:01:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3D06916A4E1; Sat, 8 Jul 2006 14:01: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 F198116A4E0 for ; Sat, 8 Jul 2006 14:01:40 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E1E8043D5D for ; Sat, 8 Jul 2006 14:01:38 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68E1cQM044710 for ; Sat, 8 Jul 2006 14:01:38 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68E1cnD044707 for perforce@freebsd.org; Sat, 8 Jul 2006 14:01:38 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sat, 8 Jul 2006 14:01:38 GMT Message-Id: <200607081401.k68E1cnD044707@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101017 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 14:01:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=101017 Change 101017 by wkoszek@wkoszek_laptop on 2006/07/08 14:01:17 Forced commit to note it's brought this change by accident. Will be moved somewhere alse shortly. intr_enable()-related comment refered to autoconf.c change, submitted in a second. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#9 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#9 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Sat Jul 8 14:03:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6CF3916A4DE; Sat, 8 Jul 2006 14:03:42 +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 17E1D16A4DA for ; Sat, 8 Jul 2006 14:03:42 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D87C843D45 for ; Sat, 8 Jul 2006 14:03:41 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68E3fFs047172 for ; Sat, 8 Jul 2006 14:03:41 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68E3fpq047169 for perforce@freebsd.org; Sat, 8 Jul 2006 14:03:41 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sat, 8 Jul 2006 14:03:41 GMT Message-Id: <200607081403.k68E3fpq047169@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101018 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 14:03:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=101018 Change 101018 by wkoszek@wkoszek_laptop on 2006/07/08 14:02:41 Comment from Change 101016: Bring intr_enable() to cpufunc.h and uncomment calling in machdep.c. It might be useful to make sure some portions of the code are called with interrupts enabled/disabled (we already have intr_destroy() and intr_restore() couple). Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/autoconf.c#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/autoconf.c#4 (text+ko) ==== @@ -99,12 +99,10 @@ * disabled in the interrupt controllers until interrupt handlers * are registered. */ -/* - * XXXMIPS: Check if it's needed. - */ -#if 0 + /* + * XXMIPS: Check if it's needed. + */ intr_enable(); -#endif /* initialize new bus architecture */ root_bus_configure(); From owner-p4-projects@FreeBSD.ORG Sat Jul 8 14:19:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C048316A4DF; Sat, 8 Jul 2006 14:19:01 +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 9ACFD16A4DD for ; Sat, 8 Jul 2006 14:19:01 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5246A43D4C for ; Sat, 8 Jul 2006 14:19:01 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68EJ1jD054977 for ; Sat, 8 Jul 2006 14:19:01 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68EJ08g054961 for perforce@freebsd.org; Sat, 8 Jul 2006 14:19:00 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sat, 8 Jul 2006 14:19:00 GMT Message-Id: <200607081419.k68EJ08g054961@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101019 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 14:19:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=101019 Change 101019 by wkoszek@wkoszek_laptop on 2006/07/08 14:18:39 Bring some readable macros from juli's code to include/asm.h. Remove those from include/asmacros.h. One is used by the kernelland, and another one by the userland, but I don't need to distinguish this differece, since we've concentrated on the kernel side of the problem. Bring juli's locore.S stuff. Should be reviewed and checked with the MIPS 4Kc specification. The last page of "Hardware initialization" chapter gives nice description how this should look like. Addtionally NetBSD's locore.S also have probably some differences from what I've noticed. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/asm.h#2 edit .. //depot/projects/mips2/src/sys/mips/include/asmacros.h#2 edit .. //depot/projects/mips2/src/sys/mips/mips/locore.S#5 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/asm.h#2 (text+ko) ==== @@ -96,14 +96,40 @@ #endif #endif -#ifdef notyet +/* + * XXXMIPS: I don't like #ifdef noyet, since vim doesn't seem to understand + * it. + */ +#if 0 /* * Load the global pointer. */ #define LDGP(reg) \ ldgp gp, 0(reg) +#endif /* notyet */ + +/* + * XXXMIPS: Stolen from juli's code. + * begin + */ + +#define GLOBAL(sym) \ + .globl sym; sym: -#endif +#define XLEAF(sym) \ + .globl sym; sym: + +#define LEAF(sym) \ + .globl sym; sym: .frame sp, 0, ra + +#define ENTRY(sym) \ + .text; .globl sym; sym: + +#define END(sym) + +/* XXXMIPS: end */ + + #define RCSID(x) .text; .asciz x ==== //depot/projects/mips2/src/sys/mips/include/asmacros.h#2 (text+ko) ==== @@ -34,6 +34,7 @@ #include +#if 0 /* XXX too much duplication in various asm*.h's. */ /* @@ -190,5 +191,5 @@ addq $PC_ ## member, reg #endif /* LOCORE */ - +#endif #endif /* !_MACHINE_ASMACROS_H_ */ ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#5 (text+ko) ==== @@ -1,21 +1,21 @@ /*- - * Copyright (c) 2006 Fill this file and put your name here + * Copyright (c) 2003-2004 Juli Mallett * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer, - * without modification, immediately at the beginning of the file. - * 2. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT @@ -23,16 +23,96 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * + * $FreeBSD$ */ -#include "assym.s" #include #include -__FBSDID("$FreeBSD$"); +#include +#include + +#include "assym.s" + + .data +GLOBAL(stackspace) + .space PAGE_SIZE /* Smaller than it should be since it's temp. */ +GLOBAL(topstack) + + .set noreorder + .text +GLOBAL(btext) +ENTRY(_start) + /* + * t0: Bits to preserve if set: + * Soft reset + * Boot exception vectors (firmware-provided) + */ + li t0, MIPS_SR_BEV | MIPS_SR_SR + /* + * t1: Bits to set explicitly: + * Kernel mode is 64-bit + * Enable FPU + */ /* - * XXXMIPS: Fill this later. + * XXXMIPS: look at this. I think "Kernel mode is 64-bit" == MIPS_SR_KX, so + * it's probably worth to remove it soon. */ -ENTRY(btext) -ENTRY(_start) + li t1, MIPS_SR_KX | MIPS_SR_COP_1_BIT + + /* + * Read coprocessor 0 status register, clear bits not + * preserved (namely, clearing interrupt bits), and set + * bits we want to explicitly set. + */ + mfc0 t2, MIPS_COP_0_STATUS + and t2, t0 + or t2, t1 + mtc0 t2, MIPS_COP_0_STATUS + COP0_SYNC + /* Extra nops for the FPU to spin up. */ + + /* Clear cause register. */ + mtc0 zero, MIPS_COP_0_CAUSE + COP0_SYNC + + /* Read and store the PrID FPU ID for CPU identification. */ + mfc0 t0, MIPS_COP_0_PRID + cfc1 t1, MIPS_FPU_ID + sw t0, cpu_id + sw t1, fpu_id + + /* + * Set up the GP. + * XXXMIPS: I did 'dla' -> 'la' conversion here. + */ + la gp, _gp + + /* + * Set up our temporary stack. + * XXXMIPS: I did 'dla' -> 'la' conversion here. + */ + la sp, topstack + + + + /* Call the platform-specific startup code. */ + jal platform_start + nop + + /* + * XXXMIPS: invalid opcodes here. + */ +#if 0 + lw k0, pcpup + lw k0, PC_CURTHREAD(k0) + lw k0, TD_PCB(k0) + lw k0, PCB_REG_SP(k0) +#endif + + /* Start MI things rolling. */ + jal mi_startup nop + + /* NOTREACHED */ +END(start) From owner-p4-projects@FreeBSD.ORG Sat Jul 8 15:01:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1834316A4E5; Sat, 8 Jul 2006 15:01:06 +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 D078A16A4DA for ; Sat, 8 Jul 2006 15:01:05 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2638E43D55 for ; Sat, 8 Jul 2006 15:01:05 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68F15Zm077214 for ; Sat, 8 Jul 2006 15:01:05 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68F14Gd077208 for perforce@freebsd.org; Sat, 8 Jul 2006 15:01:04 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 8 Jul 2006 15:01:04 GMT Message-Id: <200607081501.k68F14Gd077208@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101022 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 15:01:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=101022 Change 101022 by hselasky@hselasky_mini_itx on 2006/07/08 15:00:47 Added new flag "USBD_USE_DMA". Updated the documentation. Fixed some typos. USBD_USE_DMA: This flag will cause the USB host controller driver to not allocate a second data buffer, "xfer->buffer". Instead of transferring data using "xfer->buffer", data must be transferred by a call to "usbd_copy_in(&(xfer->buf_data), offset, src, len)" or "usbd_copy_out(&(xfer->buf_data), offset, dst, len)". This saves an extra data copy. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/README#5 edit .. //depot/projects/usb/src/sys/dev/usb/ugen.c#5 edit .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#7 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/README#5 (text+ko) ==== @@ -37,7 +37,7 @@ One must setup the USB transfer, struct usbd_xfer, from the callback handler, which is required for non-blocking operation, in the end. -This behaviour is also very practical when writing USB device drivers, because +This behavior is also very practical when writing USB device drivers, because it is easy to make a loop, starting the next transfer from the previous. Simply reorder the labels! The callback's lock is locked by the caller. This solves synchronization problems related to stopping USB transfers. @@ -218,24 +218,56 @@ - The "flags" field allows one to set flags for the transfer. Valid flags are: USBD_SYNCHRONOUS + This flag can only be used with the default callback, + "usbd_default_callback()", and will cause the + "usbd_transfer_start()" function to sleep, exiting all + mutexes, until the transfer is finished. This flag is + depreciated. + USBD_FORCE_SHORT_XFER + This flag forces the last USB packet sent to be short. A short + packet has a length of less than "xfer->max_packet_size", which + derives from "wMaxPacketSize". + USBD_SHORT_XFER_OK + This flag allows the transfer length, "xfer->actlen" to be + less than "xfer->length", upon completion of a transfer. + USBD_CUSTOM_CLEARSTALL + USBD_USE_POLLING + This flag can be used with any callback and will cause the + "usbd_transfer_start()" function to wait, using "DELAY()", + without exiting any mutexes, until the transfer is finished or + has timed out. + USBD_SELF_DESTRUCT + This flag allows one to free a transfer from its + callback function. + + USBD_USE_DMA + This flag will cause the USB host controller driver to not + allocate a second data buffer, "xfer->buffer". Instead of + transferring data using "xfer->buffer", data must be + transferred by a call to "usbd_copy_in(&(xfer->buf_data), + offset, src, len)" or "usbd_copy_out(&(xfer->buf_data), + offset, dst, len)". This saves an extra data copy. + +- The "bufsize" field sets the total buffer size in bytes. If + this field is zero, "wMaxPacketSize" will be used, multiplied by the + "frames" field if the transfer type is isochronous. This is useful for + setting up interrupt pipes. This field is mandatory. -- The "bufsize" field sets the total pipe buffer size in bytes. If - this field is zero, "wMaxPacketSize" will be used. This is useful for - setting up interrupt pipes. For control transfers "bufsize" includes the - length of the request structure. This field is mandatory. + NOTE: For control transfers "bufsize" includes + the length of the request structure. - The "callback" field sets the USB callback. This field is mandatory. MUTEX NOTE: =========== -When you create a mutex, using "mtx_init()", don't forget to call "mtx_destroy()" at detach, -else you can get freed memory accessed panics. +When you create a mutex, using "mtx_init()", don't forget to call +"mtx_destroy()" at detach, else you can get "freed memory accessed" +panics. --HPS - ==== //depot/projects/usb/src/sys/dev/usb/ugen.c#5 (text+ko) ==== @@ -1918,7 +1918,8 @@ if(usbd_do_request_flags (sc->sc_udev, &ur->ucr_request, data, - ur->ucr_flags, &ur->ucr_actlen, USBD_DEFAULT_TIMEOUT)) + (ur->ucr_flags & USBD_SHORT_XFER_OK), &ur->ucr_actlen, + USBD_DEFAULT_TIMEOUT)) { error = EIO; break; ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#7 (text+ko) ==== @@ -271,7 +271,8 @@ USBD_SHORT_XFER_OK| USBD_CUSTOM_CLEARSTALL| USBD_USE_POLLING| - USBD_SELF_DESTRUCT))) + USBD_SELF_DESTRUCT| + USBD_USE_DMA))) { error = USBD_BAD_FLAG; PRINTF(("invalid flag(s) specified: " From owner-p4-projects@FreeBSD.ORG Sat Jul 8 16:37:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A63D716A4E5; Sat, 8 Jul 2006 16:37:20 +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 8099516A4DA for ; Sat, 8 Jul 2006 16:37:20 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 43DC443D67 for ; Sat, 8 Jul 2006 16:37:13 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68GbDbh055820 for ; Sat, 8 Jul 2006 16:37:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68GbCni055815 for perforce@freebsd.org; Sat, 8 Jul 2006 16:37:12 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 16:37:12 GMT Message-Id: <200607081637.k68GbCni055815@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101031 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 16:37:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=101031 Change 101031 by imp@imp_lighthouse on 2006/07/08 16:36:41 First steps towards making the hinted device enumeration stuff more generic. Affected files ... .. //depot/projects/arm/src/sys/kern/bus_if.m#2 edit .. //depot/projects/arm/src/sys/kern/subr_bus.c#9 edit .. //depot/projects/arm/src/sys/sys/bus.h#5 edit Differences ... ==== //depot/projects/arm/src/sys/kern/bus_if.m#2 (text+ko) ==== @@ -507,3 +507,25 @@ enum intr_trigger _trig; enum intr_polarity _pol; } DEFAULT bus_generic_config_intr; + +/** + * @brief Notify a (bus) driver about a child that the hints mechanism + * believes it has discovered. + * + * The bus is responsible for then adding the child in the right order + * and discovering other things about the child. The bus driver is + * free to ignore this hint, to do special things, etc. It is all up + * to the bus driver to interpret. + * + * This method is only called in response to the parent bus asking for + * hinted devices to be enumerated. + * + * @param _dev the bus device + * @param _dname the name of the device w/o unit numbers + * @param _dunit the unit number of the device + */ +METHOD void hinted_child { + device_t _dev; + const char * _dname; + int _dunit; +}; ==== //depot/projects/arm/src/sys/kern/subr_bus.c#9 (text+ko) ==== @@ -3799,6 +3799,40 @@ return (error); } +/** + * @brief Enumerate all hinted devices for this bus. + * + * Walks throught he hints for this bus and calls the bus_hinted_child + * routine for each one it fines. It searches first for the specific + * bus that's being probed for hinted children (eg isa0), and then for + * generic children (eg isa). + * + * @param dev bus device to enumerate + */ +void +bus_enumerate_hinted_children(device_t bus) +{ + int i; + const char *dname, *busname; + int dunit; + + /* + * enumerate all devices on the specific bus + */ + busname = device_get_nameunit(bus); + i = 0; + while (resource_find_match(&i, &dname, &dunit, "at", busname) == 0) + BUS_HINTED_CHILD(bus, dname, dunit); + + /* + * and all the generic ones. + */ + busname = device_get_name(bus); + i = 0; + while (resource_find_match(&i, &dname, &dunit, "at", busname) == 0) + BUS_HINTED_CHILD(bus, dname, dunit); +} + #ifdef BUS_DEBUG /* the _short versions avoid iteration by not calling anything that prints ==== //depot/projects/arm/src/sys/sys/bus.h#5 (text+ko) ==== @@ -322,6 +322,7 @@ int bus_child_present(device_t child); int bus_child_pnpinfo_str(device_t child, char *buf, size_t buflen); int bus_child_location_str(device_t child, char *buf, size_t buflen); +void bus_enumerate_hinted_children(device_t bus); static __inline struct resource * bus_alloc_resource_any(device_t dev, int type, int *rid, u_int flags) From owner-p4-projects@FreeBSD.ORG Sat Jul 8 16:38:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6652716A4E6; Sat, 8 Jul 2006 16:38:17 +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 4412716A4E1 for ; Sat, 8 Jul 2006 16:38:17 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0EAFF43D6D for ; Sat, 8 Jul 2006 16:38:15 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68GcEoA056420 for ; Sat, 8 Jul 2006 16:38:14 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68GcEEN056414 for perforce@freebsd.org; Sat, 8 Jul 2006 16:38:14 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 16:38:14 GMT Message-Id: <200607081638.k68GcEEN056414@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101032 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 16:38:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=101032 Change 101032 by imp@imp_lighthouse on 2006/07/08 16:37:48 Enumerate bus using hints, plus cleanup of code. Affected files ... .. //depot/projects/arm/src/sys/dev/spibus/spibus.c#2 edit Differences ... ==== //depot/projects/arm/src/sys/dev/spibus/spibus.c#2 (text+ko) ==== @@ -32,27 +32,42 @@ struct spibus_softc *sc = SPIBUS_SOFTC(dev); sc->dev = dev; - /* XXX need to do isahints trick */ + bus_enumerate_hinted_children(dev); return (bus_generic_attach(dev)); } +/* + * Since this is not a self-enumerating bus, and since we always add + * children in attach, we have to always delete children here. + */ static int spibus_detach(device_t dev) { + int err, ndevs, i; + device_t *devlist; + + if ((err = bus_generic_detach(dev)) != 0) + return (err); + if ((err = device_get_children(dev, &devlist, &ndevs)) != 0) + return (err); + for (i = 0; i < ndevs; i++) + device_delete_child(dev, devlist[i]); + free(devlist, M_TEMP); + return (0); } static int -spibus_suspend(device_t self) +spibus_suspend(device_t dev) { - return (0); + return (bus_generic_suspend(dev)); } static int -spibus_resume(device_t self) +spibus_resume(device_t dev) { - return (0); + return (bus_generic_resume(dev)); } static int @@ -111,6 +126,33 @@ return (0); } +static device_t +spibus_add_child(device_t dev, int order, const char *name, int unit) +{ + device_t child; + struct spibus_ivar *devi; + + child = device_add_child_ordered(dev, order, name, unit); + if (child == NULL) + return (child); + devi = malloc(sizeof(struct spibus_ivar), M_DEVBUF, M_NOWAIT | M_ZERO); + if (devi != NULL) + return (0); + device_set_ivars(child, devi); + return (child); +} + +static void +spibus_hinted_child(device_t bus, const char *dname, int dunit) +{ + device_t child; + struct spibus_ivar *devi; + + child = BUS_ADD_CHILD(bus, 0, dname, dunit); + devi = SPIBUS_IVAR(child); + resource_int_value(dname, dunit, "cs", &devi->cs); +} + static device_method_t spibus_methods[] = { /* Device interface */ DEVMETHOD(device_probe, spibus_probe), @@ -121,12 +163,14 @@ DEVMETHOD(device_resume, spibus_resume), /* Bus interface */ + DEVMETHOD(bus_add_child, spibus_add_child), DEVMETHOD(bus_print_child, spibus_print_child), DEVMETHOD(bus_driver_added, bus_generic_driver_added), DEVMETHOD(bus_probe_nomatch, spibus_probe_nomatch), DEVMETHOD(bus_read_ivar, spibus_read_ivar), DEVMETHOD(bus_child_pnpinfo_str, spibus_child_pnpinfo_str), DEVMETHOD(bus_child_location_str, spibus_child_location_str), + DEVMETHOD(bus_hinted_child, spibus_hinted_child), { 0, 0 } }; @@ -139,6 +183,5 @@ devclass_t spibus_devclass; -/* Maybe we need to have a slot device? */ DRIVER_MODULE(spibus, at91_spi, spibus_driver, spibus_devclass, 0, 0); MODULE_VERSION(spibus, 1); From owner-p4-projects@FreeBSD.ORG Sat Jul 8 16:42:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 007D316A4E0; Sat, 8 Jul 2006 16:42:21 +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 AF27716A4DE for ; Sat, 8 Jul 2006 16:42:20 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6799D43D49 for ; Sat, 8 Jul 2006 16:42:20 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68GgKAe059120 for ; Sat, 8 Jul 2006 16:42:20 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68GgKjB059114 for perforce@freebsd.org; Sat, 8 Jul 2006 16:42:20 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 16:42:20 GMT Message-Id: <200607081642.k68GgKjB059114@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101033 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 16:42:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=101033 Change 101033 by imp@imp_lighthouse on 2006/07/08 16:41:58 GC. I'll redo things if I add generic functionality to spibus. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_spiio.h#4 delete Differences ... From owner-p4-projects@FreeBSD.ORG Sat Jul 8 16:43:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D9C3916A4E6; Sat, 8 Jul 2006 16:43:22 +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 8C8E816A4DA for ; Sat, 8 Jul 2006 16:43:22 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 585A143D49 for ; Sat, 8 Jul 2006 16:43:22 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68GhM2P059773 for ; Sat, 8 Jul 2006 16:43:22 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68GhMur059764 for perforce@freebsd.org; Sat, 8 Jul 2006 16:43:22 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 16:43:22 GMT Message-Id: <200607081643.k68GhMur059764@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101034 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 16:43:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=101034 Change 101034 by imp@imp_lighthouse on 2006/07/08 16:42:30 Nits. I wrote this file (modulo boilerplate). Affected files ... .. //depot/projects/arm/src/sys/dev/spibus/spibus_if.m#2 edit Differences ... ==== //depot/projects/arm/src/sys/dev/spibus/spibus_if.m#2 (text+ko) ==== @@ -1,5 +1,5 @@ #- -# Copyright (c) 1998 Nicolas Souchu +# Copyright (c) 2006 M. Warner Losh # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/sys/dev/iicbus/iicbus_if.m,v 1.6 2005/01/06 01:42:47 imp Exp $ +# $FreeBSD$ # #include From owner-p4-projects@FreeBSD.ORG Sat Jul 8 16:43:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1EEDE16A55B; Sat, 8 Jul 2006 16:43:23 +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 C7F2B16A4E2 for ; Sat, 8 Jul 2006 16:43:22 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 94ED943D49 for ; Sat, 8 Jul 2006 16:43:22 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68GhM65059779 for ; Sat, 8 Jul 2006 16:43:22 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68GhMmG059776 for perforce@freebsd.org; Sat, 8 Jul 2006 16:43:22 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 16:43:22 GMT Message-Id: <200607081643.k68GhMmG059776@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101035 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 16:43:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=101035 Change 101035 by imp@imp_lighthouse on 2006/07/08 16:42:54 Pass through spibus transfer requests. Affected files ... .. //depot/projects/arm/src/sys/dev/spibus/spibus.c#3 edit Differences ... ==== //depot/projects/arm/src/sys/dev/spibus/spibus.c#3 (text+ko) ==== @@ -153,6 +153,12 @@ resource_int_value(dname, dunit, "cs", &devi->cs); } +static int +spibus_transfer_impl(device_t dev, device_t child, struct spi_command *cmd) +{ + return (SPIBUS_TRANSFER(dev, child, cmd)); +} + static device_method_t spibus_methods[] = { /* Device interface */ DEVMETHOD(device_probe, spibus_probe), @@ -172,6 +178,9 @@ DEVMETHOD(bus_child_location_str, spibus_child_location_str), DEVMETHOD(bus_hinted_child, spibus_hinted_child), + /* spibus interface */ + DEVMETHOD(spibus_transfer, spibus_transfer_impl), + { 0, 0 } }; From owner-p4-projects@FreeBSD.ORG Sat Jul 8 17:28:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C5F2E16A4E2; Sat, 8 Jul 2006 17:28:23 +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 A0A5216A4E0 for ; Sat, 8 Jul 2006 17:28:23 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AEA3043D64 for ; Sat, 8 Jul 2006 17:28:20 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68HSKg6093824 for ; Sat, 8 Jul 2006 17:28:20 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68HSK0V093812 for perforce@freebsd.org; Sat, 8 Jul 2006 17:28:20 GMT (envelope-from imp@freebsd.org) Date: Sat, 8 Jul 2006 17:28:20 GMT Message-Id: <200607081728.k68HSK0V093812@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101039 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 17:28:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=101039 Change 101039 by imp@imp_lighthouse on 2006/07/08 17:27:49 start to implement transfer. I gotta setup the busdma stuff before I can finish. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_spi.c#5 edit .. //depot/projects/arm/src/sys/arm/at91/at91_spireg.h#5 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_spi.c#5 (text+ko) ==== @@ -51,13 +51,6 @@ struct resource *irq_res; /* IRQ resource */ struct resource *mem_res; /* Memory resource */ struct mtx sc_mtx; /* basically a perimeter lock */ - int flags; -#define XFER_PENDING 1 /* true when transfer taking place */ -#define OPENED 2 /* Device opened */ -#define RXRDY 4 -#define TXCOMP 8 -#define TXRDY 0x10 - struct cdev *cdev; }; static inline uint32_t @@ -198,7 +191,28 @@ static int at91_spi_transfer(device_t dev, device_t child, struct spi_command *cmd) { - return EIO; + struct at91_spi_softc *sc; + + sc = device_get_softc(dev); + WR4(sc, PDC_PTCR, PDC_PTCR_TXTDIS | PDC_PTCR_RXTDIS); +#if 0 + // XXX setup busdma + pSPI->SPI_RPR = (unsigned)pCommand->rx_cmd; + pSPI->SPI_RCR = pCommand->rx_cmd_size; + pSPI->SPI_TPR = (unsigned)pCommand->tx_cmd; + pSPI->SPI_TCR = pCommand->tx_cmd_size; + + pSPI->SPI_TNPR = (unsigned)pCommand->tx_data; + pSPI->SPI_TNCR = pCommand->tx_data_size; + pSPI->SPI_RNPR = (unsigned)pCommand->rx_data; + pSPI->SPI_RNCR = pCommand->rx_data_size; +#endif + WR4(sc, PDC_PTCR, PDC_PTCR_TXTEN | PDC_PTCR_RXTEN); + + // wait for completion + while (RD4(sc, SPI_SR) & SPI_SR_ENDRX) + DELAY(700); + return (0); } static device_method_t at91_spi_methods[] = { ==== //depot/projects/arm/src/sys/arm/at91/at91_spireg.h#5 (text+ko) ==== @@ -33,10 +33,27 @@ #define SPI_CR_SWRST 0x8 #define SPI_MR 0x04 /* MR: Mode Register */ #define SPI_MR_MSTR 0x01 +#define SPI_MR_PS 0x02 +#define SPI_MR_PCSDEC 0x04 +#define SPI_MR_DIV32 0x08 #define SPI_MR_MODFDIS 0x10 +#define SPI_MR_LLB 0x80 +#define SPI_MR_PSC_CS0 0xe0000 +#define SPI_MR_PSC_CS1 0xd0000 +#define SPI_MR_PSC_CS2 0xb0000 +#define SPI_MR_PSC_CS3 0x70000 #define SPI_RDR 0x08 /* RDR: Receive Data Register */ #define SPI_TDR 0x0c /* TDR: Transmit Data Register */ #define SPI_SR 0x10 /* SR: Status Register */ +#define SPI_SR_RDRF 0x00001 +#define SPI_SR_TDRE 0x00002 +#define SPI_SR_MODF 0x00004 +#define SPI_SR_OVRES 0x00008 +#define SPI_SR_ENDRX 0x00010 +#define SPI_SR_ENDTX 0x00020 +#define SPI_SR_RXBUFE 0x00040 +#define SPI_SR_TXBUFE 0x00080 +#define SPI_SR_SPIENS 0x10000 #define SPI_IER 0x14 /* IER: Interrupt Enable Regsiter */ #define SPI_IDR 0x18 /* IDR: Interrupt Disable Regsiter */ #define SPI_IMR 0x1c /* IMR: Interrupt Mask Regsiter */ From owner-p4-projects@FreeBSD.ORG Sat Jul 8 19:22:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2622616A4E1; Sat, 8 Jul 2006 19:22:55 +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 0270716A4E0 for ; Sat, 8 Jul 2006 19:22:55 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0A32D43D69 for ; Sat, 8 Jul 2006 19:22:49 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68JMnlY068472 for ; Sat, 8 Jul 2006 19:22:49 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68JMndv068460 for perforce@freebsd.org; Sat, 8 Jul 2006 19:22:49 GMT (envelope-from jhb@freebsd.org) Date: Sat, 8 Jul 2006 19:22:49 GMT Message-Id: <200607081922.k68JMndv068460@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101046 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 19:22:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=101046 Change 101046 by jhb@jhb_mutex on 2006/07/08 19:21:50 - Even though it's trivial, add a kern_close() and use it in various places instead of a struct close_args + close(). - Note a case in the svr4 streams gunk where we can leak the accept fd. - Add a kern_close() to accept() to close the fd if the copyout's fault. Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_socket.c#31 edit .. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#34 edit .. //depot/projects/smpng/sys/fs/portalfs/portal_vnops.c#23 edit .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_other.c#9 edit .. //depot/projects/smpng/sys/kern/kern_descrip.c#93 edit .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#86 edit .. //depot/projects/smpng/sys/sys/syscallsubr.h#45 edit Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_socket.c#31 (text+ko) ==== @@ -705,9 +705,6 @@ struct sockaddr * __restrict name; socklen_t * __restrict anamelen; } */ bsd_args; - struct close_args /* { - int fd; - } */ c_args; int error, fd; if ((error = copyin(args, &linux_args, sizeof(linux_args)))) @@ -724,8 +721,7 @@ if (linux_args.addr) { error = linux_sa_put(PTRIN(linux_args.addr)); if (error) { - c_args.fd = td->td_retval[0]; - (void)close(td, &c_args); + (void)kern_close(td, td->td_retval[0]); return (error); } } ==== //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#34 (text+ko) ==== @@ -1035,7 +1035,6 @@ struct svr4_strm *st = svr4_stream_get(fp); struct svr4_strfdinsert fdi; struct dup2_args d2p; - struct close_args clp; if (st == NULL) { DPRINTF(("fdinsert: bad file type\n")); @@ -1061,9 +1060,7 @@ return error; } - clp.fd = st->s_afd; - - if ((error = close(td, &clp)) != 0) { + if ((error = kern_close(td, st->s_afd)) != 0) { DPRINTF(("fdinsert: close(%d) failed %d\n", st->s_afd, error)); return error; @@ -1919,6 +1916,7 @@ return EINVAL; } + /* XXX: We leak the accept fd if we get an error here. */ if (uap->ctl) { if (ctl.len > sizeof(sc)) ctl.len = sizeof(sc); ==== //depot/projects/smpng/sys/fs/portalfs/portal_vnops.c#23 (text+ko) ==== @@ -52,6 +52,7 @@ #include #include #include +#include #include #include #include @@ -77,10 +78,8 @@ int fd; { int error; - struct close_args ua; - ua.fd = fd; - error = close(td, &ua); + error = kern_close(td, fd); /* * We should never get an error, and there isn't anything * we could do if we got one, so just print a message. ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_other.c#9 (text+ko) ==== @@ -109,9 +109,7 @@ error = kern_connect(td, fd, (struct sockaddr *)&sun); if (error) { - struct close_args cl; - cl.fd = fd; - close(td, &cl); + kern_close(td, fd); return error; } td->td_retval[0] = fd; ==== //depot/projects/smpng/sys/kern/kern_descrip.c#93 (text+ko) ==== @@ -973,12 +973,20 @@ struct thread *td; struct close_args *uap; { + + return (kern_close(td, uap->fd)); +} + +int +kern_close(td, fd) + struct thread *td; + int fd; +{ struct filedesc *fdp; struct file *fp; - int fd, error; + int error; int holdleaders; - fd = uap->fd; error = 0; holdleaders = 0; fdp = td->td_proc->p_fd; ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#86 (text+ko) ==== @@ -313,11 +313,12 @@ * return a namelen of zero for older code which might * ignore the return value from accept. */ - if (error && name == NULL) { + if (error) { (void) copyout(&namelen, uap->anamelen, sizeof(*uap->anamelen)); return (error); } + if (error == 0 && name != NULL) { #ifdef COMPAT_OLDSOCK if (compat) @@ -329,6 +330,8 @@ if (error == 0) error = copyout(&namelen, uap->anamelen, sizeof(namelen)); + if (error) + kern_close(td, td->td_retval[0]); free(name, M_SONAME); return (error); } ==== //depot/projects/smpng/sys/sys/syscallsubr.h#45 (text+ko) ==== @@ -70,6 +70,7 @@ struct timespec *ats); int kern_clock_settime(struct thread *td, clockid_t clock_id, struct timespec *ats); +int kern_close(struct thread *td, int fd); int kern_connect(struct thread *td, int fd, struct sockaddr *sa); int kern_eaccess(struct thread *td, char *path, enum uio_seg pathseg, int flags); From owner-p4-projects@FreeBSD.ORG Sat Jul 8 19:24:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2EF4B16A4DF; Sat, 8 Jul 2006 19:24:53 +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 0DC7816A4DD for ; Sat, 8 Jul 2006 19:24:53 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B871943D49 for ; Sat, 8 Jul 2006 19:24:52 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68JOqVX069457 for ; Sat, 8 Jul 2006 19:24:52 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68JOqBH069451 for perforce@freebsd.org; Sat, 8 Jul 2006 19:24:52 GMT (envelope-from jhb@freebsd.org) Date: Sat, 8 Jul 2006 19:24:52 GMT Message-Id: <200607081924.k68JOqBH069451@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101047 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 19:24:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=101047 Change 101047 by jhb@jhb_mutex on 2006/07/08 19:24:04 Trim. Affected files ... .. //depot/projects/smpng/sys/fs/portalfs/portal_vnops.c#24 edit Differences ... ==== //depot/projects/smpng/sys/fs/portalfs/portal_vnops.c#24 (text+ko) ==== @@ -53,7 +53,6 @@ #include #include #include -#include #include #include #include From owner-p4-projects@FreeBSD.ORG Sat Jul 8 20:38:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 633FD16A4E0; Sat, 8 Jul 2006 20:38:29 +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 3AC6116A4DA for ; Sat, 8 Jul 2006 20:38:29 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CD7B443D4C for ; Sat, 8 Jul 2006 20:38:28 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68KcSVW092569 for ; Sat, 8 Jul 2006 20:38:28 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68KcRbO092566 for perforce@freebsd.org; Sat, 8 Jul 2006 20:38:27 GMT (envelope-from jhb@freebsd.org) Date: Sat, 8 Jul 2006 20:38:27 GMT Message-Id: <200607082038.k68KcRbO092566@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101055 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 20:38:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101055 Change 101055 by jhb@jhb_mutex on 2006/07/08 20:38:19 IFC @101054 - loopback. Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_ipc.c#27 integrate .. //depot/projects/smpng/sys/compat/linux/linux_socket.c#32 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_ipc.c#19 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/Makefile#4 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx.h#5 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_bstream.c#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_bstream.h#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_context.c#5 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_context.h#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_env.c#4 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_env.h#5 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#5 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self.c#5 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self.h#4 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self_context.s#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_step.c#5 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_step.h#4 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_str.c#4 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_str.h#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_swap.c#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_swap.h#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_trace.c#5 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_trace.h#5 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#5 delete .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#4 delete .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#6 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_utable.c#4 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_utable.h#4 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#21 integrate .. //depot/projects/smpng/sys/doc/Doxyfile#2 delete .. //depot/projects/smpng/sys/doc/Makefile#2 delete .. //depot/projects/smpng/sys/doc/subsys/Dependencies#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-cam#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-crypto#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-dev_pci#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-dev_sound#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-dev_usb#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-geom#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-i4b#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-kern#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-libkern#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-linux#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-net80211#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-netgraph#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-netinet#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-netinet6#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-netipsec#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-opencrypto#2 delete .. //depot/projects/smpng/sys/doc/subsys/Doxyfile-vm#2 delete .. //depot/projects/smpng/sys/doc/subsys/Makefile#2 delete .. //depot/projects/smpng/sys/doc/subsys/README#2 delete .. //depot/projects/smpng/sys/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/smpng/sys/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/smpng/sys/fs/portalfs/portal_vnops.c#25 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_ipc.c#13 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_ipc.h#5 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_other.c#10 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#17 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.h#10 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix_syscall.h#9 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix_sysent.c#10 integrate .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.xenix#8 integrate .. //depot/projects/smpng/sys/isa/isahint.c#6 integrate .. //depot/projects/smpng/sys/kern/bus_if.m#12 integrate .. //depot/projects/smpng/sys/kern/kern_descrip.c#94 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#61 integrate .. //depot/projects/smpng/sys/kern/sys_generic.c#45 integrate .. //depot/projects/smpng/sys/kern/sysv_sem.c#41 integrate .. //depot/projects/smpng/sys/netinet/ip_carp.c#18 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_socket.c#44 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#60 integrate .. //depot/projects/smpng/sys/sys/bus.h#27 integrate .. //depot/projects/smpng/sys/sys/syscallsubr.h#46 integrate Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_ipc.c#27 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ipc.c,v 1.47 2006/06/27 18:28:49 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ipc.c,v 1.48 2006/07/08 19:51:37 jhb Exp $"); #include #include ==== //depot/projects/smpng/sys/compat/linux/linux_socket.c#32 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.68 2006/05/10 20:38:16 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.69 2006/07/08 20:03:38 jhb Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" ==== //depot/projects/smpng/sys/compat/svr4/svr4_ipc.c#19 (text+ko) ==== @@ -71,7 +71,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_ipc.c,v 1.22 2006/07/06 21:38:24 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_ipc.c,v 1.23 2006/07/08 19:51:37 jhb Exp $"); #include "opt_sysvipc.h" ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/Makefile#4 (text+ko) ==== @@ -15,11 +15,12 @@ CFLAGS = -O $(OTHERCFLAGS) OBJS = uwx_bstream.o uwx_context.o uwx_env.o uwx_scoreboard.o \ - uwx_step.o uwx_str.o uwx_swap.o uwx_trace.o uwx_uinfo.o \ - uwx_utable.o + uwx_step.o uwx_str.o uwx_swap.o uwx_symbols.o \ + uwx_trace.o uwx_uinfo.o uwx_utable.o # SELFOBJS = # For cross-unwind library -SELFOBJS = uwx_self.o uwx_self_context.o uwx_ttrace.o +# SELFOBJS = uwx_self.o uwx_self_context.o uwx_ttrace.o +SELFOBJS = uwx_self.o uwx_self_context.o # SELFLIBS = # For cross-unwind library SELFLIBS = -luca @@ -34,6 +35,9 @@ libuwx.sl: $(OBJS) $(SELFOBJS) ld -b -o libuwx.sl $(OBJS) $(SELFOBJS) $(SELFLIBS) +clean: + rm -f $(OBJS) $(SELFOBJS) libuwx.a libuwx.so libuwx.sl + uwx_bstream.o: uwx.h uwx_env.h uwx_bstream.h uwx_context.o: uwx.h uwx_env.h uwx_scoreboard.h uwx_step.h uwx_trace.h @@ -49,6 +53,8 @@ uwx_swap.o: uwx.h uwx_env.h uwx_swap.h +uwx_symbols.o: uwx.h uwx_env.h uwx_symbols.h + uwx_trace.o: uwx.h uwx_env.h uwx_uinfo.h uwx_scoreboard.h uwx_trace.h uwx_uinfo.o: uwx.h uwx_env.h uwx_uinfo.h uwx_utable.h \ @@ -56,7 +62,8 @@ uwx_utable.o: uwx.h uwx_env.h uwx_utable.h uwx_swap.h uwx_trace.h -uwx_self.o: uwx.h uwx_env.h uwx_context.h uwx_trace.h uwx_self.h +uwx_self.o: uwx.h uwx_env.h uwx_context.h uwx_trace.h uwx_self.h \ + uwx_symbols.h uwx_self_context.o: uwx_self_context.s $(CC) -c $(CFLAGS) -o uwx_self_context.o uwx_self_context.s ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx.h#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -39,11 +39,14 @@ #define __EXTERN_C extern #endif -#define UWX_VERSION 1 /* Version id for callback interfaces */ +#define UWX_VERSION 3 /* Version id for callback interfaces */ /* Unwind environment structure (opaque) */ struct uwx_env; +/* Symbol Cache for uwx_find_symbol (opaque) */ +struct uwx_symbol_cache; + /* Allocate and free callbacks */ typedef void *(*alloc_cb)(size_t size); typedef void (*free_cb)(void *ptr); @@ -58,6 +61,9 @@ /* Put unwind express into cross-process mode */ __EXTERN_C int uwx_set_remote(struct uwx_env *env, int is_big_endian_target); +/* Put unwind express into reduced-context mode (no floating-point regs) */ +__EXTERN_C int uwx_set_nofr(struct uwx_env *env); + /* Copy-in callback */ typedef int (*copyin_cb)( int request, /* request code (see below) */ @@ -107,6 +113,17 @@ /* Step one frame */ __EXTERN_C int uwx_step(struct uwx_env *env); +/* Get module name and text base, if available, for current frame */ +__EXTERN_C int uwx_get_module_info( + struct uwx_env *env, /* unwind environment */ + char **modp, /* load module name (out) */ + uint64_t *text_base); /* base address of text segment (out) */ + +/* Get function start address for current frame */ +__EXTERN_C int uwx_get_funcstart( + struct uwx_env *env, /* unwind environment */ + uint64_t *funcstart); /* function start address (out) */ + /* Get symbol information, if available, for current frame */ __EXTERN_C int uwx_get_sym_info( struct uwx_env *env, /* unwind environment */ @@ -114,6 +131,22 @@ char **symp, /* function name (out) */ uint64_t *offsetp); /* offset from start of function (out) */ +/* Get symbol information, given module name and IP */ +__EXTERN_C int uwx_find_symbol( + struct uwx_env *env, /* unwind environment */ + struct uwx_symbol_cache **cachep, + /* ptr to symbol cache ptr (in/out) */ + char *mod, /* load module name */ + uint64_t relip, /* IP, relative to text segment */ + char **symp, /* function name (out) */ + uint64_t *offsetp); /* offset from start of function (out) */ + +/* Release memory used by symbol cache */ +__EXTERN_C void uwx_release_symbol_cache( + struct uwx_env *env, /* unwind environment */ + struct uwx_symbol_cache *symbol_cache); + /* symbol cache ptr */ + /* Get the value of a register from the current context */ __EXTERN_C int uwx_get_reg( struct uwx_env *env, /* unwind environment */ @@ -135,6 +168,10 @@ /* Get the ABI context code (if uwx_step returned UWX_ABI_FRAME) */ __EXTERN_C int uwx_get_abi_context_code(struct uwx_env *env); +/* Increment/Decrement the bsp by a number of slots */ +/* (accounts for NaT collections) */ +__EXTERN_C uint64_t uwx_add_to_bsp(uint64_t bsp, int nslots); + /* Return status codes for uwx_ APIs */ #define UWX_OK 0 #define UWX_BOTTOM 1 /* Hit bottom of stack */ @@ -158,6 +195,8 @@ #define UWX_ERR_CANTUNWIND (-17) /* Can't unwind */ #define UWX_ERR_NOCALLBACKS (-18) /* No callbacks registered */ #define UWX_ERR_NOCONTEXT (-19) /* Context not initialized */ +#define UWX_ERR_UCACCESS (-20) /* Failure in libuca */ +#define UWX_ERR_NOSYM (-21) /* Symbol not found */ /* Request codes for copyin callback */ #define UWX_COPYIN_UINFO 1 /* Reading unwind info */ @@ -169,6 +208,7 @@ #define UWX_LKUP_LOOKUP 1 /* Lookup IP */ #define UWX_LKUP_FREE 2 /* Free result vector */ #define UWX_LKUP_SYMBOLS 3 /* Lookup symbolic information */ +#define UWX_LKUP_MODULE 4 /* Get module name */ /* Return status codes for lookup IP callback */ #define UWX_LKUP_NOTFOUND 0 /* IP not found */ @@ -199,11 +239,13 @@ #define UWX_KEY_UFLAGS 2 /* Unwind flags (optional) */ #define UWX_KEY_USTART 3 /* Base of unwind tbl */ #define UWX_KEY_UEND 4 /* End of unwind tbl */ +#define UWX_KEY_GP 7 /* GP value for module */ /* Keys returned with UWX_LKUP_FDESC */ /* These key/value pairs describe the state of the frame at the */ /* given IP. They are typically used for dynamically-generated code. */ /* If UWX_KEY_CONTEXT is returned, it must be the only key returned. */ +/* Use UWX_KEY_GP for the module's gp value. */ #define UWX_KEY_FSIZE 1 /* Frame size */ #define UWX_KEY_SPILL(reg_id) (2 | ((reg_id) << 4)) /* Reg spilled */ #define UWX_KEY_CONTEXT 3 /* ABI-dep. context */ @@ -212,6 +254,7 @@ #define UWX_KEY_NEWIP 5 /* Remapped IP */ /* Keys returned with UWX_LKUP_UINFO */ +/* Use UWX_KEY_GP for the module's gp value. */ /* Use UWX_KEY_FUNCSTART for the start address of the function */ /* Use UWX_KEY_UFLAGS for the unwind flags (optional) */ #define UWX_KEY_UINFO 6 /* Address of unwind info block */ @@ -219,6 +262,7 @@ /* Keys returned with UWX_LKUP_SYMINFO */ /* These keys may be returned with UWX_LKUP_FDESC or UWX_LKUP_UINFO, */ /* if the information is cheap to obtain. */ +/* Use UWX_KEY_TBASE for the base of the text segment */ #define UWX_KEY_MODULE 17 /* Name of load module */ #define UWX_KEY_FUNC 18 /* Name of function */ #define UWX_KEY_FUNCSTART 19 /* Address of start of function */ @@ -246,6 +290,7 @@ #define UWX_REG_AR_FPSR 12 /* ar.fpsr */ #define UWX_REG_AR_LC 13 /* ar.lc */ #define UWX_REG_AR_PFS 14 /* ar.pfs */ +#define UWX_REG_GP 15 /* gp (pseudo-register) */ #define UWX_REG_GR(gr) (0x100 | (gr)) #define UWX_REG_FR(fr) (0x200 | (fr)) #define UWX_REG_BR(br) (0x300 | (br)) @@ -321,10 +366,27 @@ return uwx_step(env); } + int get_module_info(char **modp, uint64_t *text_base_p) { + return uwx_get_module_info(env, modp, text_base_p); + } + + int get_funcstart(uint64_t *funcstart) { + return uwx_get_funcstart(env, funcstart); + } + int get_sym_info(char **modp, char **symp, uint64_t *offsetp) { return uwx_get_sym_info(env, modp, symp, offsetp); } + int find_symbol(struct uwx_symbol_cache **cachep, + char *mod, uint64_t relip, char **symp, uint64_t *offsetp) { + return uwx_find_symbol(env, cachep, mod, relip, symp, offsetp); + } + + void release_symbol_cache(struct uwx_symbol_cache *symbol_cache) { + uwx_release_symbol_cache(env, symbol_cache); + } + int get_reg(int regid, uint64_t *valp) { return uwx_get_reg(env, regid, valp); } ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_bstream.c#3 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -46,7 +46,7 @@ } else { bstream->source = 0; - bstream->bufp = (unsigned char *) source; + bstream->bufp = (unsigned char *) (intptr_t) source; bstream->nbuf = len; bstream->copyin = 0; bstream->cb_token = 0; ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_bstream.h#3 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_context.c#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -23,7 +23,6 @@ */ #include "uwx_env.h" -#include "uwx_context.h" #include "uwx_scoreboard.h" #include "uwx_step.h" #include "uwx_trace.h" @@ -182,7 +181,7 @@ bsp = uwx_add_to_bsp(bsp, regid); natcollp = bsp | 0x01f8; n = (*env->copyin)(UWX_COPYIN_RSTACK, (char *)&natcoll, - bsp, DWORDSZ, env->cb_token); + natcollp, DWORDSZ, env->cb_token); if (n != DWORDSZ) return UWX_ERR_COPYIN_RSTK; *natp = (int)(natcoll >> (((int)bsp >> 3) & 0x3f)) & 0x01; @@ -208,8 +207,17 @@ if (regid == UWX_REG_GR(12)) regid = UWX_REG_SP; - if (regid < NSPECIALREG) + if (regid < NSPECIALREG) { + if (regid == UWX_REG_PSP || regid == UWX_REG_RP || + regid == UWX_REG_PFS) { + if (!(env->context.valid_regs & (1 << regid))) { + status = uwx_restore_markers(env); + if (status != UWX_OK) + return status; + } + } *dispp = env->history.special[regid]; + } else if (regid >= UWX_REG_GR(4) && regid <= UWX_REG_GR(7)) *dispp = env->history.gr[regid - UWX_REG_GR(4)]; else if (regid >= UWX_REG_GR(32) && regid <= UWX_REG_GR(127)) { @@ -313,7 +321,7 @@ * ^ * | * bsp - * <------- adjusted (nslots + bias) -------> + * <------------ nslots + bias -----------> * When subtracting from bsp, we avoid depending on the sign of * the quotient by adding 63*8 before division and subtracting 8 @@ -325,12 +333,12 @@ * | X X| * +---------------------------------------------------------------+ * <-- bias --> - * <--- |nslots| ---> + * <--- (-nslots) ---> * ^ * | * bsp * <-----------------> - * adjusted |nslots + bias| + * -(nslots + bias) */ bias = ((unsigned int)bsp & 0x1f8) / DWORDSZ; @@ -366,7 +374,7 @@ if (r >= 1000) r -= 1000; for (j = 0; j < 96; j++) { - p = (uint64_t *)uwx_add_to_bsp((uint64_t)bsp, j); + p = (uint64_t *)(intptr_t)uwx_add_to_bsp((uint64_t)bsp, j); if (*p != (r + j)) { failed++; printf("%d [%08lx] + %d -> %08lx ", @@ -385,7 +393,7 @@ if (r >= 1000) r -= 1000; for (j = 0; j < 96; j++) { - p = (uint64_t *)uwx_add_to_bsp((uint64_t)bsp, -j); + p = (uint64_t *)(intptr_t)uwx_add_to_bsp((uint64_t)bsp, -j); if (*p != (r - j)) { failed++; printf("%d [%08lx] - %d -> %08lx ", ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_context.h#3 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_env.c#4 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -68,52 +68,97 @@ return UWX_OK; } +int uwx_init_env(struct uwx_env *env, size_t total_size) +{ + int i; + struct uwx_str_pool *str_pool; + struct uwx_scoreboard *scoreboards; + + str_pool = (struct uwx_str_pool *)(env + 1); + scoreboards = (struct uwx_scoreboard *)(str_pool + 1); + + if (sizeof(struct uwx_env) + sizeof(struct uwx_str_pool) > total_size) + return UWX_ERR_NOMEM; + total_size -= sizeof(struct uwx_env) + sizeof(struct uwx_str_pool); + + env->context.valid_regs = 0; + env->context.valid_frs = 0; + for (i = 0; i < NSPECIALREG; i++) + env->context.special[i] = 0; + for (i = 0; i < NPRESERVEDGR; i++) + env->context.gr[i] = 0; + for (i = 0; i < NPRESERVEDBR; i++) + env->context.br[i] = 0; + for (i = 0; i < NPRESERVEDFR; i++) { + env->context.fr[i].part0 = 0; + env->context.fr[i].part1 = 0; + } + env->rstate = 0; + env->remapped_ip = 0; + env->function_offset = 0; + env->ptr_size = DWORDSZ; + env->uinfo_hdr = 0; + env->uinfo_end = 0; + env->code_start = 0; + env->text_base = 0; + (void)uwx_init_history(env); + if (uwx_allocate_cb != NULL) + env->allocate_cb = uwx_allocate_cb; + else + env->allocate_cb = NULL; + if (uwx_free_cb != NULL) + env->free_cb = uwx_free_cb; + else + env->free_cb = NULL; + env->free_scoreboards = 0; + env->used_scoreboards = 0; + env->labeled_scoreboards = 0; + (void)uwx_init_str_pool(env, str_pool); + env->module_name = 0; + env->function_name = 0; + env->cb_token = 0; + env->copyin = 0; + env->lookupip = 0; + env->remote = 0; + env->byte_swap = 0; + env->abi_context = 0; + env->nsbreg = NSBREG; + env->nscoreboards = 0; + env->on_heap = 0; + env->trace = 0; + TRACE_INIT + for (i = 0; total_size >= sizeof(struct uwx_scoreboard); i++) { + (void) uwx_prealloc_scoreboard(env, &scoreboards[i]); + total_size -= sizeof(struct uwx_scoreboard); + } + return UWX_OK; +} + +int uwx_set_nofr(struct uwx_env *env) +{ + if (env == 0) + return UWX_ERR_NOENV; + + env->nsbreg = NSBREG_NOFR; + return UWX_OK; +} + struct uwx_env *uwx_init() { - int i; struct uwx_env *env; + size_t total_size; + + total_size = sizeof(struct uwx_env) + + sizeof(struct uwx_str_pool) + + NSCOREBOARDS * sizeof(struct uwx_scoreboard); if (uwx_allocate_cb == 0) - env = (struct uwx_env *) malloc(sizeof(struct uwx_env)); + env = (struct uwx_env *) malloc(total_size); else - env = (struct uwx_env *) (*uwx_allocate_cb)(sizeof(struct uwx_env)); + env = (struct uwx_env *) (*uwx_allocate_cb)(total_size); if (env != 0) { - env->context.valid_regs = 0; - env->context.valid_frs = 0; - for (i = 0; i < NSPECIALREG; i++) - env->context.special[i] = 0; - for (i = 0; i < NPRESERVEDGR; i++) - env->context.gr[i] = 0; - for (i = 0; i < NPRESERVEDBR; i++) - env->context.br[i] = 0; - for (i = 0; i < NPRESERVEDFR; i++) { - env->context.fr[i].part0 = 0; - env->context.fr[i].part1 = 0; - } - env->rstate = 0; - env->remapped_ip = 0; - env->function_offset = 0; - (void)uwx_init_history(env); - env->allocate_cb = uwx_allocate_cb; - env->free_cb = uwx_free_cb; - env->free_scoreboards = 0; - env->used_scoreboards = 0; - env->labeled_scoreboards = 0; - (void)uwx_init_str_pool(env); - env->module_name = 0; - env->function_name = 0; - env->cb_token = 0; - env->copyin = 0; - env->lookupip = 0; - env->remote = 0; - env->byte_swap = 0; - env->abi_context = 0; - env->nsbreg = NSBREG_NOFR; - env->nscoreboards = 0; - env->trace = 0; - TRACE_INIT - for (i = 0; i < NSCOREBOARDS; i++) - (void) uwx_alloc_scoreboard(env); + uwx_init_env(env, total_size); + env->on_heap = 1; } return env; } @@ -165,10 +210,12 @@ if (env != 0) { uwx_free_scoreboards(env); uwx_free_str_pool(env); - if (env->free_cb == 0) - free((void *)env); - else - (*env->free_cb)((void *)env); + if (env->on_heap) { + if (env->free_cb == 0) + free((void *)env); + else + (*env->free_cb)((void *)env); + } } return UWX_OK; } ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_env.h#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -80,6 +80,11 @@ uint64_t *rstate; uint64_t remapped_ip; int64_t function_offset; + uint64_t ptr_size; + uint64_t uinfo_hdr; + uint64_t uinfo_end; + uint64_t code_start; + uint64_t text_base; struct uwx_history history; alloc_cb allocate_cb; free_cb free_cb; @@ -97,8 +102,10 @@ int abi_context; int nsbreg; int nscoreboards; + int on_heap; int trace; }; extern alloc_cb uwx_allocate_cb; extern free_cb uwx_free_cb; +extern int uwx_init_env(struct uwx_env *env, size_t total_size); ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -58,6 +58,15 @@ #endif +void uwx_prealloc_scoreboard(struct uwx_env *env, struct uwx_scoreboard *sb) +{ + sb->id = env->nscoreboards++; + sb->nextused = env->used_scoreboards; + sb->prealloc = 1; + env->used_scoreboards = sb; + TRACE_B_PREALLOC(sb->id) +} + struct uwx_scoreboard *uwx_alloc_scoreboard(struct uwx_env *env) { struct uwx_scoreboard *sb; @@ -79,6 +88,7 @@ return 0; sb->id = env->nscoreboards++; sb->nextused = env->used_scoreboards; + sb->prealloc = 0; env->used_scoreboards = sb; TRACE_B_ALLOC(sb->id) } @@ -291,10 +301,12 @@ for (sb = env->used_scoreboards; sb != 0; sb = next) { TRACE_B_FREE(sb->id) next = sb->nextused; - if (env->free_cb == 0) - free((void *)sb); - else - (*env->free_cb)((void *)sb); + if (!sb->prealloc) { + if (env->free_cb == 0) + free((void *)sb); + else + (*env->free_cb)((void *)sb); + } } env->free_scoreboards = 0; env->used_scoreboards = 0; ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#3 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -51,8 +51,13 @@ uint64_t rstate[NSBREG]; int label; int id; + int prealloc; }; +extern void uwx_prealloc_scoreboard( + struct uwx_env *env, + struct uwx_scoreboard *sb); + extern struct uwx_scoreboard *uwx_alloc_scoreboard(struct uwx_env *env); extern struct uwx_scoreboard *uwx_init_scoreboards(struct uwx_env *env); ==== //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self.c#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -23,6 +23,7 @@ */ #include +#include #include #include #include @@ -31,52 +32,49 @@ #include "uwx_context.h" #include "uwx_trace.h" #include "uwx_self.h" +#include "uwx_self_info.h" #define UWX_ABI_HPUX_SIGCONTEXT 0x0101 /* abi = HP-UX, context = 1 */ -struct uwx_self_info { - struct uwx_env *env; - ucontext_t *ucontext; - uint64_t bspstore; - uint64_t rvec[10]; - uint64_t sendsig_start; - uint64_t sendsig_end; - alloc_cb allocate_cb; - free_cb free_cb; - int trace; -}; +void uwx_free_load_module_cache(struct uwx_self_info *info); + +int uwx_self_init_info_block(struct uwx_env *env, struct uwx_self_info *info) +{ + info->env = env; + info->ucontext = 0; + info->bspstore = 0; + info->sendsig_start = __load_info->li_sendsig_txt; + info->sendsig_end = __load_info->li_sendsig_txt + + __load_info->li_sendsig_tsz; + info->on_heap = 0; + info->trace = env->trace; + info->load_module_cache = NULL; + + return UWX_OK; +} struct uwx_self_info *uwx_self_init_info(struct uwx_env *env) { struct uwx_self_info *info; - if (env->allocate_cb == 0) - info = (struct uwx_self_info *) - malloc(sizeof(struct uwx_self_info)); - else - info = (struct uwx_self_info *) + info = (struct uwx_self_info *) (*env->allocate_cb)(sizeof(struct uwx_self_info)); if (info == 0) return 0; - info->env = env; - info->ucontext = 0; - info->bspstore = 0; - info->sendsig_start = __load_info->li_sendsig_txt; - info->sendsig_end = __load_info->li_sendsig_txt + - __load_info->li_sendsig_tsz; - info->allocate_cb = env->allocate_cb; - info->free_cb = env->free_cb; - info->trace = env->trace; + uwx_self_init_info_block(env, info); + info->on_heap = 1; return info; } int uwx_self_free_info(struct uwx_self_info *info) { - if (info->free_cb == 0) - free((void *)info); - else - (*info->free_cb)((void *)info); + int i; + + if (info->load_module_cache != NULL) + uwx_free_load_module_cache(info); + if (info->on_heap) + (*info->env->free_cb)((void *)info); return UWX_OK; } @@ -97,17 +95,37 @@ info->ucontext = ucontext; status = __uc_get_reason(ucontext, &reason); + if (status != 0) + return UWX_ERR_UCACCESS; status = __uc_get_ip(ucontext, &ip); + if (status != 0) + return UWX_ERR_UCACCESS; status = __uc_get_grs(ucontext, 12, 1, &sp, &nat); + if (status != 0) + return UWX_ERR_UCACCESS; status = __uc_get_cfm(ucontext, &cfm); + if (status != 0) + return UWX_ERR_UCACCESS; #ifdef NEW_UC_GET_AR status = __uc_get_ar_bsp(ucontext, &bsp); + if (status != 0) + return UWX_ERR_UCACCESS; status = __uc_get_ar_bspstore(ucontext, &info->bspstore); + if (status != 0) + return UWX_ERR_UCACCESS; status = __uc_get_ar_ec(ucontext, &ec); + if (status != 0) + return UWX_ERR_UCACCESS; #else status = __uc_get_ar(ucontext, 17, &bsp); + if (status != 0) + return UWX_ERR_UCACCESS; status = __uc_get_ar(ucontext, 18, &info->bspstore); + if (status != 0) + return UWX_ERR_UCACCESS; status = __uc_get_ar(ucontext, 66, &ec); + if (status != 0) + return UWX_ERR_UCACCESS; #endif /* The returned bsp needs to be adjusted. */ /* For interrupt frames, where bsp was advanced by a cover */ @@ -136,9 +154,10 @@ if (abi_context != UWX_ABI_HPUX_SIGCONTEXT) return UWX_SELF_ERR_BADABICONTEXT; status = uwx_get_reg(env, UWX_REG_GR(32), (uint64_t *)&ucontext); - if (status != 0) + if (status != UWX_OK) return status; - return uwx_self_init_from_sigcontext(env, info, (ucontext_t *)ucontext); + return uwx_self_init_from_sigcontext(env, info, + (ucontext_t *)(intptr_t)ucontext); } int uwx_self_copyin( @@ -164,12 +183,12 @@ case UWX_COPYIN_MSTACK: if (len == 4) { wp = (unsigned long *) loc; - *wp = *(unsigned long *)rem; + *wp = *(unsigned long *)(intptr_t)rem; TRACE_SELF_COPYIN4(rem, len, wp) status = 0; } else if (len == 8) { - *dp = *(uint64_t *)rem; + *dp = *(uint64_t *)(intptr_t)rem; TRACE_SELF_COPYIN8(rem, len, dp) status = 0; } @@ -181,13 +200,13 @@ status = 0; } else if (info->ucontext == 0 || rem < info->bspstore) { - *dp = *(uint64_t *)rem; + *dp = *(uint64_t *)(intptr_t)rem; TRACE_SELF_COPYIN8(rem, len, dp) status = 0; } else { status = __uc_get_rsebs(info->ucontext, - (uint64_t *)rem, 1, dp); + (uint64_t *)(intptr_t)rem, 1, dp); } } break; @@ -230,6 +249,88 @@ return len; } +#define MODULE_CACHE_SIZE 4 + +struct load_module_cache { + int clock; + char *names[MODULE_CACHE_SIZE]; + struct load_module_desc descs[MODULE_CACHE_SIZE]; + struct uwx_symbol_cache *symbol_cache; +}; + +void uwx_free_load_module_cache(struct uwx_self_info *info) +{ + int i; + + for (i = 0; i < MODULE_CACHE_SIZE; i++) { + if (info->load_module_cache->names[i] != NULL) + (*info->env->free_cb)((void *)info->load_module_cache->names[i]); + } + + if (info->load_module_cache->symbol_cache != NULL) + uwx_release_symbol_cache(info->env, + info->load_module_cache->symbol_cache); + + (*info->env->free_cb)((void *)info->load_module_cache); +} + +struct load_module_desc *uwx_get_modinfo( + struct uwx_self_info *info, + uint64_t ip, + char **module_name_p) +{ + int i; + UINT64 handle; + struct load_module_cache *cache; + struct load_module_desc *desc; + char *module_name; + + cache = info->load_module_cache; + if (cache == NULL) { + cache = (struct load_module_cache *) + (*info->env->allocate_cb)(sizeof(struct load_module_cache)); + if (cache == NULL) + return NULL; + for (i = 0; i < MODULE_CACHE_SIZE; i++) { + desc = &cache->descs[i]; + desc->text_base = 0; + desc->text_size = 0; + cache->names[i] = NULL; + } + cache->clock = 0; + cache->symbol_cache = NULL; + info->load_module_cache = cache; + } + for (i = 0; i < MODULE_CACHE_SIZE; i++) { + desc = &cache->descs[i]; + if (ip >= desc->text_base && ip < desc->text_base + desc->text_size) + break; + } + if (i >= MODULE_CACHE_SIZE) { + i = cache->clock; + cache->clock = (cache->clock + 1) % MODULE_CACHE_SIZE; + desc = &cache->descs[i]; + handle = dlmodinfo(ip, desc, sizeof(*desc), 0, 0, 0); + if (handle == 0) + return NULL; + if (cache->names[i] != NULL) + (*info->env->free_cb)(cache->names[i]); + cache->names[i] = NULL; + } + if (module_name_p != NULL) { + if (cache->names[i] == NULL) { + module_name = dlgetname(desc, sizeof(*desc), 0, 0, 0); + if (module_name != NULL) { + cache->names[i] = (char *) + (*info->env->allocate_cb)(strlen(module_name)+1); + if (cache->names[i] != NULL) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 8 20:41:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0FCC416A4E6; Sat, 8 Jul 2006 20:41:43 +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 CE98816A4E2 for ; Sat, 8 Jul 2006 20:41:42 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2CE4543DA9 for ; Sat, 8 Jul 2006 20:41:33 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68KfWM8092760 for ; Sat, 8 Jul 2006 20:41:33 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68KfWeG092757 for perforce@freebsd.org; Sat, 8 Jul 2006 20:41:32 GMT (envelope-from jhb@freebsd.org) Date: Sat, 8 Jul 2006 20:41:32 GMT Message-Id: <200607082041.k68KfWeG092757@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101056 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 20:41:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=101056 Change 101056 by jhb@jhb_mutex on 2006/07/08 20:40:39 Update. Affected files ... .. //depot/projects/smpng/sys/notes#74 edit Differences ... ==== //depot/projects/smpng/sys/notes#74 (text+ko) ==== @@ -106,7 +106,6 @@ - ibcs2_ioctl() - ibcs2_getdents() - ibcs2_sigprocmask() - - xenix_rdchk() - don't mess with td_retval in any kern_foo() functions Active child branches: From owner-p4-projects@FreeBSD.ORG Sat Jul 8 21:20:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9CDC516A505; Sat, 8 Jul 2006 21:20:24 +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 56F5D16A501 for ; Sat, 8 Jul 2006 21:20:24 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E371543D49 for ; Sat, 8 Jul 2006 21:20:23 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k68LKNB4003502 for ; Sat, 8 Jul 2006 21:20:23 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k68LKKoh003494 for perforce@freebsd.org; Sat, 8 Jul 2006 21:20:20 GMT (envelope-from jb@freebsd.org) Date: Sat, 8 Jul 2006 21:20:20 GMT Message-Id: <200607082120.k68LKKoh003494@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101057 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jul 2006 21:20:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=101057 Change 101057 by jb@jb_freebsd2 on 2006/07/08 21:19:46 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/developers-handbook/book.sgml#2 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/faq/book.sgml#6 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#12 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/advanced-networking/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/cutting-edge/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/eresources/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/firewalls/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/install/chapter.sgml#6 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/introduction/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/kernelconfig/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/linuxemu/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/mirrors/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/network-servers/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/ports/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/security/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/serialcomms/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/config/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/eresources/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/install/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/introduction/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/l10n/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/ports/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/porters-handbook/book.sgml#3 integrate .. //depot/projects/dtrace/ports/KNOBS#2 integrate .. //depot/projects/dtrace/ports/MOVED#3 integrate .. //depot/projects/dtrace/ports/Mk/bsd.port.mk#3 integrate .. //depot/projects/dtrace/ports/Mk/bsd.scons.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.sites.mk#2 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackagestats#2 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/processonelog#2 integrate .. //depot/projects/dtrace/ports/UPDATING#3 integrate .. //depot/projects/dtrace/src/ObsoleteFiles.inc#7 integrate .. //depot/projects/dtrace/src/contrib/texinfo/FREEBSD-upgrade#3 integrate .. //depot/projects/dtrace/src/lib/libc/posix1e/Makefile.inc#3 integrate .. //depot/projects/dtrace/src/lib/libc/posix1e/mac_is_present.3#1 branch .. //depot/projects/dtrace/src/lib/libc/posix1e/mac_is_present_np.3#3 delete .. //depot/projects/dtrace/src/lib/libc/posix1e/mac_prepare.3#3 integrate .. //depot/projects/dtrace/src/lib/libc/posix1e/mac_set.3#3 integrate .. //depot/projects/dtrace/src/lib/libc/posix1e/mac_text.3#3 integrate .. //depot/projects/dtrace/src/lib/msun/i387/Makefile.inc#3 integrate .. //depot/projects/dtrace/src/lib/msun/i387/e_scalb.S#3 delete .. //depot/projects/dtrace/src/lib/msun/i387/e_scalbf.S#3 delete .. //depot/projects/dtrace/src/lib/msun/src/e_log.c#3 integrate .. //depot/projects/dtrace/src/lib/msun/src/e_logf.c#3 integrate .. //depot/projects/dtrace/src/lib/msun/src/e_scalbf.c#4 integrate .. //depot/projects/dtrace/src/lib/msun/src/s_tanh.c#3 integrate .. //depot/projects/dtrace/src/sbin/gpt/gpt.c#3 integrate .. //depot/projects/dtrace/src/share/man/man4/ata.4#3 integrate .. //depot/projects/dtrace/src/share/man/man7/ports.7#3 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/pmap.c#10 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_proto.h#4 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_syscall.h#4 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_sysent.c#4 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/syscalls.master#4 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_ioctl.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_ipc.c#3 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_socket.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_ipc.c#3 integrate .. //depot/projects/dtrace/src/sys/conf/files#20 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src.diff#3 delete .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_bstream.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_bstream.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_context.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_context.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_env.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_env.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_self-new.c#3 delete .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_self.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_self.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_self_context.s#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_step.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_step.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_str.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_str.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_swap.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_swap.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_trace.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_trace.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#3 delete .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#3 delete .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_utable.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/ia64/libuwx/src/uwx_utable.h#3 integrate .. //depot/projects/dtrace/src/sys/contrib/pf/net/if_pfsync.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/fdc/fdc.c#3 integrate .. //depot/projects/dtrace/src/sys/dev/ic/nec765.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pci/solo.c#3 integrate .. //depot/projects/dtrace/src/sys/doc/Doxyfile#3 delete .. //depot/projects/dtrace/src/sys/doc/Makefile#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Dependencies#2 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-cam#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-crypto#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-dev_pci#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-dev_sound#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-dev_usb#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-geom#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-i4b#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-kern#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-libkern#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-linux#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-net80211#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-netgraph#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-netinet#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-netinet6#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-netipsec#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-opencrypto#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Doxyfile-vm#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/Makefile#3 delete .. //depot/projects/dtrace/src/sys/doc/subsys/README#2 delete .. //depot/projects/dtrace/src/sys/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/dtrace/src/sys/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/dtrace/src/sys/fs/devfs/devfs_vfsops.c#3 integrate .. //depot/projects/dtrace/src/sys/fs/devfs/devfs_vnops.c#3 integrate .. //depot/projects/dtrace/src/sys/fs/portalfs/portal_vnops.c#3 integrate .. //depot/projects/dtrace/src/sys/fs/unionfs/union_vnops.c#3 integrate .. //depot/projects/dtrace/src/sys/geom/raid3/g_raid3_ctl.c#4 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_ipc.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_ipc.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_misc.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_msg.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_other.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_poll.h#3 delete .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_proto.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_syscall.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_sysent.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_xenix.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_xenix.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_xenix_syscall.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_xenix_sysent.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/syscalls.master#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/syscalls.xenix#3 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_proto.h#4 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_syscall.h#4 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_sysent.c#4 integrate .. //depot/projects/dtrace/src/sys/i386/linux/syscalls.master#4 integrate .. //depot/projects/dtrace/src/sys/isa/isahint.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/bus_if.m#3 integrate .. //depot/projects/dtrace/src/sys/kern/init_sysent.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/kern_acl.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/kern_descrip.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/kern_linker.c#14 integrate .. //depot/projects/dtrace/src/sys/kern/kern_prot.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/dtrace/src/sys/kern/subr_bus.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/sys_generic.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.master#4 integrate .. //depot/projects/dtrace/src/sys/kern/sysv_sem.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_socket2.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_subr.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_syscalls.c#3 integrate .. //depot/projects/dtrace/src/sys/net/rtsock.c#3 integrate .. //depot/projects/dtrace/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#3 integrate .. //depot/projects/dtrace/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#3 integrate .. //depot/projects/dtrace/src/sys/netinet/in_rmx.c#3 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_carp.c#3 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_ipsec.c#4 integrate .. //depot/projects/dtrace/src/sys/netinet6/in6_rmx.c#3 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_socket.c#5 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_vnops.c#4 integrate .. //depot/projects/dtrace/src/sys/security/audit/audit_bsm.c#3 integrate .. //depot/projects/dtrace/src/sys/sys/bus.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/syscall.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/syscall.mk#4 integrate .. //depot/projects/dtrace/src/sys/sys/syscallsubr.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/sysproto.h#4 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/Doxyfile#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Dependencies#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-cam#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-crypto#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-dev_pci#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-dev_sound#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-dev_usb#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-geom#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-i4b#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-kern#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-libkern#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-linux#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-net80211#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-netgraph#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-netinet#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-netinet6#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-netipsec#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-opencrypto#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Doxyfile-vm#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/README#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/common-Doxyfile#2 integrate .. //depot/projects/dtrace/src/tools/kerneldoc/subsys/notreviewed.dox#2 integrate .. //depot/projects/dtrace/src/usr.bin/netstat/route.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/lpr/lpd/printjob.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/mountd/mountd.c#5 integrate .. //depot/projects/dtrace/src/usr.sbin/pkg_install/lib/url.c#3 integrate .. //depot/projects/dtrace/www/en/events/events.xml#5 integrate .. //depot/projects/dtrace/www/en/news/press.xml#7 integrate .. //depot/projects/dtrace/www/share/sgml/notices.xml#2 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/developers-handbook/book.sgml#2 (text+ko) ==== @@ -1,7 +1,7 @@ - + + ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/faq/book.sgml#6 (text+ko) ==== @@ -10,7 +10,7 @@ The FreeBSD Documentation Project - $FreeBSD: doc/en_US.ISO8859-1/books/faq/book.sgml,v 1.783 2006/06/03 15:46:30 mwlucas Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/faq/book.sgml,v 1.784 2006/07/06 06:50:52 vanilla Exp $ 1995 @@ -705,9 +705,15 @@ + zh_CN.GB2312 + + Simplified Chinese (GB2312 encoding) + + + zh_TW.Big5 - Chinese (Big5 encoding) + Traditional Chinese (Big5 encoding) ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#12 (text+ko) ==== @@ -1,7 +1,7 @@ + + + Using <command>scons</command> + + If your port uses SCons, define + USE_SCONS=yes. + + + Variables for ports that use <command>scons</command> + + + + + Variable + + Means + + + + + + SCONS_ARGS + + Port specific SCons flags passed to the SCons + environment. + + + + SCONS_BUILDENV + + Variables to be set in system environment. + + + + SCONS_ENV + + Variables to be set in SCons environment. + + + + SCONS_TARGET + + Last argument passed to SCons, similar to + MAKE_TARGET. + + + +
+
@@ -4943,9 +4992,9 @@ DESKTOP_ENTRIES= "NAME" "COMMENT" "ICON" "COMMAND" "CATEGORY" StartupNotify - List of possible categories is available on - Freedesktop website. The StartupNotify + The list of possible categories is available on the Freedesktop + website. The StartupNotify indicates, if the application will clear the status in startup notification aware environment. @@ -5578,7 +5627,7 @@ - BROKEN_WITH_PHP + IGNORE_WITH_PHP The port does not work with PHP of the given version. Possible values: 4, @@ -6023,6 +6072,88 @@ + + Using wxWidgets + + If your port uses wxWidgets + cross-platform toolkit, define USE_WX=yes. + A specific version can be requested by setting + USE_WX=2.6. Ranges (2.4-2.6) + and partial ranges (-2.4, 2.6+) + are also possible. + + List of required wxWidgets components can be set as + WX_COMPS. Unless specified otherwise, port will + depend on wxWidgets library (wx). Available + components are: + + + Possible values for <makevar>WX_COMPS</makevar> + + + + + Value + + Means + + + + + + wx + + wxWidget libraries + + + + contrib + + wxWidget contributed libraries + + + + python + + wxPython + + + + mozilla + + wxMozilla (only available for 2.4) + + + + svg + + wxSVG (only available for 2.6) + + + +
+ + If locating wxWidget libraries needs a configure argument in + addition to the WX_CONFIG variable, define + WX_CONF_ARGS in your port. Possible values + are absolute resulting in + --with-wx-config=${WX_CONFIG}, and + relative resulting in + --with-wx=${X11BASE} being added to configure + script arguments. + + Define WX_UNICODE=yes if your port needs + the Unicode version of the wxWidgets libraries. + + Example of port requiring Unicode versions of wxWidgets 2.6 and + contrib libraries: + + USE_WX= 2.6 +WX_COMPS= wx contrib +WX_UNICODE= yes + +
+ Starting and stopping services (rc scripts) @@ -9776,10 +9907,15 @@ BROKEN is reserved for ports that currently do not compile, install, or deinstall correctly. It should be used for ports where the the problem is - believed to be temporary. - The build cluster will still attempt to try to build + believed to be temporary. + + If instructed, the build cluster will still attempt to + try to build them to see if the underlying problem has been - resolved. For instance, use + resolved. (However, in general, the cluster is run without + this.) + + For instance, use BROKEN when a port: @@ -9986,6 +10122,20 @@ + + Usage of <filename>sysctl</filename> + + The usage of sysctl is discouraged + except in targets. This is because the evaluation of any + makevars, such as used during + make index, then has to run the command, + further slowing down that process. + + Usage of sysctl should always be + fully qualified with /sbin/, as some users + may not have that directory in their PATH. + + Necessary workarounds ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/advanced-networking/chapter.sgml#5 (text+ko) ==== @@ -2,8 +2,8 @@ The FreeBSD Documentation Project The FreeBSD Chinese Documentation Project - Original revision: 1.381 - $FreeBSD: doc/zh_CN.GB2312/books/handbook/advanced-networking/chapter.sgml,v 1.7 2006/06/03 15:34:22 delphij Exp $ + Original revision: 1.382 + $FreeBSD: doc/zh_CN.GB2312/books/handbook/advanced-networking/chapter.sgml,v 1.8 2006/07/08 13:01:33 delphij Exp $ --> ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml#5 (text+ko) ==== @@ -3,7 +3,7 @@ The FreeBSD Simplified Chinese Project Original Revision: 1.144 - $FreeBSD: doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml,v 1.8 2006/06/03 15:34:22 delphij Exp $ + $FreeBSD: doc/zh_CN.GB2312/books/handbook/basics/chapter.sgml,v 1.9 2006/07/08 13:01:33 delphij Exp $ --> @@ -75,16 +75,16 @@ 虚拟控制台 终端 - FreeBSD能多方面应用,其中之一它能在字符终端输入命令。 - 您可以在这方面容易地使用FreeBSD这个有强大适应性和功能的 &unix; 系统, - 这部份介绍 多终端多控制台, - 和您在 FreeBSD 应怎样使用它们。 + 可以用多种不同的方式使用 FreeBSD, 在文本终端输入命令是其中之一。 + 通过使用这种方式, 您可以容易地使用 FreeBSD 来获得 &unix; + 操作系统的灵活而强大的功能。 这一节将介绍 终端 和 + 控制台, 以及如何在 FreeBSD 中使用它们。 控制台 控制台 - 假如您没有设置到 FreeBSD 在启动期间给出图形登录, + 假如您没有设置 FreeBSD 在启动期间开启图形登录界面, 那么系统将在引导和启动脚本正确运行完成后,给您一个登录的提示。 您会看到类似这样的界面: @@ -112,7 +112,7 @@ 上运行, 但也会显示为 i386。 这不是指您的处理器, 而是指处理器的 体系结构 - 。这个结构名称 (每一种&unix;结构都有自己的名称) 叫 + 。 这台计算机的名字 (每台 &unix; 计算机都有自己的名字) 叫 pc3.example.org, 就是现在这个系统控制台—这个 ttyv0 终端的样子。 @@ -128,9 +128,9 @@ 进入FreeBSD - FreeBSD是一个多用户和多重处理的系统, - 这个介绍换句话来说就是一个系统可容纳许多不同的用户, - 谁都可以同时在单一结构下运行大量的程序。 + FreeBSD是一个多用户多任务的系统, + 换句话来说就是一个系统中可以容纳许多不同的用户, + 而这些用户都可以同时在这台机器中运行大量的程序。 每一个多用户系统都必须在某方面去区分 user, 在 FreeBSD 里 (以及 类-&unix; 操作系统), 完成这方面工作是有必要的, @@ -150,20 +150,20 @@ login: - 举个例子更容易理解,我们假设您的用户名叫john。 - 在提示符下输入 john并单击Enter, - 此时您应该看到这个提示password: + 举个例子更容易理解,我们假设您的用户名叫 john。 + 在提示符下输入 john 并按 Enter, + 此时您应该看到这个提示 password login: john Password: - 现在输入 john的密码,和单击 - Enter。这个密码是没有回显的! - 您在这时不必担心,它出于安全考虑才这样做的。 + 现在输入 john的密码并按下 + Enter。 输入密码时是 不回显的! + 不必为此担心, 这样做是出于安全考虑。 - 假如您输入的密码是正确的,您应该尽快进入FreeBSD并为练习可用的命令作好准备。 - + 假如您输入的密码是正确的, 这时你应该已进入 FreeBSD, + 并可以开始尝试可用的命令了。 您应该看见 MOTD 或者出现一个命令提示符 (#$% 字符). @@ -230,8 +230,9 @@ ttyv7 "/usr/libexec/getty Pc" cons25 on secure ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure - 您能在这文件详细设置每行的参数,加载虚拟控制台启动所需要的物件。 - 请参考 &man.ttys.5; 联机手册。 + 如果要了解这个文件中每一列的详细介绍, + 以及虚拟控制台上所能使用的配置, + 请参考联机手册 &man.ttys.5;。 @@ -566,7 +567,7 @@ &prompt.root; ls -lo file1 - 删除应类似于: + 输出结果应类似于: -rw-r--r-- 1 trhodes trhodes sunlnk 0 Mar 1 05:54 file1 @@ -638,7 +639,7 @@ /dev/ - 设备接点,请查阅 &man.intro.4;。 + 设备节点,请查阅 &man.intro.4;。 @@ -756,10 +757,11 @@ 存放本地执行文件, 库文件等等, 同时也是 FreeBSD ports 安装的默认安装目录。 /usr/local 在 - /usr 总体布置请查阅 man.hier.7;。 - man 目录例外, 它们直接放在 + /usr 中的目录布局大体相同, + 请查阅 &man.hier.7;。 但 + man 目录例外, 它们是直接放在 /usr/local 而不是 - /usr/local/share 下, + /usr/local/share 下的, 而 ports 说明文档在 share/doc/port @@ -867,8 +869,8 @@ foo/bar/readme.txt在文件系统里目录和文件的作用是存储数据。 - 每一个文件系统都正确含有一个顶级目录根目录, - 这个根目录包含其他目录。 + 每一个文件系统都有且只有一个顶级目录 根目录, + 这个根目录则可以容纳其他目录。 您也许在其他的一些操作系统碰到类似这里的情况, 当然也有不同的情况。 举些例子, &ms-dos; 是用 @@ -1175,9 +1177,9 @@ 对应代码请看这里所列出的 当提供一个partition名字给FreeBSD时, - slice 和 磁盘所必须有这个partition,还应当提供所partition所涉及 - 到的slice和磁盘的名字。可这样列出: - 磁盘名称,s,slice 编号,和partition标定字母。 + 应同时包含这个分区的 slice 和磁盘的名字;类似地, + 在指定 slice 时, 也应该给出包含该 slice 的磁盘名字。 可这样列出: + 磁盘名称,s,slice 编号,和partition标定字母。 例子请看 @@ -1286,10 +1288,10 @@ 而第二个slice是FreeBSD配置好的slice。 FreeBSD配置好的slice有三个partitions和另一个交换分区。 - 这三个partitions各自控制一个文件系。 - partitiona用于根文件系统, - partitione用于/var目录层, - partitionf用于/usr目录层。 + 这三个partitions各自控制一个文件系统。 + partitiona 用于根文件系统, + partitione 用于 /var 目录层, + partitionf 用于 /usr 目录层。 @@ -1429,15 +1431,15 @@ 应该将它的 passno 设为1, 其他文件系统的 passno 必须把数值设到大于1。假如多个文件系统的passno的值相同, - 那么&man.fsck.8; 在充许的情况下将尝试并行地去检查文件系统。 + 那么 &man.fsck.8; 在允许的情况下将尝试并行地去检查文件系统。 - Consult the &man.fstab.5; manual page for more information - on the format of the /etc/fstab file and - the options it contains. + 请参阅 &man.fstab.5; 联机手册, + 以获得关于 /etc/fstab 文件格式, + 以及其中所包含的选项的进一步信息。 @@ -1659,8 +1661,7 @@ 并不是指您程序启动到现在的所用的时间。 许多程序碰巧遇到某方面在他们之前要花费大量CPU处理时间时,他们就必须等候。 - Finally, COMMAND is the command line that was used to - run the program. + 最后, COMMAND 是运行程序时使所用的命令行。 &man.ps.1;支持使用各种选项去改变显示出来的内容, 最有用的一个就是auxww。 ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/handbook/cutting-edge/chapter.sgml#4 (text+ko) ==== @@ -2,8 +2,8 @@ The FreeBSD Documentation Project The FreeBSD Simplified Chinese Project - Original Revision: 1.223 - $FreeBSD: doc/zh_CN.GB2312/books/handbook/cutting-edge/chapter.sgml,v 1.6 2006/06/03 15:34:23 delphij Exp $ + Original Revision: 1.225 + $FreeBSD: doc/zh_CN.GB2312/books/handbook/cutting-edge/chapter.sgml,v 1.7 2006/07/08 13:01:34 delphij Exp $ --> @@ -636,22 +636,17 @@ 在进行升级时, 它们可能并不存在。 这会给升级造成问题。 有时, make buildworld 会检查它们是否已经存在。 - 最近就有个这样的例子,当时 smmsp - 用户是被增加了的。当 &man.mtree.8; 试着建立 - /var/spool/clientmqueue 时,安装过程失败了。 + 最近就有个这样的例子, 当时新增了 smmsp + 用户。 当用户尝试完成安装操作时, 在 &man.mtree.8; 尝试建立 + /var/spool/clientmqueue 时失败了。 - 解决办法是检查 /usr/src/etc/group - 并把它的组列表与您的进行比较。如果在新文件里有而您的文件里没有的, - 就把它们复制过来。同样地,您把 /etc/group - 里的任何这样的组进行更名---与 /usr/src/etc/group - 中有相同 GID,但不同名的那些。 - - 自 4.6-RELEASE 开始,您可以通过 - 选项以预建 (pre-buildworld) 模式运行 &man.mergemaster.8;。 - 这样只是比较那些对于成功执行 buildworld + 解决办法是通过使用 + 选项以构建前 (pre-buildworld) 模式运行 &man.mergemaster.8;。 + 这表示只对比那些对于成功执行 buildworldinstallworld 起关键作用的文件。 - 在第一次时,如果早期的 mergemaster 版本不支持 - 的话,就使用源码树中的新版本: + 在第一次这样做时, 如果使用的是早期的不支持 + mergemaster 版本的话, + 使用源码中的新版本即可。 &prompt.root; cd /usr/src/usr.sbin/mergemaster &prompt.root; ./mergemaster.sh -p @@ -689,9 +684,9 @@ 这样就会转换到单用户模式。 - 另外也可以,重启系统,在启动提示符处,输入 - 标识。系统就会启动单用户。再在 shell - 提示符处执行: + 除此之外, 也可以重启系统, 并在启动菜单处选择 + single user(单用户) 选项。 这样系统将以单用户模式启动。 + 接着, 在 shell 提示符处执行: &prompt.root; fsck -p &prompt.root; mount -u / @@ -734,8 +729,8 @@ &prompt.root; rm -rf * - - 重编译源码 + + 重新编译基本系统 保存输出 @@ -815,19 +810,17 @@ &prompt.root; make target - 从 &os; 的 2.2.5 版本开始 (实际上,是先在 &os.current; - 分支里第一次创建,然后在 &os.stable; 的 2.2.2 和 2.2.5 - 两个版本间,进行了大翻新),world target - 已经分成了两个部分:buildworld 和 - installworld + 此处 target 表示的是若干编译选项。 + 多数情况下, 第一个 target 都应该是 + buildworld 正如名字所暗示的,buildworld - 在 /usr/obj 下边建立了一个全新的树,然后 - installworld 就在当前的机器里安装这个树。 + 在 /usr/obj 下边建立了一个全新的树, 然后使用另一个 target, + installworld 在当前的机器里安装它。 - 因为两个原因,这点很有用。首先,它允许您安全地完成建立 - (build),而没有您运行的系统组成部分的影响。建立 (build) - 是自主的 (self hosted)。因为这样, + 将这些选项分开有两个优点。 首先, 它允许您安全地完成建立 + (build), 而不对正在运行的系统的组件产生影响。 + 构建过程是 自主的 (self hosted)。 因为这样, 您可以安全地在以多用户模式运行的机器里执行 buildworld ,而不用当心不良影响。 但是依然推荐您在单用户模式时运行 @@ -854,7 +847,7 @@ &prompt.root; make buildworld - 目前, 我们提供了一个试验性的功能, 可以在构建过程中为 + 我们提供了一个试验性的功能, 可以在构建过程中为 make 指定 参数, 令其在构建过程中同时启动多个并发的进程。 对于多 CPU 的机器而言, 这样做有助于发挥其性能。 不过, 由于编译过程中的瓶颈主要是在 IO @@ -869,14 +862,6 @@ 如果您使用的机器有多颗 CPU, 并且配置了 SMP 的内核, 也可以试试看 6 到 10 的数值, 并观察是否能带来构建性能上的改善。 - - - 目前为止这仍然是试验性的功能, 提交到源代码树上的变更, - 也随时可能导致这一功能不可用。 如果您使用这个参数时发现无法构建 - world, 在报告问题之前, 应首先试试看去掉这个参数是否能修正问题。 - - 当您通过源代码升级系统时, 使用这一选项可能引致无法预测的后果。 - @@ -886,11 +871,10 @@ timings - 有许多因素影响 build 时间,但通常一台带有 - 128 MB 内存 500 MHz 的 - &pentium; III 要花费大约 2  小时来 - build &os.stable; 树,并且在整个过程中不带什么技巧或捷径。 - &os.current; 树花的时间还要更长一点。 + 联编基本系统所需的时间会受到很多因素的影响, + 不过, 较新的机器应该都能在一两个小时之内完成 &os.stable; 源代码的构建, + 而无须任何技巧或捷径。 完成 &os.current; 源代码的联编, + 则通常需要更长一些的时间。 @@ -915,7 +899,7 @@ GENERIC 启动、核实系统可以工作后, 您就可以建立 (build) 一个基于您的正常内核配置文件的新的内核了。 - 在新的 FreeBSD 版本中,首先完成 在 &os; 中, 首先完成 build world 然后再编译新内核非常重要。 如果您想建立一个定制内核,而且已经有了配置文件, @@ -943,8 +927,8 @@ linkend="makeworld-singleuser">处的说明去做。 - - 安装新的系统二进制(System Binaries) + + 安装编译好的新系统 如果您正建立一个足以使用 make buildworld 的 &os; 版本,那么您现在应该使用 @@ -1001,7 +985,7 @@ <command>mergemaster</command> mergemaster - &man.mergemaster.8; 工具是个有针对性的脚本 (Bourne script),用于检测 + &man.mergemaster.8; 工具是个 Bourne 脚本,用于检测 /etc/usr/src/etc 源码树里边的配置文件的不同点。 这是保持系统配置文件同源码树里的一起更新的推荐方式。 @@ -1041,8 +1025,7 @@ 在 &man.mergemaster.8; 完成了对系统文件的处理后, 您会得到其它的选项。&man.mergemaster.8; 可能会问您是否要重建密码文件, - 如果您的 FreeBSD 版本超过 5.0,还会问您是否想要执行 - &man.MAKEDEV.8;,最后带上一个选项删除剩下的临时文件。 + 并在最后提示您是否要删除余下的临时文件。 @@ -1055,8 +1038,8 @@ 想像的那样是 /etc 目录的一个复制。事实上,有些是文件是 /etc 有的,而 /usr/src/etc 里边没有。 - 如果您使用 &man.mergemaster.8; (作为推荐),您可以向前跳到下一节。 + 如果您使用 &man.mergemaster.8; (作为推荐),您可以向前跳到 + 下一节。 手工做最简单的方式是安装这些文件到一个新的目录,完成后再来查找不同处。 @@ -1182,93 +1165,7 @@ - - 更新<filename>/dev</filename> - - - DEVFS - 如果您正在运行 FreeBSD 5.0 或更后的版本, - 您可以安全地跳过这部分。这些版本使用了 - &man.devfs.5; 来透明地分配设备节点。 - - - 许多情况下,在有必要更新设备节点时,&man.mergemaster.8; - 工具就可以实现,并且可以自动地完成。 - 这里的说明用于怎样手工更新设备结点。 - - 考虑到安全,这里用的是多步流程。 - - - - 复制 /var/tmp/root/dev/MAKEDEV - 到 /dev - - &prompt.root; cp /var/tmp/root/dev/MAKEDEV /dev - - MAKEDEV - - - 如果您使用 &man.mergemaster.8; 去更新 - /etc,那么您的 MAKEDEV - 脚本应该已经被更新过,虽然它不会影响检查 (使用 &man.diff.1;), - 必要时手工复制一下。 - - - - 现在,给当前的 /dev - 做个快照。照的时候一定要注意每个文件名的许可 - (permissions)、所属(ownerships)、主从数字 (major and minor numbers), - 不必包括日戳 (time stamps)。最简单的方式是使用 &man.awk.1; 提取信息: - - &prompt.root; cd /dev -&prompt.root; ls -l | awk '{print $1, $2, $3, $4, $5, $6, $NF}' > /var/tmp/dev.out - - - - 重做设备结点: - - &prompt.root; sh MAKEDEV all - - - - 这时,把这个目录的另一个快照输出到 - /var/tmp/dev2.out。现在检查这两个文件, - 查找任何您没建立的设备结点。就该不会很多,但是保险一点总是好的。 - - &prompt.root; diff /var/tmp/dev.out /var/tmp/dev2.out - - 您可能注意到磁盘分区 (disk slice) 的差别,它会使像: - - &prompt.root; sh MAKEDEV sd0s1 - - 那样的命令重新建立分区入口 (slice entries)。您的具体情况可能不同。 - - - - - - 更新<filename>/stand</filename> - - - 这一步应被看作最后的扫尾工作。 您可以安全地跳过这一步。 - 如果正在使用的是 FreeBSD 5.2 或更新的版本, - /rescue 目录会为用户自动更新, - 其内容是在 make installworld - 过程中所生成的静态联编的可执行程序, - 这就不需要更新 /stand (在 &os; 6.0 - 和更新版本中不再存在) 了。 - - - 为了完成,您可能想额外地更新 /stand - 里的文件。 这些文件由连接到 /stand/sysinstall - 的二进制文件硬连接组成。 这个文件要静态连接, 以在没有挂接其它文件系统时 - (特别是 /usr) 时也能工作。 - - &prompt.root; cd /usr/src/release/sysinstall -&prompt.root; make all install - - - + 重启 现在完成了。在您检查所有内容都放置正确后, @@ -1393,11 +1290,8 @@ &prompt.root; cd /usr/src &prompt.root; make -DNO_CLEAN all - 在 &os; 5.X 和更早版本中, 应使用 - -DNOCLEAN 代替。 - 这样就不会取消先前的 - make buildworld 所做的工作。 + make buildworld 所做的工作了。 make buildworld的输出中如果看到如下信息: @@ -1407,7 +1301,7 @@ 出现在 make buildworld 的输出中, 则这样做应该不会有什么问题。 - + 如果没有看到这样的信息, 或者您不确定, >>> TRUNCATED FOR MAIL (1000 lines) <<<